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