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