added GSLice test from Stefan Westerfeld, bug #433314.
[platform/upstream/glib.git] / ChangeLog
1 Thu Jul 12 17:26:05 2007  Tim Janik  <timj@imendio.com>
2
3         * tests/slice-concurrent.c: added GSLice test from Stefan Westerfeld,
4         bug #433314.
5
6 Thu Jul 12 15:46:40 2007  Tim Janik  <timj@imendio.com>
7
8         * glib/gslice.c: migrate per-thread magazine caches from single-thread
9         scenario to first thread using GSlice after g_thread_init(); based on
10         a patch by Tor Lillqvist, fixes #331853.
11         removed warning about g_thread_init() being called after other glib
12         functions (in particular g_slice* calls), because GSlice can cope
13         with this now and the rest of glib is believed to cope as well.
14
15         * tests/slice-threadinit.c: new test program which tests GSlice working
16         across g_thread_init() calls.
17
18 2007-07-10  Matthias Clasen  <mclasen@redhat.com>
19
20         * glib/pltcheck.sh: Add g_once_init_enter to the whitelist of
21         symbols allowed to have a local PLT entry, to fix 'make check'.
22
23 Tue Jul 10 12:24:35 2007  Tim Janik  <timj@imendio.com>
24
25         * glib/gthread.[hc]: implemented g_once_init_enter(),
26         g_once_init_enter_impl() and g_once_init_leave(), based on a patch by
27         Antoine Tremblay, fixes #65041.
28         adapted exported inline function mechanism from gutils.[hc] for inlining
29         g_once_init_enter_impl() in gthread.[hc].
30
31 2007-07-09  Matthias Clasen  <mclasen@redhat.com>
32
33         * NEWS: Updates
34
35 2007-07-09  Loïc Minier  <lool@dooz.org>
36
37         * tests/refcount/closures.c: (main): Output newlines after thousand
38         iterations of the inner-loop of the closures test; this helps having
39         smaller lines and continuously outputting new lines.  (#447048).
40
41 2007-07-09  Ryan Lortie  <desrt@desrt.ca>
42
43         * glib/gfileutils.c (write_to_temp_file): save errno to prevent it
44         being clobbered by call to g_filename_display_name().  Bug #453796.
45
46 2007-07-09  Matthias Clasen  <mclasen@redhat.com>
47
48         * m4macros/glib-gettext.m4: Fix a small problem with
49         msgfmt -c detection.  (#341988, Laszlo Peter)
50
51 2007-07-07  Matthias Clasen  <mclasen@redhat.com>
52
53         * glib/gmarkup.c (g_markup_parse_context_end_parse): Handle
54         all states.  (#454473)
55
56 2007-07-06  Tor Lillqvist  <tml@novell.com>
57
58         * glib/giowin32.c (g_io_win32_check): When WSAEnumNetworkEvents()
59         signals FD_CONNECT that means that the connection attempt
60         finished, either successfully or failed. Test explicitly whether
61         the connnection succeeded and set either G_IO_OUT if it did,
62         G_IO_ERR|G_IO_HUP if it failed.
63
64         Make sure we never set both G_IO_OUT and G_IO_HUP simultaneously
65         because in Unix poll(2) POLLOUT and POLLHUP are mutually
66         exclusive.
67
68         Ignore whether the caller wants to watch G_IO_HUP or not. Always
69         select for FD_CLOSE because Unix poll(2) also ignores whether
70         POLLHUP in set the requested events bitmask or not.
71
72 Fri Jun 29 2007  Matthias Clasen  <mclasen@redhat.com>
73
74         * configure.in: Bump version
75
76         * === Released 2.13.6 ===
77
78         * NEWS: Updates
79
80 Mon Jun 25 16:43:13 2007  Tim Janik  <timj@gtk.org>
81
82         * glib/ghash.c: g_hash_table_find(), g_hash_table_foreach():
83         document performance caveats for linear order searches.
84
85 2007-06-22  Mathias Hasselmann  <mathias.hasselmann@gmx.de>
86
87         * glib/gstring.c: Use memcpy in g_string_append_vprintf (#57693).
88
89 2007-06-18  Mathias Hasselmann  <mathias.hasselmann@gmx.de>
90
91         * glib/gstring.c: Restore old behaviour of 
92         g_string_append_vprintf: g_vasprintf seems to be faster
93         than g_printf_string_upper_bound (#57693).
94
95 2007-06-18  Matthias Clasen  <mclasen@redhat.com>
96
97         * glib/gutils.c (g_get_home_dir): Add some motivation.
98
99 2007-06-18  Matthias Clasen  <mclasen@redhat.com>
100
101         * configure.in: Bump version
102
103         * === Released 2.13.5 ===
104
105         * NEWS: Updates
106
107 2007-06-18  Emmanuele Bassi  <ebassi@gnome.org>
108
109         * glib/gmain.h:
110         * glib/gmain.c:
111         * glib/glib.symbols: Add g_timeout_add_seconds_full() variant
112         to g_timeout_add_seconds(), accepting a destroy notification
113         function and a priority. (#448819)
114
115 2007-06-17  Matthias Clasen  <mclasen@redhat.com>
116
117         * glib/gutils (g_get_current_dir): Prevent segfaults on
118         long paths.  (#447935, Robby Griffin)
119
120 2007-06-17  Behdad Esfahbod  <behdad@gnome.org>
121
122         * glib/gdataset.c (g_quark_from_string),
123         (g_quark_from_static_string): Accept NULL and return GQuark
124         value of zero. (#446859)
125
126 2007-06-16  Mathias Hasselmann  <mathias.hasselmann@gmx.de>
127
128         * glib/gstring.c: Correctly use g_printf_string_upper_bound
129         in g_string_append_vprintf. Fixes #447933.
130
131 2007-06-15  Sebastian Wilhelmi  <wilhelmi@google.com>
132
133         * docs/reference/glib/tmpl/threads.sgml: Extended the comments on
134         those functions, that are NOOPs, before g_thread_init() has been
135         called. (#447583)
136
137         * glib/gthread.c (g_static_mutex_free): Clarified comment to
138         remind myself, that calling g_static_mutex_free() before
139         g_thread_init() is safe.
140
141 2007-06-15  Cody Russell  <bratsche@gnome.org>
142
143         * docs/reference/gobject/tmpl/gboxed.sgml:
144         * docs/reference/gobject/gobject-sections.txt:
145         * glib/gregex.c:
146         * gobject/gboxed.[ch]:
147         * gobject/gobject.symbols: Added GRegex boxed type.
148         (#445065, Carlos Garnacho)
149
150 2007-06-15  Sebastian Wilhelmi  <wilhelmi@google.com>
151
152         * glib/gregex.c: Replaced & by &amp; in <programlisting> to make
153         gtk-doc happy.
154
155 2007-06-14  Ryan Lortie  <desrt@desrt.ca>
156
157         * docs/reference/glib/glib-sections.txt:
158         * glib/glib/symbols:
159         * glib/gstring.[ch] (g_string_printf_internal): Improve
160         performance by removing the use of an intermediate g_malloc'd
161         buffer.  Rename to g_string_append_vprintf, document, and expose
162         along with g_string_vprintf as new public API (#57693).
163
164 2007-06-15  Mathias Hasselmann  <mathias.hasselmann@gmx.de>
165
166         * build, tests/string-test.c, glib/glib.symbols, 
167         glib/gstring.c, glib/gstring.h: Introduce g_string_overwrite(_len)?
168         for overwriting parts of strings (#368686, Samuel Cormier-Iijima)
169
170 2007-06-14  Cody Russell  <bratsche@gnome.org>
171
172         * gobject/gtype.c (g_type_class_add_private): Check for 0-sized
173         private data. (#443869)
174
175 2007-06-14  Matthias Clasen  <mclasen@redhat.com>
176         
177         * glib/gmain.c (g_timeout_add_seconds): Fix doc typos.  (#447534,
178         Vincent Untz)
179
180 2007-06-13  Behdad Esfahbod  <behdad@gnome.org>
181
182         * glib/pltcheck.sh: Whitelist g_atomic_{int,pointer}_[gs]et() as
183         we don't alias them intentionally. (#354522)
184
185 2007-06-13  Sven Neumann  <sven@gimp.org>
186
187         * glib/gslice.[ch] added g_slice_copy() and g_slice_dup() (#442029).
188
189         * glib/glib.symbols: updated.
190
191 2007-06-12  Behdad Esfahbod  <behdad@gnome.org>
192
193         * glib/gunicode.h: Add more G_GNUC_CONST and G_GNUC_PURE.
194
195 2007-06-11  Emmanuele Bassi  <ebassi@gnome.org>
196
197         * glib/gutils.c (maybe_expire_user_special_dirs),
198         (g_get_user_special_dir): Remove the cache expiration logic: it
199         makes g_get_user_special_dir() not thread-safe. Document the fact
200         that on some platform the value might be changed by the user and
201         that GLib won't be able to reflect the change.
202
203 2007-06-11  Tor Lillqvist  <tml@novell.com>
204
205         * glib/gwin32.c (g_win32_get_package_installation_directory)
206         (g_win32_get_package_installation_subdirectory): Update doc
207         comments. Mention that it is not recommeded to use the Registry
208         features.
209
210 2007-06-06  Tor Lillqvist  <tml@novell.com>
211
212         * glib/gutils.c: Add definitions for more CSIDL_* constants in
213         case missing from headers. Use CSIDL_PERSONAL instead of
214         CSIDL_MYDOCUMENTS as CSIDL_MYDOCUMENTS seems to be a new thing
215         that doesn't work in XP SP2 even.
216
217 2007-06-06  Matthias Clasen  <mclasen@redhat.com>
218
219         * glib/gutils.c (g_get_user_special_dir): Fall back to
220         $HOME/Desktop for the DESKTOP directory, like 
221         xdg_user_dir_lookup() does.
222
223 2007-06-05  Matthias Clasen  <mclasen@redhat.com>
224
225         * configure.in: Bump version
226
227         * === Released 2.13.4 ===
228
229         * NEWS: Updates
230
231 2007-06-05  Matthias Clasen  <mclasen@redhat.com>
232
233         * glib/gkeyfile.c (g_key_file_is_key_name):
234         (g_key_file_is_group_name): Don't assume the string is
235         valid UTF-8, since it may be user data.  (#444161, Ben Combee)
236
237 2007-06-05  Behdad Esfahbod  <behdad@gnome.org>
238
239         * glib/gutf8.c: Add not to g_utf8_get_char_validated() about
240         nul-terminated strings.
241
242 2007-06-05  Matthias Clasen  <mclasen@redhat.com>
243
244         * glib/gutils.c (g_get_user_special_dir): Don't deadlock
245         when running with threads.  (#444121, Christian Persch)
246
247 2007-06-05  Vincent Untz  <vuntz@gnome.org>
248
249         * glib/goption.c: (g_option_context_get_help): don't replace the usage
250         line with the description for optional parameters, but append the
251         description. (#444130)
252
253 2007-06-04  Matthias Clasen  <mclasen@redhat.com>
254
255         * configure.in: Bump version
256         
257         * === Released 2.13.3 ===
258
259         * NEWS: Updates
260
261 2007-06-04  Matthias Clasen  <mclasen@redhat.com>
262         
263         Add support for a number of special directories, as 
264         defined by the xdg-user-dirs specification.  (#432651,
265         Bastien Nocera, Emmanuele Bassi, Michael Natterer)
266
267         * glib/glib.symbols:
268         * glib/gutils.[hc]: Add the GUserDirectory enum and
269         g_get_user_special_dir(), with implementations based
270         on the xdg-user-dirs spec and on native interfaces
271         for Win32 and Carbon.
272         
273         * configure.in: Add Carbon checks.
274
275         * tests/tetsglib.c: Test g_get_user_special_dir().
276         
277 2007-06-03  Yevgen Muntyan  <muntyan@tamu.edu>
278
279         * glib/gregex.c: fixed g_regex_fetch_named* for cases when (?J)
280         is used inside a pattern (#442265, comment #12).
281         * tests/regex-test.c: Test it.
282
283 2007-06-03  Matthias Clasen <mclasen@redhat.com>
284
285         * NEWS: Updates
286
287 2007-06-03  Yevgen Muntyan  <muntyan@tamu.edu>
288
289         Some API additions and changes (#442265).
290
291         * glib/gregex.c:
292         * glib/gregex.h: new functions: g_regex_ref(), g_regex_unref() which
293         replaces g_regex_free(); g_match_info_get_regex(), g_match_info_get_string();
294         g_regex_check_replacement().
295         Made g_match_info_expand_references() accept NULL; changed GRegexEvalCallback
296         to take only arguments which are likely to be actualy used.
297
298         * docs/reference/glib/glib-sections.txt:
299         * glib/glib.symbols: Added new functions.
300
301         * tests/regex-test.c: Test them.
302
303         * docs/reference/glib/tmpl/gregex.sgml: Updated GRegexEvalCallback docs.
304
305 2007-05-31  Matthias Clasen <mclasen@redhat.com>
306
307         * README.win32: Fix a typo.  (#423708, Olivier Delhomme)
308
309 2007-05-30  Dan Winship  <danw@novell.com>
310
311         * glib/gkeyfile.h: add defines for desktop file handling. #339225,
312         original patch from Vincent Untz.
313
314 2007-05-29  Cody Russell  <bratsche@gnome.org>
315
316         * configure.in: Fix a sed script that doesn't correctly detect
317         i586-mingw32-gcc-3.4 compiler, and was causing -Wno-pointer-sign
318         errors when building with that compiler. (#440896, Yevgen Muntyan)
319
320 2007-05-29  Marco Barisione <marco@barisione.org>
321
322         * glib/gregex.c: Fix g_regex_fetch_named() and
323         g_regex_fetch_named_pos() when G_REGEX_DUPNAMES is used  (#434358,
324         Yevgen Muntyan and #419376, Marco Barisione, patch by Yevgen Muntyan)
325
326 2007-05-25  Behdad Esfahbod  <behdad@gnome.org>
327
328         * glib/guniprop.c (g_unichar_iswide), (g_unichar_iswide_cjk):
329         Update to Markus Kuhn's updated wcwidth for Unicode 5.0.
330
331 2007-05-22  Matthias Clasen  <mclasen@redhat.com>
332
333         * configure.in: Bump version
334
335         * === Released 2.13.2 ===
336
337         * README.in:
338         * NEWS: Updates
339
340 2007-05-18  Matthias Clasen  <mclasen@redhat.com>
341
342         * configure.in: Try again to move the compiler-dependency
343         of G_GNUC_INTERNAL to runtime.
344
345 2007-05-18  Matthias Clasen  <mclasen@redhat.com>
346
347         * configure.in: Don't let PERL_PATH be ''.  (#356769, Joseph Sacco)
348
349 2007-05-17  Michael Natterer  <mitch@imendio.com>
350
351         * configure.in: hotfix: revert last change to fix the build on OS X.
352
353 2007-05-17  Matthias Clasen  <mclasen@redhat.com>
354
355         * glib/goption.c (g_option_context_set_translate_func): Fix
356         a doc typo.  (#439232, Vincent Untz)
357
358 2007-05-17  Matthias Clasen  <mclasen@redhat.com>
359
360         * configure.in: Move the compiler-dependency in the G_GNUC_INTERNAL
361         definition from configure-time to runtime (of the compiler).
362         (#438869, Damien Carbery)
363
364         * glib/gdebug.h:
365         * glib/gmessages.h:
366         * glib/gunicodeprivate.h:
367         * glib/gthreadprivate.h: Move G_GNUC_INTERNAL before function
368         declarations to fix compilation with sun studio.  (#438873,
369         Damien Carbery)
370
371 2007-05-14  Matthias Clasen  <mclasen@redhat.com>
372
373         * glib/gslice.h:
374         * glib/gslice.c:
375         * glib/glib.symbols: Make g_slice_debug_tree_statistics() 
376         debug-only functionality again.
377
378 2007-05-14  Christian Persch  <chpe@gnome.org>
379
380         * docs/reference/glib/tmpl/string_utils.sgml: Improve g_strerror and
381         g_strsignal docs. Bug #438293.
382
383 2007-05-13  Tor Lillqvist  <tml@novell.com>
384
385         * glib/gwin32.h: Drop the pipe() macro. Defining macros outside of
386         its namespace that look like POSIX functions is not GLib's
387         business in my opinion. This means pipe()-using code that has
388         relied on this definition will need changing to call _pipe() on
389         Windows, and make the decision itself on what size pipe buffer to
390         use, and whether to use text or binary mode, and whether the pipe
391         handles should be inheritable or not.
392
393         * glib/gspawn-win32.c (make_pipe): Use _pipe() instead of pipe().
394
395 2007-05-11  Matthias Clasen  <mclasen@redhat.com>
396
397         * glib/goption.c: Allow G_OPTION_ARG_CALLBACK for 
398         G_OPTION_REMAINING.  (#437297, Dave Benson)
399
400         * tests/option-test.c: Add a test for this.
401
402 2007-05-04  Dan Winship  <danw@novell.com>
403
404         * glib/gkeyfile.c (g_key_file_get_boolean)
405         (g_key_file_get_boolean_list, g_key_file_get_integer)
406         (g_key_file_get_integer_list, g_key_file_get_double)
407         (g_key_file_get_double_list): Document the error return values
408         rather than calling them undefined. #435885.
409
410 2007-05-03  Behdad Esfahbod  <behdad@gnome.org>
411
412         * glib/glib.symbols:
413         * glib/gunicode.h:
414         * glib/guniprop.c (g_unichar_ismark):
415         Add g_unichar_ismark(). Patch from Yevgen Muntyan. Fixes #339991.
416
417 2007-05-03  Matthias Clasen <mclasen@redhat.com>
418
419         * configure.in: Bump version
420
421         * === Released 2.13.1 ===
422
423 2007-05-02  Matthias Clasen <mclasen@redhat.com>
424
425         * tests/threadpool-test.c:  Stop unused threads before
426         the last test, to make the test terminate reliably.
427
428         * NEWS: Updates
429
430 2007-05-02  Marco Barisione <marco@barisione.org>
431
432         * glib/gregex.c: Made more clear that the string passed to the match
433         functions cannot be freed before using g_match_info_fetch() and
434         similar functions, and fixed a typo.
435
436 2007-04-30  Matthias Clasen  <mclasen@redhat.com>
437
438         * glib/glib.symbols:
439         * glib/gregex.[hc]: Add g_regex_get_max_backref() and
440         g_regex_get_capture_count().  (#419371, Marco Barisione)
441         
442 2007-04-30  Matthias Clasen  <mclasen@redhat.com>
443
444         * glib/glib.symbols:
445         * glib/gregex.[hc]: Split GRegex into GRegex and GMatchInfo.
446         (#419368, Marco Barisione)
447
448         * tests/regex-test.c: Adapt.
449
450 2007-04-30  Chris Wilson  <chris@chris-wilson.co.uk>
451
452         * glib/gbookmarkfile.c (g_bookmark_file_get_app_info):
453         Include the gshell.h header file (to define g_shell_[un]quote)
454         and correct the order of the arguments to g_propagate_error(), as
455         spotted by gcc.
456
457 2007-04-29  Emmanuele Bassi  <ebassi@gnome.org>
458
459         * glib/gbookmarkfile.c:
460         (g_bookmark_file_set_app_info): Quote the passed command line...
461         
462         (g_bookmark_file_get_app_info): ... and unquote it when giving it
463         back. (#432274)
464
465 2007-04-27  Matthias Clasen <mclasen@redhat.com>
466
467         * glib/gstrfuncs.c: small coding style cleanups.
468
469 2007-04-27  Chris Wilson  <chris@chris-wilson.co.uk>
470
471         * glib/gregex.h: Remove trailing comma at end of enumerator list.
472
473 2007-04-27  Tor Lillqvist  <tml@novell.com>
474
475         * glib/gstdio.c (g_mkdir): Document that the mode argument is
476         ignored on Windows
477         (g_stat): Document that st_mode is mostly useless on Windows.
478
479 2007-04-25  Paolo Borelli  <pborelli@katamail.com>
480
481         * glib/gstrfuncs.c (g_strsplit): small cleanup. (#433387)
482
483 2007-04-24  Matthias Clasen  <mclasen@redhat.com>
484
485         * glib/glib.symbols:
486         * glib/goption.h:
487         * glib/goption.c (g_option_context_get_help): New function to
488         get the formatted help string.  (#336089, Dom Lachowicz)
489
490 2007-04-24  Michael Natterer  <mitch@imendio.com>
491
492         * tests/gobject/paramspec-test.c: test all GParamSpecString
493         validations with static and allocated strings.
494
495 2007-04-19  William Jon McCann  <mccann@jhu.edu>
496
497         * glib/gkeyfile.[ch]: (find_file_in_data_dirs),
498         (g_key_file_load_from_dirs), (g_key_file_load_from_data_dirs):
499         Add g_key_file_load_from_dirs for looking through a search
500         path for a key-file. (#355334)
501
502 2007-04-15  Tor Lillqvist  <tml@novell.com>
503
504         * build: Include the build module using the svn:externals
505         mechanism.
506
507         * Makefile.am
508         * configure: Add the references to build back.
509
510 2007-04-11  Matthias Clasen  <mclasen@redhat.com>
511
512         * glib/gspawn.c (g_spawn_async): Fix a doc typo.  (#427285, 
513         Jochen Baier)
514
515 2007-04-11  Emmanuele Bassi  <ebassi@gnome.org>
516
517         * glib/ghash.[ch]: Add g_hash_table_get_keys() and
518         g_hash_table_get_values(), API to retrieve the keys
519         and values inside an hash table in list form. (#413133)
520
521         * glib/glib.symbols: Update symbols.
522
523         * tests/hash-test.c: Exercise newly added functions.
524
525 2007-04-11  Matthias Clasen  <mclasen@redhat.com>
526
527         * configure.in: Use CFLAGS/LDFLAGS in addition to 
528         PCRE_CFLAGS/PCRE_LIBS when checking system PCRE.  (#421607, 
529         Paul Jarc)
530
531 2007-03-27  Emmanuele Bassi  <ebassi@gnome.org>
532
533         * glib/gdate.h: Remove old comment and forward declaration of
534         struct tm: gdate.h includes time.h now.
535
536 2007-03-23  Matthias Clasen  <mclasen@redhat.com> 
537
538         * tests/gobject/Makefile.am: Handle $RANDOM missing.  (#356843,
539         Paul Jarc)
540
541 2007-03-22  Matthias Clasen  <mclasen@redhat.com> 
542
543         * glib/guniprop.c: Fix corner-cases of upper/lowercase conversion.
544         (#418217, Denis Jacquerye)
545
546 2007-03-22  Chris Wilson  <chris@chris-wilson.co.uk>
547
548         * glib/gkeyfile.c: Track whether the last key=value pair in a group
549         is a blank line and during to_data() only insert a new blank line
550         betweens group in its absence. This allows the beautification of the
551         GKeyFile and prevents newlines being inserted indefinitely. (#420686)
552
553         * tests/keyfile-test.c (test_reload_idempotency): Test that after a 
554         single beautification pass, g_key_file_to_data() does not alter its
555         input data.
556
557 2007-03-21  Matthias Clasen  <mclasen@redhat.com>
558
559         * glib/pcre/Makefile.am: Make builddir != srcdir work.  (#419900)
560
561 2007-03-19  Paolo Borelli  <pborelli@katamail.com>
562
563         * glib/gutf8.c (fast_validate_len): remove unneeded checks.
564
565 2007-03-18  Matthias Clasen  <mclasen@redhat.com>
566
567         * glib/gregex.c: Cosmetic fixes
568
569 2007-03-17  Marco Barisione <marco@barisione.org>
570
571         * glib/update-pcre/table-reduction.patch:
572         * glib/update-pcre/make_utt.py:
573         * glib/update-pcre/utt.patch: Add forgotten files
574
575         * glib/update-pcre/update.sh: Call python directly instead of relying
576         on shebang. Also copy the changes from glib/pcre/makefile.msc to this
577         file
578
579 2007-03-17  Hans Breuer  <hans@breuer.org>
580
581         * glib/makefile.msc.in glib/pcre/makefile.msc 
582           glib/update-pcre/update.sh : define PCRE_STATIC to reflect the 
583         inclusion of pcre as LIB, not stand-alone DLL. Also set NEWLINE=-1
584         to match any newline by default, use of ../../build/win32/make.msc
585
586         * glib/gregex.h : minimal includes of <glib/*.H> instead of <glib.h>
587
588         * glib/gnulib/makefile.msc : make use of ../../build/win32/make.msc
589
590         * tests/regex-test.c(verbose): don't pass a string containing '%' 
591         as first parameter to g_print ()
592         (test_match) : for the unexpected case output pattern and string
593         escaped
594
595         * tests/child-test.c tests/slice-color.c : fix c99ism
596         * tests/slice-test.c : fix c99ism and gccism
597         * tests/mapping-test.c tests/base-64-tests.c : don't 
598         #include <unistd.h> unconditionally
599         * tests/option-test.c : use G_GINT64_CONSTANT() instead of direct LL
600
601         * tests/makefile.msc.in : more tests build
602
603 2007-03-17  Matthias Clasen  <mclasen@redhat.com>
604
605         * glib/gsequence.[hc]:
606         * glib/glib.symbols:
607         * tests/sequence-test.c: Move the consistency
608         checks to the test.
609
610 2007-03-16  Matthias Clasen  <mclasen@redhat.com>
611
612         * configure.in: Bump version
613
614         * === Released 2.13.0 ===
615
616         * NEWS: Updates
617
618 2007-03-16  Matthias Clasen  <mclasen@redhat.com>
619         
620         * glib/glib.symbols:
621         * glib/gsequence.h: Add the test function to the header,
622         since it is exported.
623
624         * glib/gbase64.c (g_base64_decode): Warn if the input
625         is too short.  (#418862, Halton Huo)
626
627 Fri Mar 16 11:24:51 2007  Tim Janik  <timj@imendio.com>
628
629         * glib/gscanner.[hc]: reverted premature commit which broke
630         GScanner ABI and API, #415323.
631
632 2007-03-16  Chris Wilson  <chris@chris-wilson.co.uk>
633
634         * glib/gkeyfile.c: Convert to GSlice and check for redundant
635         clears. (#418637)
636
637 2007-03-15  Matthias Clasen  <mclasen@redhat.com>
638
639         * glib/gscanner.[hc]: Revert recent changes that break
640         existing users of GScanner.
641
642 2007-03-15  Matthias Clasen  <mclasen@redhat.com>
643
644         * glib/gscanner.c (g_scanner_get_token_ll): Fix a typo
645         in the last commit.  (#415323, Richard Hult)
646
647 2007-03-15  Tor Lillqvist  <tml@novell.com>
648
649         * glib/gnulib/Makefile.am (INCLUDES): Add -I$(top_srcdir)/glib so
650         that gregex.h finds <glib.h>.
651
652         * glib/update-pcre/Makefille.am-1: Add -DGLIB_COMPILATION so that
653         we don't think g_ascii_table is dllimport.
654
655         * glib/pcre/Makefile.am: Corresponding change.
656
657         * glib/update-pcre/notdll.patch: New file. Drop
658         dllimport/dllexport magic for the pcre symbols.
659
660         * glib/update-pcre/Makefile.am: Dist it.
661
662         * glib/update-pcre/update.sh: Apply notdll.patch.
663
664         * glib/pcre/pcre.h: Corresponding change.
665
666 2007-03-15  Tor Lillqvist  <tml@novell.com>
667
668         * glib/gtypes.h: Add comment to avoid misleading people with the
669         large number of digits in G_PI etc. (#404338)
670
671 2007-03-15  Tor Lillqvist  <tml@novell.com>
672
673         * config.h.win32.in: Update to match what configure produces.
674
675 2007-03-15  Marco Barisione <marco@barisione.org>
676
677         Add GRegex for regular expression matching.  (#50075)
678
679         * configure.in: Handle GRegex compilation.
680
681         * glib/gregex.c:
682         * glib/gregex.h: Code for GRegex.
683
684         * glib/Makefile.am:
685         * glib/makefile.msc.in: Updated makefiles.
686
687         * glib/pcre/*: Internal copy of PCRE.
688
689         * glib/update-pcre/*: Stuff to automatically update the internal PCRE
690         to a newer version.
691
692         * tests/regex-test.c:
693         * tests/Makefile.am:
694         * tests/makefile.msc.in: Add tests for GRegex.
695
696 2007-03-15  Chris Wilson  <chris@chris-wilson.co.uk>
697
698         * glib/gmain.c (g_main_dispatch): Replace a
699         g_slist_prepend/g_slist_remove pair with an on-stack link
700         and open coding. (#416094)
701
702 2007-03-15  Matthias Clasen  <mclasen@redhat.com>
703
704         Fix two glitches in the Unicode case conversion
705         functions (#418217,  Denis Jacquerye)
706
707         * glib/guniprop.c (g_unichar_toupper): Handle zero entries
708         in special_case_table correctly.
709         (g_unichar_totitle): Fall back to g_unichar_toupper.
710
711 2007-03-15  Matthias Clasen  <mclasen@redhat.com>
712
713         * glib/gscanner.[hc]: Some optimizations, use a lookup
714         table for character classes, pre-allocate GStrings with
715         reasonable sizes.  (#415323, Charlie Brej)
716
717 2007-03-14  Matthias Clasen  <mclasen@redhat.com>
718
719         * glib/gkeyfile.c (g_key_file_get_double): Fix a 
720         small typo.  (#417847, Bobby Jack)
721
722 2007-03-08  Matthias Clasen  <mclasen@redhat.com>
723
724         * glib/gstrfuncs.c (g_strtoll): Return negative values.
725         (#416062)
726
727         * tests/strtoll-test.c: Add more testcases.
728
729 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
730
731         * glib/gstring.c (g_str_equal): Clarify docs.  (#364026, 
732         Bastian Nocera)
733
734 2007-03-06  Matthew Barnes  <mbarnes@redhat.com>
735
736         * glib/gqueue.h:
737         * glib/gqueue.c: Add G_QUEUE_INIT, g_queue_init(), and
738         g_queue_clear() to better support statically allocated
739         queues.  (#413244)
740
741 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
742
743         * glib/gkeyfile.c (g_key_file_parse_value_as_boolean):
744         Remove a NULL check that didn't do any good.  (#360904,
745         Paolo Borelli)
746
747 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
748
749         * glib/gmarkup.c (g_markup_parse_context_parse): Report
750         more accurate position for invalid UTF-8.  (#350802,
751         Simon Budig)
752
753 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
754
755         * glib/gbase64.c: Add NULL checks to the base64 
756         functions that take pointers.  (#399611, Martyn Russell)
757
758 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
759
760         Work with Solaris gettext (#341988, Laszlo Peter)
761
762         * m4macros/glib-gettext.m4: Make GLIB_WITH_NLS define
763         MSGFMT_OPTS if msgfmt supports -c.
764
765         * po/Makefile.in.in: Use MSGFMT_OPTS when calling
766         msgfmt.
767
768 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
769
770         * tests/Makefile.am: Apply a patch by Loïc Minier
771         to fix building with -Wl,-z,defs.  (#149144)
772
773 2007-03-03  Thierry Randrianiriana  <randrianiriana@gmail.com>
774
775         * po/mg.po: Added Malagasy translation.
776         * configure.in: Added Malagasy 'mg' to ALL_LINGUAS
777
778 2007-03-01  Ihar Hrachyshka <iharh@gnome.org>
779         * configure.in: Added be@latin to ALL_LINGUAS.
780
781 2007-02-17  Tor Lillqvist  <tml@novell.com>
782
783         * glib/gdate.c (win32_strftime_helper): New Win32-only
784         function. Use the wide character Win32 API to do the work of
785         strftime(): GetThreadLocale(), GetLocaleInfoW(), GetDateFormatW()
786         and GetTimeFormatW().
787         (g_date_strftime): On Windows use win32_strftime_helper()
788         instead of strftime() to avoid codepage issues with strftime().
789         Unfortunately using wcsftime() would not help either. (#404832)
790
791 2007-02-16  Soren Sandmann <sandmann@redhat.com>
792
793         * tests/sequence-test.c: For move, test moving between two
794         sequences. Add test for swap.
795
796         * glib/gsequence.c: Replace splay tree with a treap.
797         (check_node): Add checks for the treap invariants.
798
799 2007-02-10  Hans Breuer  <hans@breuer.org>
800
801         * glib/makefile.msc.in : added gsequence.obj
802
803 Fri Feb  9 17:46:18 2007  Søren Sandmann  <sandmann@redhat.com>
804
805         * glib/gsequence.c (g_sequence_get_end_iter): Remove assertion.
806         * glib/gsequence.c (is_end): Return TRUE if the iter doesn't have
807         a parent.
808         * glib/gsequence.c: Fix grammar of comment.
809         * glib/gsequence.c (node_update_fields): Use a temporary variable
810         for the n_nodes.
811
812 2007-02-07  Soren Sandmann <sandmann@daimi.au.dk>
813
814         * tests/sequence-test.c (compare_items): Force an arbitrary order
815         on otherwise identical items.
816
817         * glib/gsequence.c: Add comment discussing splay trees vs. other trees.
818         * glib/gsequence.c (is_end): Add fast path for the common case
819         when the node is not actually the end node.
820
821 2007-02-05  Soren Sandmann <sandmann@daimi.au.dk>
822
823         * glib/gsequence.c (g_sequence_sort_iter): Don't prohibit access
824         until after the g_sequence_move_range() call.  Bug 404759,
825         Christian Persch.
826
827        * tests/sequence-test.c: Formatting fix.
828
829 2007-02-03  Soren Sandmann <sandmann@daimi.au.dk>
830
831         * glib/gsequence.c (struct _GSequence): Add a new 'real_sequence'
832         field.
833         (g_sequence_new): Initialize real_sequence to the sequence
834         (g_sequence_sort_iter): Set real_sequence of the temporary
835         sequence to the real sequence.
836         (g_sequence_sort_changed_iter): Same
837         (g_sequence_insert_sorted_iter): Same
838         (g_sequence_search_iter): Same
839         (g_sequence_iter_get_sequence): Return real_sequence
840
841         * tests/sequence-test.c (compare_iters): Insert assertions that
842         the iters point to the sequence being manipulated.
843
844 2007-02-03  Soren Sandmann <sandmann@daimi.au.dk>
845
846         * glib/gsequence.[ch]: New files implementing GSequence, a list
847         implemented using a binary tree.
848         * glib/glib.h, glib/glib.symbols: Update for GSequence.
849         * docs/reference: Add documentation for GSequence
850         * tests: Add sequence-test.c, a thorough test of all of
851         the GSequence API.
852
853 2007-01-30  Matthias Clasen <mclasen@redhat.com>
854
855         * glib/glib.symbols:
856         * glib/gslice.h:
857         * glib/gslice.c: Don't make ABI depend on G_ENABLE_DEBUG,
858         just add an empty g_slice_debug_tree_statistics () implementation
859         in the !G_ENABLE_DEBUG case.
860
861 2007-01-26  Matthias Clasen <mclasen@redhat.com>
862
863         * configure.in: Define G_GNUC_INTERNAL for Sun Studio
864         as __hidden.  (#342981, Brian Cameron)
865
866         * glib/gconvert.c:
867         * glib/gutf8.c: Move G_GNUC_INTERNAL uses to the right
868         spot.
869
870 2007-01-26  Matthias Clasen <mclasen@redhat.com>
871
872         * gmem.c:
873         * gslice.c:
874         * gmessages.c:
875         * gutils.c: Make some structs which are used only once
876         non-static.
877
878 2007-01-24  Benjamin Otte <otte@gnome.org>
879
880         * glib/gprintf.c (g_sprintf): Clarify the documentation
881         regarding overflows (wording by Jan Schmidt)
882
883 2007-01-23  Roozbeh Pournader  <roozbeh@farsiweb.info>
884
885         * README: Remove mention of no-longer-existing PATCH
886         keyword in bugzilla. (#396899)
887
888 2007-01-23  Matthias Clasen  <mclasen@redhat.com>
889
890         * glib/gutf8.c (g_utf8_get_char_validated): Clarify
891         the behaviour is max_len is zero.  (#400044,
892         Benjamin Dauvergne)
893
894 2007-01-23  Matthias Clasen  <mclasen@redhat.com>
895
896         * glib/goption.c (print_help): Use bitwise &
897         when operating on flags.  (#399971, Jon Oberheide)
898
899 2007-01-19  Matthias Clasen  <mclasen@redhat.com>
900
901         Some file list updates (#398069, Owen Taylor)
902
903         * docs/Changes-2.0.txt
904         * docs/reference/README.cvs-commits
905         * glib.spec.in: Remove obsolete files
906
907         * tests/Makefile.am:
908         * glib/libcharset/Makefile.am:
909         * gobject/Makefile.am:
910         * Makefile.am: Add some missing files to EXTRA_DIST
911
912         * tests/timeloop-basic.c: Make it build
913         * HACKING: Small updates
914
915 2007-01-18  Matthias Clasen  <mclasen@redhat.com>
916
917         * glib/gdate.c (g_date_set_time): Fix a typo.  (#398203,
918         Owen Taylor)
919
920 2007-01-17  Tor Lillqvist  <tml@novell.com>
921
922         * config.h.win32.in
923         * glib/galloca.h
924         * glib/gbacktrace.h
925         * glib/gwin32.c
926         * glibconfig.h.win32.in
927         * README.win32: More minor tweaks for Digital Mars
928         compiler. (#346808, Serhat Sevki Dincer)
929
930 2007-01-17  Tor Lillqvist  <tml@novell.com>
931
932         * glib-zip.in: DLLs are always installed in "bin" with current
933         libtool, drop unnecessary logic to check where they are. Include
934         also the COPYING file.
935
936 2007-01-17  Tor Lillqvist  <tml@novell.com>
937
938         * glib/galloca.h: Use <malloc.h> also with Digital Mars compiler
939         on Win32. (#346808, Serhat Sevki Dincer)
940
941 2007-01-16  Matthias Clasen  <mclasen@redhat.com>
942
943         * glib/gthread.h:
944         * glib/gthread.c:
945         * glib/glib.symbols: Revert an accidental ABI break by
946         moving gettime out of the GThreadFunctions struct and making
947         it a separate variable.  (#397139, Joe Marcus Clarke)
948
949         * gthread/*.c: Adapt.
950
951 2007-01-16  Tor Lillqvist  <tml@novell.com>
952
953         * glib/gthread.c (gettime): GetSystemTimeAsFileTime() returns 100s
954         of nanoseconds since 1601, so offset to Unix epoch (1970) and
955         multiply by 100 to get nanoseconds which is what we want.
956
957 2007-01-15  Tor Lillqvist  <tml@novell.com>
958
959         * glib/gmain.h (struct _GPollFD): Fix mistake in my last commit.
960
961 2005-01-15  Matthias Clasen  <mclasen@redhat.com>
962
963         * glib/giochannel.c:
964         * glib/gbookmarkfile.c: Remove redundant NULL-checks.
965         (#369668, Morten Welinder)
966
967 2005-01-15  Matthias Clasen  <mclasen@redhat.com>
968
969         * glib/gthread.c:
970         * gthread/gthread-posix.c: Correct the gettime calculations
971         once more.  (#395203, Chris Wilson)
972
973 2007-01-15  Tor Lillqvist  <tml@novell.com>
974
975         * glib/gmain.h (struct _GPollFD): Prepare for potential Win64
976         build: Use gint64 for the fd field on Win64, as we want to be able
977         to store a HANDLE in it. (#395422) (Other changes will surely also
978         be necessary when building on Win64, at least in giowin32.c.)
979
980 2007-01-15  Tor Lillqvist  <tml@novell.com>
981
982         * glib/gwin32.c (g_win32_getlocale): Simplify greatly. Instead of
983         hardcoding a large switch statement, just ask Windows for the
984         ISO639 and ISO3166 codes. Tack on @Latn or @Cyrl for those
985         languages which can alternatively be written in Latin or
986         Cyrillic. Fixes #395419.
987
988 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
989
990         * glib/gkeyfile.c: Rework the handling of invalid
991         keys/groups again. We are back to being liberal about
992         what we accept, and only reject things that would lead
993         to non-rereadable keyfiles.
994
995         * tests/keyfile-test.c: Adapt tests.
996
997 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
998
999         * glib/gutils.c (g_get_home_dir): Clarify docs.  (#394687,
1000         Marc Brockschmidt)
1001
1002 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
1003
1004         * glib/gthread.c: Include windows.h and fix
1005         include order. (#394258, Kazuki Iwamoto)
1006
1007 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
1008
1009         * configure.in: Make G_GNUC_INTERNAL a no-op for
1010         gcc 2.95.    (#329031, David Schleef, Marc Brockschmidt)
1011
1012 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
1013
1014         * gthread/gthread-posix.c:
1015         * glib/gtimer.c:
1016         * glib/gthread.c: Fix errors in the recently moved
1017         time calculations.  (#395203, Chris Wilson)
1018
1019 2007-01-10  Matthias Clasen  <mclasen@redhat.com>
1020
1021         * configure.in: Actually link gthread against librt.
1022         (#394641, Marco Pesenti Gritti)
1023
1024 2007-01-10  Matthias Clasen  <mclasen@redhat.com>
1025
1026         * glib/gkeyfile.c (g_key_file_is_key_name): Grr, allow '*' in keys,
1027         too.  (#394262)
1028
1029 2007-01-09  Behdad Esfahbod  <behdad@gnome.org>
1030
1031         * glib/gutils.h: Use a more optimized g_bit_storage() when gcc is
1032         available.  (#371670, Daniel Elstner)
1033
1034 2007-01-08  Matthias Clasen  <mclasen@redhat.com>
1035
1036         * gthread/gthread-posix.c (g_thread_impl_init): Don't
1037         use _SC_MONOTONIC_CLOCK unless USE_CLOCK_GETTIME is
1038         defined.  (#394150)
1039
1040 2007-01-07  Matthias Clasen  <mclasen@redhat.com>
1041
1042         Don't link glib against libpthread.  (#393812)
1043
1044         * configure.in: Link gthread against librt, not glib itself.
1045
1046         * glib/gthread.h:
1047         * glib/gthread.c: Add a new thread function, gettime.
1048
1049         * glib/gtimer.c: Use gettime instead of directly working with
1050         the various system interfaces.
1051
1052         * gthread/gthread-impl.c:
1053         * gthread/gthread-posix.c:
1054         * gthread/gthread-win32.c: Implement gettime.
1055
1056 2007-01-07  Matthias Clasen  <mclasen@redhat.com>
1057
1058         * m4macros/glib-2.0.m4: Use PKG_PROG_PKG_CONFIG.  (#392636,
1059         Yevgen Muntyan)
1060
1061 2007-01-07  Tor Lillqvist  <tml@novell.com>
1062
1063         * glib/giowin32.c: Handle GIOChannels for file descriptors
1064         connected to the console separately. This would typically be the
1065         fd 0, 1, or 2 (if not redirected) in a console application. For
1066         such fds we don't need a separate thread, as console HANDLEs are
1067         waitable objects. (#359202, Michiel de Hoon)
1068
1069 2007-01-04  Behdad Esfahbod  <behdad@gnome.org>
1070
1071         * tests/bit-test.c (builtin_bit_nth_lsf1), (builtin_bit_nth_lsf2),
1072         (builtin_bit_nth_msf): Fix tests on x86_64.
1073
1074 2007-01-03  Behdad Esfahbod  <behdad@gnome.org>
1075
1076         * glib/goption.c (_g_unichar_get_width), (_g_utf8_strwidth),
1077         (calculate_max_length), (print_entry), (print_help): Take zerowidth
1078         and double-width chars into consideration when computing width of a
1079         string.  Also fix another bug in width computation. (#346955)
1080
1081         * glib/guniprop.c (g_unichar_iszerowidth): Fix typo.  It was not
1082         working correctly.
1083
1084 2007-01-03  Behdad Esfahbod  <behdad@gnome.org>
1085
1086         * glib/glib.symbols:
1087         * glib/gunicode.h:
1088         * glib/guniprop.c: Add g_unichar_iszerowidth(). (#347645)
1089
1090 2007-01-03  Behdad Esfahbod  <behdad@gnome.org>
1091
1092         * glib/gutils.h: Fix bug in g_bit_nth_lsf (#371631) and use
1093         __builtin_clzl for g_bit_storage if available (#371670).
1094
1095         * tests/Makefile.am:
1096         * tests/bit-test.c: New test, to test g_bit_* operations against
1097         naive and builtin implementations.
1098
1099 2007-01-02  Behdad Esfahbod  <behdad@gnome.org>
1100
1101         * configure.in: Avoid more warnings from running libtool --config.
1102         (#391364)
1103
1104 2007-01-03  Michael Natterer  <mitch@imendio.com>
1105
1106         * removed all .cvsignore files. SVN doesn't need them.
1107
1108 2007-01-02  Emmanuele Bassi  <ebassi@gnome.org>
1109
1110         * glib/gbookmarkfile.c (expand_exec_line): Add support for
1111         expanding the desktop entry spec variables %U (list of URIs)
1112         and %F (list of filenames), so that using the command line
1113         from the Exec and TryExec key of a desktop entry file works
1114         as intended.
1115
1116 2007-01-02  Matthias Clasen  <mclasen@redhat.com>
1117
1118         * configure.in: Avoid warnings from running libtool --config.
1119         (#391364, Loïc Minier)
1120
1121 2007-01-02  Matthias Clasen  <mclasen@redhat.com>
1122
1123         * glib/gbookmarkfile.c (g_bookmark_file_get_app_info):
1124         Return an error if the uri is bad. (#391370, Maciej Piechotka)
1125
1126 2007-01-02  Matthias Clasen  <mclasen@redhat.com>
1127
1128         * glib/glib.symbols: Guard g_slice_debug_tree_statistics
1129         by G_ENABLE_DEBUG.  (#390940, Kazuki Iwamoto)
1130
1131 2007-01-02  Michael Natterer  <mitch@imendio.com>
1132
1133         * configure.in
1134         * Makefile.am: remove references to build/ until a proper decision
1135         has been made what to do with it.
1136
1137 2007-01-01  Matthias Clasen  <mclasen@redhat.com>
1138
1139         * glib-gettextize.in: Silence autoconf warnings about
1140         datarootdir.  (#391367, Loïc Minier)
1141
1142 2006-12-31  Matthias Clasen  <mclasen@redhat.com>
1143
1144         * glib/gslice.c: Fix some C99isms.  (#390913, Kazuki Iwamoto)
1145
1146 Fri Dec 29 13:28:07 2006  Tim Janik  <timj@imendio.com>
1147
1148         * glib/gslice.c: turned detection of too late g_thread_init() calls
1149         into a warning. this is a temporary work-around for some head-room
1150         to fix affected programs, memory corruption still occours regardless.
1151
1152 2006-12-29  Matthias Clasen  <mclasen@redhat.com>
1153
1154         * tests/gobject/Makefile.am:
1155         * tests/gobject/dynamictype.c: New test for dynamic type
1156         registration macros.
1157
1158 Thu Dec 28 21:14:45 2006  Tim Janik  <timj@imendio.com>
1159
1160         * glib/gslice.c: removed pthread-dependant debugging bits, the code
1161         was already converted to GMutex. this obsoletes Tor's recent fixups.
1162
1163 2006-12-28  Tor Lillqvist  <tml@novell.com>
1164
1165         * glib/gutils.h (G_WIN32_DLLMAIN_FOR_DLL_NAME)
1166         * glib/gutils.c (get_windows_directory_root): : Use only the wide
1167         character API here, too.
1168
1169         * glib/gslice.c: Make it compile on Win32 without pthreads: Use a
1170         Win32 critical section instead.
1171
1172         * glib/gmessages.c (g_logv): On Win32, if we get a fatal error
1173         message while being debugged we break into the debugger with
1174         G_BREAKPOINT(). Don't call abort() if the user is foolhardy enough
1175         to continue after the breakpoint. The user presumably knows what
1176         he is doing and deserves what he gets. (#376645, Andreas Köhler)
1177
1178 Thu Dec 28 12:50:31 2006  Tim Janik  <timj@imendio.com>
1179
1180         * glib/gslice.h, glib/gslice.c: implemented static debugging
1181         hash-tree to validate slice adresses and sizes with G_SLICE=debug-blocks.
1182         use abort() to exit in mem_error() to allow catching of these in gdb.
1183         abort programs with a descriptive error message if g_thread_init() is
1184         called after GSlice was in use. previously this just silently corrupted
1185         the magazines.
1186
1187         * glib/ghash.c (struct _GHashNode): reordered fields to keep 8-byte
1188         pointer alignment on 64bit systems and request smaller slice sizes
1189         on 32bit systems.
1190
1191         * tests/slice-test.c: support '~' option flag to introduce slice
1192         allocation/release corruption with a significant probability. this
1193         allowes testing of G_SLICE=debug-blocks.
1194
1195 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
1196
1197         * glib/gconvert.[hc]:
1198         * glib/gfileutils.c:
1199         * glib/giochannel.c:
1200         * glib/goption.c:
1201         * glib/gspawn.c:
1202         * glib/gunicollate.c:
1203         * glib/gutils.c:
1204         * tests/timeloop-basic.c:
1205         Consistently use gsize rather than size_t.  (#333310,
1206         Morten Welinder)
1207
1208 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
1209
1210         * configure.in: Use AC_CACHE_CHECK for the nl_langinfo
1211         check.  (#304517, Lőrinczy Zsigmond)
1212
1213 2006-12-27  Tor Lillqvist  <tml@novell.com>
1214
1215         * glib/gwin32.h
1216         * glib/gwin32.c (get_package_directory_from_module)
1217         (g_win32_get_package_installation_directory)
1218         (g_win32_get_package_installation_subdirectory): Add const to
1219         gchar* arguments. (#384523, Yevgen Muntyan)
1220
1221 2006-12-27  Ryan Lortie  <desrt@desrt.ca>
1222
1223         * glib/ghash.c: cache the value of the hash function
1224         in the GHashNode.  this speeds up resizing the hash
1225         table and it also allows a slight optimisation on
1226         lookups.  (#388332)
1227
1228 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
1229
1230         * glib/gunicollate.c (g_utf8_collate_key): Don't modify
1231         the current locale.  (#389300)
1232
1233 2006-12-26  Matthias Clasen  <mclasen@redhat.com>
1234
1235         * glib/gutf8.c: Add hints for locale-dependent interfaces.
1236         * glib/gconvert.c: Add hints for locale-dependent interfaces.
1237
1238         * glib/gconvert.c (g_get_filename_charsets): Improve
1239         formatting of docs.
1240
1241 2006-12-26  Behdad Esfahbod  <behdad@gnome.org>
1242
1243         * configure.in: Use libtool to determine shared library suffix.
1244         (#357245)
1245
1246 2006-12-24  Matthias Clasen  <mclasen@redhat.com>
1247
1248         * tests/run-collate-tests.sh:
1249         * tests/unicode-collate.c: Silently skip tests if
1250         we can't set LC_COLLATE to en_US.  (#336438)
1251
1252 2006-12-19  Matthias Clasen  <mclasen@redhat.com>
1253
1254         * glib/gkeyfile.c (g_key_file_is_key_name): Accept
1255         '/', '+' and '.' in key names, since gnome-vfs uses
1256         mime types as keys in some cache.
1257
1258         * tests/keyfile-test.c: Tests for the above.
1259
1260 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
1261
1262         * configure.in: Fix the broken poll test.  (#387260,
1263         Christian Persch)
1264
1265         * glib/gmain.c (child_watch_helper_thread): Readd a
1266         return which was removed as dead code a while ago.
1267         icc may consider it dead, but gcc doesn't like non-void
1268         functions without a return...  (#354707)
1269
1270         * tests/Makefile.am: Try a different fix for bug 346373.
1271
1272 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
1273
1274         Fix bug 161288:
1275
1276         * configure.in: Check for wcslen.
1277
1278         * glib/gnulib/vasnprintf.c: Handle wcslen missing.
1279
1280 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
1281
1282         * glib/gkeyfile.c: Accept '@' in locale names.
1283
1284         * glib/gkeyfile.c: Tighten up the check for allowed
1285         key and group names.  (#343191, Tommi Komulainen)
1286
1287         * tests/keyfile-test.c: Test handling of key and group names.
1288
1289         * tests/Makefile.am: Don't use $RANDOM if the shell doesn't
1290         have it.  (#346373, Thomas Klausner)
1291
1292 2006-12-17  Behdad Esfahbod  <behdad@gnome.org>
1293
1294         * glib/gstring.c: Improve docs about string functions taking a
1295         length.  (#378727)
1296
1297 2006-12-17  Matthias Clasen  <mclasen@redhat.com>
1298
1299         * glib/gconvert.c:
1300         * glib/gutf8.c (_g_charset_get_aliases): Put the G_GNUC_INTERNAL
1301         where gcc doesn't complain about it.
1302
1303         * glib/ghash.c: Make ref_count an int to avoid compiler
1304         warnings.
1305
1306         * configure.in: Use AC_LANG_SOURCE for the clock test.
1307
1308         * glib/gthreadpool.h:
1309         * glib/gthreadpool.c (g_thread_pool_free): Don't use "wait"
1310         as parameter name.  (#379207, Christian Biere)
1311
1312         * glib/gspawn.c: Refer to g_child_watch_add() in addition
1313         to waitpid().
1314
1315         * glib/gstrfuncs.c (g_strndup, g_strnfill): Move docs
1316         inline, and improve wording.  (#372598, Behdad Esfahbod)
1317
1318         * glib/gspawn.c: Add some pointers to the gdk_spawn_
1319         variants.  (#338134, Federico Mena Quintero)
1320
1321         * configure.in: Make montonic clock test work again. Does
1322         AC_COMPILE_IFELSE not get confdefs ? Also, move the clock
1323         tests below the thread checks to fix #364663.
1324
1325         * tests/run-markup-tests.sh: Don't use diff -u  (#380801,
1326         Marek Rouchal)
1327
1328         * glib/gspawn.c: Fix the recent fdwalk()-related changes
1329         to not break mapping-test.  (#286838, Marco Barisione)
1330
1331         * glib/gstring.c (g_string_chunk_new): Don't shadow size.
1332         (#386760, Kazuki IWAMOTO)
1333
1334 2006-12-16  Matthias Clasen  <mclasen@redhat.com>
1335
1336         * glib/gstring.c: Move more documentation inline.
1337
1338         * configure.in: Use AC_COMPILE_IFELSE for the monotonic
1339         clock test.  (#362918, Han-Wen Nienhuys, Jeremy Lainé)
1340
1341         * glib/gstring.c: Move documentation inline.
1342
1343 2006-12-15  Matthias Clasen  <mclasen@redhat.com>
1344
1345         * glib/giochannel.h: Make ref_count a gint to avoid
1346         compiler warnings.  (#321977, Andrew Paprocki)
1347
1348         * configure.in: On Solaris, set CFLAGS and LDFLAGS that
1349         work both with Sun cc and gcc.  (#315061, Lazlo Peter)
1350
1351         * glib/gspawn.c: Undefine READ_OK to fix the build on
1352         old versions of Darwin.  (#327800)
1353
1354         * glib/glib.symbols:
1355         * glib/gstring.[hc] (g_string_chunk_clear): Add a function
1356         for clearing a GStringChunk. (#364608, Matt Barnes)
1357
1358         * glib/guniprop.c (interval_compare): Avoid a compiler
1359         warning.
1360
1361         * glib/gspawn.c (do_exec): Call set_cloexec() with
1362         the right parameters.  (#386252, Guillaume Desmottes)
1363
1364 2006-12-15  Matthias Clasen  <mclasen@redhat.com>
1365
1366         Fix #357585, Padraig O'Briain.
1367
1368         * configure.in: Check for fdwalk.
1369
1370         * glib/gspawn.c (do_exec): Use fdwalk() to close all
1371         file descriptors.
1372
1373         * glib/gspawn.c (fdwalk): Fallback implementation of
1374         fdwalk.
1375
1376 2006-12-14  Matthias Clasen  <mclasen@redhat.com>
1377
1378         * glib/gconvert.c (open_converter): Don't use alloca
1379         and avoid allocating memory for small keys that are
1380         already cached.  (#172406, Morten Welinder)
1381
1382         * glib/gmain.c (g_child_watch_add_full): Improve the docs.
1383         (#345569, Tim-Philipp Müller)
1384
1385         * glib/gkeyfile.c (g_key_file_add_group): If the group
1386         is already there, make it current.  (#385910, Joe Halliwell)
1387
1388         * tests/keyfile-test.c: Add a test for duplicate groups/keys.
1389
1390 2006-12-13  Matthias Clasen  <mclasen@redhat.com>
1391
1392         * m4macros/glib-gettext.m4: Require AC_CANONICAL_HOST in
1393         GLIB_WITH_NLS.  (#385132, Laszlo Peter)
1394
1395 2006-12-12  Matthias Clasen  <mclasen@redhat.com>
1396
1397         * configure.in: Add a check for broken poll on Mac OS X.
1398
1399         * glib/gmain.c: Use poll emulation on OS X.  (#302672, Toby Peterson,
1400         patch by Dave Vasilevsky)
1401
1402 2006-12-11  Matthias Clasen  <mclasen@redhat.com>
1403
1404         * glib/gatomic.c: Don't use local numeric labels in
1405         inline assembler on AIX.  (#316434, Hans Rosenfeld)
1406
1407         * glib/gunicode.h (g_utf8_next_char): Cast to const char *,
1408         not char *.  (#138153, Nikolai Weibull)
1409
1410 Wed Nov 22 16:09:13 2006  Tim Janik  <timj@gtk.org>
1411
1412         * glib/gmacros.h: added G_GNUC_MAY_ALIAS, suggested by Mathias
1413         Hasselmann in bug #335341, fixes bug #335853.
1414
1415 2006-11-15  Matthias Clasen  <mclasen@redhat.com>
1416
1417         * m4macros/glib-gettext.m4: Apply a patch from James
1418         Henstridge for compatibility with automake 2.60 (#343825)
1419
1420 2006-11-14  Behdad Esfahbod  <behdad@gnome.org>
1421
1422         * sanity_check: Replace bash-specific == with sh-understood =.
1423         Fixes bug #373864.
1424
1425 2006-11-05  Hans Breuer  <hans@breuer.org>
1426
1427         * glib/makefile.msc.in : glib/ version not the gobject/
1428         one I accidentially commited. Fixes bug #371074.
1429
1430 2006-11-05  Tor Lillqvist  <tml@novell.com>
1431
1432         * makefile.mingw
1433         * gmodule/makefile.mingw.in
1434         * glib/makefile.mingw.in
1435         * gobject/makefile.mingw.in
1436         * gthread/makefile.mingw.in
1437         * tests/makefile.mingw.in: Remove from CVS. Haven't been
1438         maintained or distributed for long.
1439
1440 2006-10-26  Pascal Terjan  <pterjan@linuxfr.org>
1441
1442         * glib/libcharset/localcharset.c: Fix small leak on failed
1443         realloc in _g_locale_get_charset_aliases (#338582)
1444
1445 2006-10-16  Behdad Esfahbod  <behdad@gnome.org>
1446
1447         * glib/gnulib/Makefile.am: Add $(GLIB_DEBUG_FLAGS).  (#362543,
1448         Peter Kjellerstedt)
1449
1450 2006-10-15  Sebastian Wilhelmi  <seppi@seppi.de>
1451
1452         * tests/Makefile.am: Compile errorcheck-mutex-test with thread
1453         libraries explicitly. (#74748, Javier Villavicencio)
1454
1455 2006-10-08  Matthias Clasen  <mclasen@redhat.com>
1456
1457         Add a way to obtain Unicode script information.  (#348348,
1458         Marco Barisione)
1459
1460         * glib/glib.symbols:
1461         * glib/gunicode.h: Add GUnicodeScript enumeration and
1462         g_unichar_get_script.
1463
1464         * glib/guniprop.c: Implement g_unichar_get_script.
1465
1466         * glib/gscripttable.h: Generated private header containing
1467         script tables.
1468
1469         * glib/gen-script-table.pl: Script to generate gscripttable.h.
1470
1471         * glib/Makefile.am: Update
1472
1473 2006-10-08  Matthias Clasen  <mclasen@redhat.com>
1474
1475         * tests/run-markup-tests.sh: Small portability fix.  (#347944,
1476         Dan McMahill)
1477
1478 2006-10-07  Tor Lillqvist  <tml@novell.com>
1479
1480         * glib/gwin32.c (get_package_directory_from_module)
1481         (g_win32_get_package_installation_directory): g_strdup the keys
1482         that we are passed before adding them to the hash tables, to guard
1483         against the caller freeing them. (#355955, Andreas Köhler)
1484
1485 2006-10-06  Matthias Clasen  <mclasen@redhat.com>
1486
1487         * glib/gtimer.c: Fix a typo.  (#359190)
1488
1489 2006-10-02  Behdad Esfahbod  <behdad@gnome.org>
1490
1491         * glib/Makefile.am:
1492         * gobject/Makefile.am:
1493         Include pltcheck.sh in EXTRA_DIST, and remove redefinition of TESTS.
1494         (#358966)
1495
1496 2006-10-01  Matthias Clasen  <mclasen@redhat.com>
1497
1498         * glib/gtimer.c (g_usleep): Use nsleep to implement
1499         g_usleep on AIX.  (#321974, Andrew Paprocki)
1500
1501         * configure.in: Check for nsleep
1502
1503         * glib/gmain.c: Fix typos in doc comments.
1504         (#358421, Tom Tromey)
1505
1506 2006-09-30  Matthias Clasen  <mclasen@redhat.com>
1507
1508         * glib/pltcheck.sh: A script to check PLT entries.
1509         * glib/Makefile.am (TESTS): Run pltcheck.sh
1510
1511         * glib/*: Fix includes to correct some issues with
1512         PLT entries.  (#354522, Behdad Esfahbod)
1513
1514 2006-09-17  Hans Breuer  <hans@breuer.org>
1515
1516         * glib/makefile.msc.in gobject/makefile.msc.in : better filtering
1517         of G_GNUC_* stuff when generating .def files. Now also works with
1518         newer (less tolerant) linkers, e.g. from vc2500e
1519
1520 2006-09-10  Matthias Clasen  <mclasen@redhat.com>
1521
1522         * glib/gbacktrace.c: Assume string.h is available.
1523         (#354523, Behdad Esfahbod)
1524
1525         * configure.in: Bump version to 2.13.0
1526
1527         * glib/glib.symbols:
1528         * glib/gmain.[hc]: Add functions to create approximate
1529         timeouts.  (#353942, Arjan van de Ven)
1530
1531         * glib/gstdio.c (g_rename): Initialize save_errno.
1532         (#355206, Mike Edenfield)
1533
1534 2006-09-03  Matthias Clasen  <mclasen@redhat.com>
1535
1536         * glib/gerror.c: Allocate GErrors using the slice allocator.
1537         (#354054, Matt Barnes)
1538
1539 2006-09-02  Matthias Clasen  <mclasen@redhat.com>
1540
1541         * glib/gtimer.c: Forgotten HAVE_CLOCK_GETTIME.
1542
1543 2006-09-02  Tor Lillqvist  <tml@novell.com>
1544
1545         * glib/gutils.c (g_get_any_init_do): Correct C99ism (mixed
1546         declarations and code) in Win32 ifdef branch. (#353903, Mike
1547         Edenfield)
1548
1549 2006-09-01  Abel Cheung  <abel@oaka.org>
1550
1551         * configure.in: Added 'dz' 'hy' to ALL_LINGUAS.
1552
1553 2006-09-01  Matthias Clasen  <mclasen@redhat.com>
1554
1555         * configure.in: Check for CLOCK_MONOTONIC.
1556
1557         * glib/gtimer.c: Only use clock_gettime if we
1558         have a monotonic clock.
1559
1560 2006-08-31  Matthias Clasen  <mclasen@redhat.com>
1561
1562         * configure.in: Add missing includes to a few test
1563         programs.  (#353580, Chris Wilson)
1564
1565 2006-08-30  Matthias Clasen  <mclasen@redhat.com>
1566
1567         * glib/gmarkup.c (g_markup_vprintf_escaped): Don't call
1568         va_end on caller-provided va_args.  (#353584, Chris Wilson)
1569
1570 2006-08-29  Tor Lillqvist  <tml@novell.com>
1571
1572         Remove support for Windows 9x/ME, as will be done also in Pango
1573         and GTK+. GTK+ hasn't worked on Win9x since 2.6 or 2.8 anyway, so
1574         it's pretty pointless to keep the Win9x code in here either. If
1575         somebody is interested, the code can always be found in older GLib
1576         versions, and in CVS.
1577
1578         * glib/gdir.c
1579         * glib/gfileutils.c
1580         * glib/gspawn-win32-helper.c
1581         * glib/gspawn-win32.c
1582         * glib/gstdio.c
1583         * glib/gutils.c
1584         * glib/gwin32.c
1585         * glib/gwin32.h: Remove the G_WIN32_IS_NT_BASED() and
1586         G_WIN32_HAVE_WIDECHAR_API() tests and their false (Win9x)
1587         branches, and any variables or static functions used only by the
1588         Win9x branches.
1589
1590         * glib/gwin32.c (g_win32_windows_version_init): Call g_error() if
1591         run on Win9x.
1592
1593 2006-08-27  Matthias Clasen  <mclasen@redhat.com>
1594
1595         * configure.in: Fix pthread compiler flag detection.
1596
1597         * glib/gtimer.c: Use Posix monotonic clocks instead of
1598         gettimeofday when available.  (#336114, William Jon McCann)
1599
1600 2006-08-26  Matthias Clasen  <mclasen@redhat.com>
1601
1602         * glib/gutils.h:
1603         * glib/gscanner.c: Fix some typos.  (#351741, Kjartan Maraas)
1604
1605 2006-08-25  Matthias Clasen  <mclasen@redhat.com>
1606
1607         * configure.in: Fix the pthread compiler flag detection.
1608
1609         * glib/gunicode.h:
1610         * glib/gutf8.c (_g_utf8_make_valid): Rename make_valid_utf8
1611         from gconvert.c, move it to gutf8.c, and export it privately.
1612
1613         * glib/gconvert.c (g_filename_display_name): Adjust callers.
1614
1615         * glib/gkeyfile.c: Use _g_utf8_make_valid() in a number of
1616         places to ensure error messages are valid UTF-8.  (#351853,
1617         Simon Budig)
1618
1619 2006-08-22  Matthias Clasen <mclasen@redhat.com>
1620
1621         * Branch for 2.12