Some optimizations, use a lookup table for character classes, pre-allocate
[platform/upstream/glib.git] / ChangeLog
1 2007-03-15  Matthias Clasen  <mclasen@redhat.com>
2
3         * glib/gscanner.[hc]: Some optimizations, use a lookup
4         table for character classes, pre-allocate GStrings with
5         reasonable sizes.  (#415323, Charlie Brej)
6
7 2007-03-14  Matthias Clasen  <mclasen@redhat.com>
8
9         * glib/gkeyfile.c (g_key_file_get_double): Fix a 
10         small typo.  (#417947, Bobby Jack)
11
12 2007-03-08  Matthias Clasen  <mclasen@redhat.com>
13
14         * glib/gstrfuncs.c (g_strtoll): Return negative values.
15         (#416062)
16
17         * tests/strtoll-test.c: Add more testcases.
18
19 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
20
21         * glib/gstring.c (g_str_equal): Clarify docs.  (#364026, 
22         Bastian Nocera)
23
24 2007-03-06  Matthew Barnes  <mbarnes@redhat.com>
25
26         * glib/gqueue.h:
27         * glib/gqueue.c: Add G_QUEUE_INIT, g_queue_init(), and
28         g_queue_clear() to better support statically allocated
29         queues.  (#413244)
30
31 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
32
33         * glib/gkeyfile.c (g_key_file_parse_value_as_boolean):
34         Remove a NULL check that didn't do any good.  (#360904,
35         Paolo Borelli)
36
37 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
38
39         * glib/gmarkup.c (g_markup_parse_context_parse): Report
40         more accurate position for invalid UTF-8.  (#350802,
41         Simon Budig)
42
43 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
44
45         * glib/gbase64.c: Add NULL checks to the base64 
46         functions that take pointers.  (#399611, Martyn Russell)
47
48 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
49
50         Work with Solaris gettext (#341988, Laszlo Peter)
51
52         * m4macros/glib-gettext.m4: Make GLIB_WITH_NLS define
53         MSGFMT_OPTS if msgfmt supports -c.
54
55         * po/Makefile.in.in: Use MSGFMT_OPTS when calling
56         msgfmt.
57
58 2007-03-06  Matthias Clasen  <mclasen@redhat.com>
59
60         * tests/Makefile.am: Apply a patch by Loïc Minier
61         to fix building with -Wl,-z,defs.  (#149144)
62
63 2007-03-03  Thierry Randrianiriana  <randrianiriana@gmail.com>
64
65         * po/mg.po: Added Malagasy translation.
66         * configure.in: Added Malagasy 'mg' to ALL_LINGUAS
67
68 2007-03-01  Ihar Hrachyshka <iharh@gnome.org>
69         * configure.in: Added be@latin to ALL_LINGUAS.
70
71 2007-02-17  Tor Lillqvist  <tml@novell.com>
72
73         * glib/gdate.c (win32_strftime_helper): New Win32-only
74         function. Use the wide character Win32 API to do the work of
75         strftime(): GetThreadLocale(), GetLocaleInfoW(), GetDateFormatW()
76         and GetTimeFormatW().
77         (g_date_strftime): On Windows use win32_strftime_helper()
78         instead of strftime() to avoid codepage issues with strftime().
79         Unfortunately using wcsftime() would not help either. (#404832)
80
81 2007-02-16  Soren Sandmann <sandmann@redhat.com>
82
83         * tests/sequence-test.c: For move, test moving between two
84         sequences. Add test for swap.
85
86         * glib/gsequence.c: Replace splay tree with a treap.
87         (check_node): Add checks for the treap invariants.
88
89 2007-02-10  Hans Breuer  <hans@breuer.org>
90
91         * glib/makefile.msc.in : added gsequence.obj
92
93 Fri Feb  9 17:46:18 2007  Søren Sandmann  <sandmann@redhat.com>
94
95         * glib/gsequence.c (g_sequence_get_end_iter): Remove assertion.
96         * glib/gsequence.c (is_end): Return TRUE if the iter doesn't have
97         a parent.
98         * glib/gsequence.c: Fix grammar of comment.
99         * glib/gsequence.c (node_update_fields): Use a temporary variable
100         for the n_nodes.
101
102 2007-02-07  Soren Sandmann <sandmann@daimi.au.dk>
103
104         * tests/sequence-test.c (compare_items): Force an arbitrary order
105         on otherwise identical items.
106
107         * glib/gsequence.c: Add comment discussing splay trees vs. other trees.
108         * glib/gsequence.c (is_end): Add fast path for the common case
109         when the node is not actually the end node.
110
111 2007-02-05  Soren Sandmann <sandmann@daimi.au.dk>
112
113         * glib/gsequence.c (g_sequence_sort_iter): Don't prohibit access
114         until after the g_sequence_move_range() call.  Bug 404759,
115         Christian Persch.
116
117        * tests/sequence-test.c: Formatting fix.
118
119 2007-02-03  Soren Sandmann <sandmann@daimi.au.dk>
120
121         * glib/gsequence.c (struct _GSequence): Add a new 'real_sequence'
122         field.
123         (g_sequence_new): Initialize real_sequence to the sequence
124         (g_sequence_sort_iter): Set real_sequence of the temporary
125         sequence to the real sequence.
126         (g_sequence_sort_changed_iter): Same
127         (g_sequence_insert_sorted_iter): Same
128         (g_sequence_search_iter): Same
129         (g_sequence_iter_get_sequence): Return real_sequence
130
131         * tests/sequence-test.c (compare_iters): Insert assertions that
132         the iters point to the sequence being manipulated.
133
134 2007-02-03  Soren Sandmann <sandmann@daimi.au.dk>
135
136         * glib/gsequence.[ch]: New files implementing GSequence, a list
137         implemented using a binary tree.
138         * glib/glib.h, glib/glib.symbols: Update for GSequence.
139         * docs/reference: Add documentation for GSequence
140         * tests: Add sequence-test.c, a thorough test of all of
141         the GSequence API.
142
143 2007-01-30  Matthias Clasen <mclasen@redhat.com>
144
145         * glib/glib.symbols:
146         * glib/gslice.h:
147         * glib/gslice.c: Don't make ABI depend on G_ENABLE_DEBUG,
148         just add an empty g_slice_debug_tree_statistics () implementation
149         in the !G_ENABLE_DEBUG case.
150
151 2007-01-26  Matthias Clasen <mclasen@redhat.com>
152
153         * configure.in: Define G_GNUC_INTERNAL for Sun Studio
154         as __hidden.  (#342981, Brian Cameron)
155
156         * glib/gconvert.c:
157         * glib/gutf8.c: Move G_GNUC_INTERNAL uses to the right
158         spot.
159
160 2007-01-26  Matthias Clasen <mclasen@redhat.com>
161
162         * gmem.c:
163         * gslice.c:
164         * gmessages.c:
165         * gutils.c: Make some structs which are used only once
166         non-static.
167
168 2007-01-24  Benjamin Otte <otte@gnome.org>
169
170         * glib/gprintf.c (g_sprintf): Clarify the documentation
171         regarding overflows (wording by Jan Schmidt)
172
173 2007-01-23  Roozbeh Pournader  <roozbeh@farsiweb.info>
174
175         * README: Remove mention of no-longer-existing PATCH
176         keyword in bugzilla. (#396899)
177
178 2007-01-23  Matthias Clasen  <mclasen@redhat.com>
179
180         * glib/gutf8.c (g_utf8_get_char_validated): Clarify
181         the behaviour is max_len is zero.  (#400044,
182         Benjamin Dauvergne)
183
184 2007-01-23  Matthias Clasen  <mclasen@redhat.com>
185
186         * glib/goption.c (print_help): Use bitwise &
187         when operating on flags.  (#399971, Jon Oberheide)
188
189 2007-01-19  Matthias Clasen  <mclasen@redhat.com>
190
191         Some file list updates (#398069, Owen Taylor)
192
193         * docs/Changes-2.0.txt
194         * docs/reference/README.cvs-commits
195         * glib.spec.in: Remove obsolete files
196
197         * tests/Makefile.am:
198         * glib/libcharset/Makefile.am:
199         * gobject/Makefile.am:
200         * Makefile.am: Add some missing files to EXTRA_DIST
201
202         * tests/timeloop-basic.c: Make it build
203         * HACKING: Small updates
204
205 2007-01-18  Matthias Clasen  <mclasen@redhat.com>
206
207         * glib/gdate.c (g_date_set_time): Fix a typo.  (#398203,
208         Owen Taylor)
209
210 2007-01-17  Tor Lillqvist  <tml@novell.com>
211
212         * config.h.win32.in
213         * glib/galloca.h
214         * glib/gbacktrace.h
215         * glib/gwin32.c
216         * glibconfig.h.win32.in
217         * README.win32: More minor tweaks for Digital Mars
218         compiler. (#346808, Serhat Sevki Dincer)
219
220 2007-01-17  Tor Lillqvist  <tml@novell.com>
221
222         * glib-zip.in: DLLs are always installed in "bin" with current
223         libtool, drop unnecessary logic to check where they are. Include
224         also the COPYING file.
225
226 2007-01-17  Tor Lillqvist  <tml@novell.com>
227
228         * glib/galloca.h: Use <malloc.h> also with Digital Mars compiler
229         on Win32. (#346808, Serhat Sevki Dincer)
230
231 2007-01-16  Matthias Clasen  <mclasen@redhat.com>
232
233         * glib/gthread.h:
234         * glib/gthread.c:
235         * glib/glib.symbols: Revert an accidental ABI break by
236         moving gettime out of the GThreadFunctions struct and making
237         it a separate variable.  (#397139, Joe Marcus Clarke)
238
239         * gthread/*.c: Adapt.
240
241 2007-01-16  Tor Lillqvist  <tml@novell.com>
242
243         * glib/gthread.c (gettime): GetSystemTimeAsFileTime() returns 100s
244         of nanoseconds since 1601, so offset to Unix epoch (1970) and
245         multiply by 100 to get nanoseconds which is what we want.
246
247 2007-01-15  Tor Lillqvist  <tml@novell.com>
248
249         * glib/gmain.h (struct _GPollFD): Fix mistake in my last commit.
250
251 2005-01-15  Matthias Clasen  <mclasen@redhat.com>
252
253         * glib/giochannel.c:
254         * glib/gbookmarkfile.c: Remove redundant NULL-checks.
255         (#369668, Morten Welinder)
256
257 2005-01-15  Matthias Clasen  <mclasen@redhat.com>
258
259         * glib/gthread.c:
260         * gthread/gthread-posix.c: Correct the gettime calculations
261         once more.  (#395203, Chris Wilson)
262
263 2007-01-15  Tor Lillqvist  <tml@novell.com>
264
265         * glib/gmain.h (struct _GPollFD): Prepare for potential Win64
266         build: Use gint64 for the fd field on Win64, as we want to be able
267         to store a HANDLE in it. (#395422) (Other changes will surely also
268         be necessary when building on Win64, at least in giowin32.c.)
269
270 2007-01-15  Tor Lillqvist  <tml@novell.com>
271
272         * glib/gwin32.c (g_win32_getlocale): Simplify greatly. Instead of
273         hardcoding a large switch statement, just ask Windows for the
274         ISO639 and ISO3166 codes. Tack on @Latn or @Cyrl for those
275         languages which can alternatively be written in Latin or
276         Cyrillic. Fixes #395419.
277
278 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
279
280         * glib/gkeyfile.c: Rework the handling of invalid
281         keys/groups again. We are back to being liberal about
282         what we accept, and only reject things that would lead
283         to non-rereadable keyfiles.
284
285         * tests/keyfile-test.c: Adapt tests.
286
287 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
288
289         * glib/gutils.c (g_get_home_dir): Clarify docs.  (#394687,
290         Marc Brockschmidt)
291
292 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
293
294         * glib/gthread.c: Include windows.h and fix
295         include order. (#394258, Kazuki Iwamoto)
296
297 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
298
299         * configure.in: Make G_GNUC_INTERNAL a no-op for
300         gcc 2.95.    (#329031, David Schleef, Marc Brockschmidt)
301
302 2007-01-12  Matthias Clasen  <mclasen@redhat.com>
303
304         * gthread/gthread-posix.c:
305         * glib/gtimer.c:
306         * glib/gthread.c: Fix errors in the recently moved
307         time calculations.  (#395203, Chris Wilson)
308
309 2007-01-10  Matthias Clasen  <mclasen@redhat.com>
310
311         * configure.in: Actually link gthread against librt.
312         (#394641, Marco Pesenti Gritti)
313
314 2007-01-10  Matthias Clasen  <mclasen@redhat.com>
315
316         * glib/gkeyfile.c (g_key_file_is_key_name): Grr, allow '*' in keys,
317         too.  (#394262)
318
319 2007-01-09  Behdad Esfahbod  <behdad@gnome.org>
320
321         * glib/gutils.h: Use a more optimized g_bit_storage() when gcc is
322         available.  (#371670, Daniel Elstner)
323
324 2007-01-08  Matthias Clasen  <mclasen@redhat.com>
325
326         * gthread/gthread-posix.c (g_thread_impl_init): Don't
327         use _SC_MONOTONIC_CLOCK unless USE_CLOCK_GETTIME is
328         defined.  (#394150)
329
330 2007-01-07  Matthias Clasen  <mclasen@redhat.com>
331
332         Don't link glib against libpthread.  (#393812)
333
334         * configure.in: Link gthread against librt, not glib itself.
335
336         * glib/gthread.h:
337         * glib/gthread.c: Add a new thread function, gettime.
338
339         * glib/gtimer.c: Use gettime instead of directly working with
340         the various system interfaces.
341
342         * gthread/gthread-impl.c:
343         * gthread/gthread-posix.c:
344         * gthread/gthread-win32.c: Implement gettime.
345
346 2007-01-07  Matthias Clasen  <mclasen@redhat.com>
347
348         * m4macros/glib-2.0.m4: Use PKG_PROG_PKG_CONFIG.  (#392636,
349         Yevgen Muntyan)
350
351 2007-01-07  Tor Lillqvist  <tml@novell.com>
352
353         * glib/giowin32.c: Handle GIOChannels for file descriptors
354         connected to the console separately. This would typically be the
355         fd 0, 1, or 2 (if not redirected) in a console application. For
356         such fds we don't need a separate thread, as console HANDLEs are
357         waitable objects. (#359202, Michiel de Hoon)
358
359 2007-01-04  Behdad Esfahbod  <behdad@gnome.org>
360
361         * tests/bit-test.c (builtin_bit_nth_lsf1), (builtin_bit_nth_lsf2),
362         (builtin_bit_nth_msf): Fix tests on x86_64.
363
364 2007-01-03  Behdad Esfahbod  <behdad@gnome.org>
365
366         * glib/goption.c (_g_unichar_get_width), (_g_utf8_strwidth),
367         (calculate_max_length), (print_entry), (print_help): Take zerowidth
368         and double-width chars into consideration when computing width of a
369         string.  Also fix another bug in width computation. (#346955)
370
371         * glib/guniprop.c (g_unichar_iszerowidth): Fix typo.  It was not
372         working correctly.
373
374 2007-01-03  Behdad Esfahbod  <behdad@gnome.org>
375
376         * glib/glib.symbols:
377         * glib/gunicode.h:
378         * glib/guniprop.c: Add g_unichar_iszerowidth(). (#347645)
379
380 2007-01-03  Behdad Esfahbod  <behdad@gnome.org>
381
382         * glib/gutils.h: Fix bug in g_bit_nth_lsf (#371631) and use
383         __builtin_clzl for g_bit_storage if available (#371670).
384
385         * tests/Makefile.am:
386         * tests/bit-test.c: New test, to test g_bit_* operations against
387         naive and builtin implementations.
388
389 2007-01-02  Behdad Esfahbod  <behdad@gnome.org>
390
391         * configure.in: Avoid more warnings from running libtool --config.
392         (#391364)
393
394 2007-01-03  Michael Natterer  <mitch@imendio.com>
395
396         * removed all .cvsignore files. SVN doesn't need them.
397
398 2007-01-02  Emmanuele Bassi  <ebassi@gnome.org>
399
400         * glib/gbookmarkfile.c (expand_exec_line): Add support for
401         expanding the desktop entry spec variables %U (list of URIs)
402         and %F (list of filenames), so that using the command line
403         from the Exec and TryExec key of a desktop entry file works
404         as intended.
405
406 2007-01-02  Matthias Clasen  <mclasen@redhat.com>
407
408         * configure.in: Avoid warnings from running libtool --config.
409         (#391364, Loïc Minier)
410
411 2007-01-02  Matthias Clasen  <mclasen@redhat.com>
412
413         * glib/gbookmarkfile.c (g_bookmark_file_get_app_info):
414         Return an error if the uri is bad. (#391370, Maciej Piechotka)
415
416 2007-01-02  Matthias Clasen  <mclasen@redhat.com>
417
418         * glib/glib.symbols: Guard g_slice_debug_tree_statistics
419         by G_ENABLE_DEBUG.  (#390940, Kazuki Iwamoto)
420
421 2007-01-02  Michael Natterer  <mitch@imendio.com>
422
423         * configure.in
424         * Makefile.am: remove references to build/ until a proper decision
425         has been made what to do with it.
426
427 2007-01-01  Matthias Clasen  <mclasen@redhat.com>
428
429         * glib-gettextize.in: Silence autoconf warnings about
430         datarootdir.  (#391367, Loïc Minier)
431
432 2006-12-31  Matthias Clasen  <mclasen@redhat.com>
433
434         * glib/gslice.c: Fix some C99isms.  (#390913, Kazuki Iwamoto)
435
436 Fri Dec 29 13:28:07 2006  Tim Janik  <timj@imendio.com>
437
438         * glib/gslice.c: turned detection of too late g_thread_init() calls
439         into a warning. this is a temporary work-around for some head-room
440         to fix affected programs, memory corruption still occours regardless.
441
442 2006-12-29  Matthias Clasen  <mclasen@redhat.com>
443
444         * tests/gobject/Makefile.am:
445         * tests/gobject/dynamictype.c: New test for dynamic type
446         registration macros.
447
448 Thu Dec 28 21:14:45 2006  Tim Janik  <timj@imendio.com>
449
450         * glib/gslice.c: removed pthread-dependant debugging bits, the code
451         was already converted to GMutex. this obsoletes Tor's recent fixups.
452
453 2006-12-28  Tor Lillqvist  <tml@novell.com>
454
455         * glib/gutils.h (G_WIN32_DLLMAIN_FOR_DLL_NAME)
456         * glib/gutils.c (get_windows_directory_root): : Use only the wide
457         character API here, too.
458
459         * glib/gslice.c: Make it compile on Win32 without pthreads: Use a
460         Win32 critical section instead.
461
462         * glib/gmessages.c (g_logv): On Win32, if we get a fatal error
463         message while being debugged we break into the debugger with
464         G_BREAKPOINT(). Don't call abort() if the user is foolhardy enough
465         to continue after the breakpoint. The user presumably knows what
466         he is doing and deserves what he gets. (#376645, Andreas Köhler)
467
468 Thu Dec 28 12:50:31 2006  Tim Janik  <timj@imendio.com>
469
470         * glib/gslice.h, glib/gslice.c: implemented static debugging
471         hash-tree to validate slice adresses and sizes with G_SLICE=debug-blocks.
472         use abort() to exit in mem_error() to allow catching of these in gdb.
473         abort programs with a descriptive error message if g_thread_init() is
474         called after GSlice was in use. previously this just silently corrupted
475         the magazines.
476
477         * glib/ghash.c (struct _GHashNode): reordered fields to keep 8-byte
478         pointer alignment on 64bit systems and request smaller slice sizes
479         on 32bit systems.
480
481         * tests/slice-test.c: support '~' option flag to introduce slice
482         allocation/release corruption with a significant probability. this
483         allowes testing of G_SLICE=debug-blocks.
484
485 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
486
487         * glib/gconvert.[hc]:
488         * glib/gfileutils.c:
489         * glib/giochannel.c:
490         * glib/goption.c:
491         * glib/gspawn.c:
492         * glib/gunicollate.c:
493         * glib/gutils.c:
494         * tests/timeloop-basic.c:
495         Consistently use gsize rather than size_t.  (#333310,
496         Morten Welinder)
497
498 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
499
500         * configure.in: Use AC_CACHE_CHECK for the nl_langinfo
501         check.  (#304517, Lőrinczy Zsigmond)
502
503 2006-12-27  Tor Lillqvist  <tml@novell.com>
504
505         * glib/gwin32.h
506         * glib/gwin32.c (get_package_directory_from_module)
507         (g_win32_get_package_installation_directory)
508         (g_win32_get_package_installation_subdirectory): Add const to
509         gchar* arguments. (#384523, Yevgen Muntyan)
510
511 2006-12-27  Ryan Lortie  <desrt@desrt.ca>
512
513         * glib/ghash.c: cache the value of the hash function
514         in the GHashNode.  this speeds up resizing the hash
515         table and it also allows a slight optimisation on
516         lookups.  (#388332)
517
518 2006-12-27  Matthias Clasen  <mclasen@redhat.com>
519
520         * glib/gunicollate.c (g_utf8_collate_key): Don't modify
521         the current locale.  (#389300)
522
523 2006-12-26  Matthias Clasen  <mclasen@redhat.com>
524
525         * glib/gutf8.c: Add hints for locale-dependent interfaces.
526         * glib/gconvert.c: Add hints for locale-dependent interfaces.
527
528         * glib/gconvert.c (g_get_filename_charsets): Improve
529         formatting of docs.
530
531 2006-12-26  Behdad Esfahbod  <behdad@gnome.org>
532
533         * configure.in: Use libtool to determine shared library suffix.
534         (#357245)
535
536 2006-12-24  Matthias Clasen  <mclasen@redhat.com>
537
538         * tests/run-collate-tests.sh:
539         * tests/unicode-collate.c: Silently skip tests if
540         we can't set LC_COLLATE to en_US.  (#336438)
541
542 2006-12-19  Matthias Clasen  <mclasen@redhat.com>
543
544         * glib/gkeyfile.c (g_key_file_is_key_name): Accept
545         '/', '+' and '.' in key names, since gnome-vfs uses
546         mime types as keys in some cache.
547
548         * tests/keyfile-test.c: Tests for the above.
549
550 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
551
552         * configure.in: Fix the broken poll test.  (#387260,
553         Christian Persch)
554
555         * glib/gmain.c (child_watch_helper_thread): Readd a
556         return which was removed as dead code a while ago.
557         icc may consider it dead, but gcc doesn't like non-void
558         functions without a return...  (#354707)
559
560         * tests/Makefile.am: Try a different fix for bug 346373.
561
562 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
563
564         Fix bug 161288:
565
566         * configure.in: Check for wcslen.
567
568         * glib/gnulib/vasnprintf.c: Handle wcslen missing.
569
570 2006-12-18  Matthias Clasen  <mclasen@redhat.com>
571
572         * glib/gkeyfile.c: Accept '@' in locale names.
573
574         * glib/gkeyfile.c: Tighten up the check for allowed
575         key and group names.  (#343191, Tommi Komulainen)
576
577         * tests/keyfile-test.c: Test handling of key and group names.
578
579         * tests/Makefile.am: Don't use $RANDOM if the shell doesn't
580         have it.  (#346373, Thomas Klausner)
581
582 2006-12-17  Behdad Esfahbod  <behdad@gnome.org>
583
584         * glib/gstring.c: Improve docs about string functions taking a
585         length.  (#378727)
586
587 2006-12-17  Matthias Clasen  <mclasen@redhat.com>
588
589         * glib/gconvert.c:
590         * glib/gutf8.c (_g_charset_get_aliases): Put the G_GNUC_INTERNAL
591         where gcc doesn't complain about it.
592
593         * glib/ghash.c: Make ref_count an int to avoid compiler
594         warnings.
595
596         * configure.in: Use AC_LANG_SOURCE for the clock test.
597
598         * glib/gthreadpool.h:
599         * glib/gthreadpool.c (g_thread_pool_free): Don't use "wait"
600         as parameter name.  (#379207, Christian Biere)
601
602         * glib/gspawn.c: Refer to g_child_watch_add() in addition
603         to waitpid().
604
605         * glib/gstrfuncs.c (g_strndup, g_strnfill): Move docs
606         inline, and improve wording.  (#372598, Behdad Esfahbod)
607
608         * glib/gspawn.c: Add some pointers to the gdk_spawn_
609         variants.  (#338134, Federico Mena Quintero)
610
611         * configure.in: Make montonic clock test work again. Does
612         AC_COMPILE_IFELSE not get confdefs ? Also, move the clock
613         tests below the thread checks to fix #364663.
614
615         * tests/run-markup-tests.sh: Don't use diff -u  (#380801,
616         Marek Rouchal)
617
618         * glib/gspawn.c: Fix the recent fdwalk()-related changes
619         to not break mapping-test.  (#286838, Marco Barisione)
620
621         * glib/gstring.c (g_string_chunk_new): Don't shadow size.
622         (#386760, Kazuki IWAMOTO)
623
624 2006-12-16  Matthias Clasen  <mclasen@redhat.com>
625
626         * glib/gstring.c: Move more documentation inline.
627
628         * configure.in: Use AC_COMPILE_IFELSE for the monotonic
629         clock test.  (#362918, Han-Wen Nienhuys, Jeremy Lainé)
630
631         * glib/gstring.c: Move documentation inline.
632
633 2006-12-15  Matthias Clasen  <mclasen@redhat.com>
634
635         * glib/giochannel.h: Make ref_count a gint to avoid
636         compiler warnings.  (#321977, Andrew Paprocki)
637
638         * configure.in: On Solaris, set CFLAGS and LDFLAGS that
639         work both with Sun cc and gcc.  (#315061, Lazlo Peter)
640
641         * glib/gspawn.c: Undefine READ_OK to fix the build on
642         old versions of Darwin.  (#327800)
643
644         * glib/glib.symbols:
645         * glib/gstring.[hc] (g_string_chunk_clear): Add a function
646         for clearing a GStringChunk. (#364608, Matt Barnes)
647
648         * glib/guniprop.c (interval_compare): Avoid a compiler
649         warning.
650
651         * glib/gspawn.c (do_exec): Call set_cloexec() with
652         the right parameters.  (#386252, Guillaume Desmottes)
653
654 2006-12-15  Matthias Clasen  <mclasen@redhat.com>
655
656         Fix #357585, Padraig O'Briain.
657
658         * configure.in: Check for fdwalk.
659
660         * glib/gspawn.c (do_exec): Use fdwalk() to close all
661         file descriptors.
662
663         * glib/gspawn.c (fdwalk): Fallback implementation of
664         fdwalk.
665
666 2006-12-14  Matthias Clasen  <mclasen@redhat.com>
667
668         * glib/gconvert.c (open_converter): Don't use alloca
669         and avoid allocating memory for small keys that are
670         already cached.  (#172406, Morten Welinder)
671
672         * glib/gmain.c (g_child_watch_add_full): Improve the docs.
673         (#345569, Tim-Philipp Müller)
674
675         * glib/gkeyfile.c (g_key_file_add_group): If the group
676         is already there, make it current.  (#385910, Joe Halliwell)
677
678         * tests/keyfile-test.c: Add a test for duplicate groups/keys.
679
680 2006-12-13  Matthias Clasen  <mclasen@redhat.com>
681
682         * m4macros/glib-gettext.m4: Require AC_CANONICAL_HOST in
683         GLIB_WITH_NLS.  (#385132, Laszlo Peter)
684
685 2006-12-12  Matthias Clasen  <mclasen@redhat.com>
686
687         * configure.in: Add a check for broken poll on Mac OS X.
688
689         * glib/gmain.c: Use poll emulation on OS X.  (#302672, Toby Peterson,
690         patch by Dave Vasilevsky)
691
692 2006-12-11  Matthias Clasen  <mclasen@redhat.com>
693
694         * glib/gatomic.c: Don't use local numeric labels in
695         inline assembler on AIX.  (#316434, Hans Rosenfeld)
696
697         * glib/gunicode.h (g_utf8_next_char): Cast to const char *,
698         not char *.  (#138153, Nikolai Weibull)
699
700 Wed Nov 22 16:09:13 2006  Tim Janik  <timj@gtk.org>
701
702         * glib/gmacros.h: added G_GNUC_MAY_ALIAS, suggested by Mathias
703         Hasselmann in bug #335341, fixes bug #335853.
704
705 2006-11-15  Matthias Clasen  <mclasen@redhat.com>
706
707         * m4macros/glib-gettext.m4: Apply a patch from James
708         Henstridge for compatibility with automake 2.60 (#343825)
709
710 2006-11-14  Behdad Esfahbod  <behdad@gnome.org>
711
712         * sanity_check: Replace bash-specific == with sh-understood =.
713         Fixes bug #373864.
714
715 2006-11-05  Hans Breuer  <hans@breuer.org>
716
717         * glib/makefile.msc.in : glib/ version not the gobject/
718         one I accidentially commited. Fixes bug #371074.
719
720 2006-11-05  Tor Lillqvist  <tml@novell.com>
721
722         * makefile.mingw
723         * gmodule/makefile.mingw.in
724         * glib/makefile.mingw.in
725         * gobject/makefile.mingw.in
726         * gthread/makefile.mingw.in
727         * tests/makefile.mingw.in: Remove from CVS. Haven't been
728         maintained or distributed for long.
729
730 2006-10-26  Pascal Terjan  <pterjan@linuxfr.org>
731
732         * glib/libcharset/localcharset.c: Fix small leak on failed
733         realloc in _g_locale_get_charset_aliases (#338582)
734
735 2006-10-16  Behdad Esfahbod  <behdad@gnome.org>
736
737         * glib/gnulib/Makefile.am: Add $(GLIB_DEBUG_FLAGS).  (#362543,
738         Peter Kjellerstedt)
739
740 2006-10-15  Sebastian Wilhelmi  <seppi@seppi.de>
741
742         * tests/Makefile.am: Compile errorcheck-mutex-test with thread
743         libraries explicitly. (#74748, Javier Villavicencio)
744
745 2006-10-08  Matthias Clasen  <mclasen@redhat.com>
746
747         Add a way to obtain Unicode script information.  (#348348,
748         Marco Barisione)
749
750         * glib/glib.symbols:
751         * glib/gunicode.h: Add GUnicodeScript enumeration and
752         g_unichar_get_script.
753
754         * glib/guniprop.c: Implement g_unichar_get_script.
755
756         * glib/gscripttable.h: Generated private header containing
757         script tables.
758
759         * glib/gen-script-table.pl: Script to generate gscripttable.h.
760
761         * glib/Makefile.am: Update
762
763 2006-10-08  Matthias Clasen  <mclasen@redhat.com>
764
765         * tests/run-markup-tests.sh: Small portability fix.  (#347944,
766         Dan McMahill)
767
768 2006-10-07  Tor Lillqvist  <tml@novell.com>
769
770         * glib/gwin32.c (get_package_directory_from_module)
771         (g_win32_get_package_installation_directory): g_strdup the keys
772         that we are passed before adding them to the hash tables, to guard
773         against the caller freeing them. (#355955, Andreas Köhler)
774
775 2006-10-06  Matthias Clasen  <mclasen@redhat.com>
776
777         * glib/gtimer.c: Fix a typo.  (#359190)
778
779 2006-10-02  Behdad Esfahbod  <behdad@gnome.org>
780
781         * glib/Makefile.am:
782         * gobject/Makefile.am:
783         Include pltcheck.sh in EXTRA_DIST, and remove redefinition of TESTS.
784         (#358966)
785
786 2006-10-01  Matthias Clasen  <mclasen@redhat.com>
787
788         * glib/gtimer.c (g_usleep): Use nsleep to implement
789         g_usleep on AIX.  (#321974, Andrew Paprocki)
790
791         * configure.in: Check for nsleep
792
793         * glib/gmain.c: Fix typos in doc comments.
794         (#358421, Tom Tromey)
795
796 2006-09-30  Matthias Clasen  <mclasen@redhat.com>
797
798         * glib/pltcheck.sh: A script to check PLT entries.
799         * glib/Makefile.am (TESTS): Run pltcheck.sh
800
801         * glib/*: Fix includes to correct some issues with
802         PLT entries.  (#354522, Behdad Esfahbod)
803
804 2006-09-17  Hans Breuer  <hans@breuer.org>
805
806         * glib/makefile.msc.in gobject/makefile.msc.in : better filtering
807         of G_GNUC_* stuff when generating .def files. Now also works with
808         newer (less tolerant) linkers, e.g. from vc2500e
809
810 2006-09-10  Matthias Clasen  <mclasen@redhat.com>
811
812         * glib/gbacktrace.c: Assume string.h is available.
813         (#354523, Behdad Esfahbod)
814
815         * configure.in: Bump version to 2.13.0
816
817         * glib/glib.symbols:
818         * glib/gmain.[hc]: Add functions to create approximate
819         timeouts.  (#353942, Arjan van de Ven)
820
821         * glib/gstdio.c (g_rename): Initialize save_errno.
822         (#355206, Mike Edenfield)
823
824 2006-09-03  Matthias Clasen  <mclasen@redhat.com>
825
826         * glib/gerror.c: Allocate GErrors using the slice allocator.
827         (#354054, Matt Barnes)
828
829 2006-09-02  Matthias Clasen  <mclasen@redhat.com>
830
831         * glib/gtimer.c: Forgotten HAVE_CLOCK_GETTIME.
832
833 2006-09-02  Tor Lillqvist  <tml@novell.com>
834
835         * glib/gutils.c (g_get_any_init_do): Correct C99ism (mixed
836         declarations and code) in Win32 ifdef branch. (#353903, Mike
837         Edenfield)
838
839 2006-09-01  Abel Cheung  <abel@oaka.org>
840
841         * configure.in: Added 'dz' 'hy' to ALL_LINGUAS.
842
843 2006-09-01  Matthias Clasen  <mclasen@redhat.com>
844
845         * configure.in: Check for CLOCK_MONOTONIC.
846
847         * glib/gtimer.c: Only use clock_gettime if we
848         have a monotonic clock.
849
850 2006-08-31  Matthias Clasen  <mclasen@redhat.com>
851
852         * configure.in: Add missing includes to a few test
853         programs.  (#353580, Chris Wilson)
854
855 2006-08-30  Matthias Clasen  <mclasen@redhat.com>
856
857         * glib/gmarkup.c (g_markup_vprintf_escaped): Don't call
858         va_end on caller-provided va_args.  (#353584, Chris Wilson)
859
860 2006-08-29  Tor Lillqvist  <tml@novell.com>
861
862         Remove support for Windows 9x/ME, as will be done also in Pango
863         and GTK+. GTK+ hasn't worked on Win9x since 2.6 or 2.8 anyway, so
864         it's pretty pointless to keep the Win9x code in here either. If
865         somebody is interested, the code can always be found in older GLib
866         versions, and in CVS.
867
868         * glib/gdir.c
869         * glib/gfileutils.c
870         * glib/gspawn-win32-helper.c
871         * glib/gspawn-win32.c
872         * glib/gstdio.c
873         * glib/gutils.c
874         * glib/gwin32.c
875         * glib/gwin32.h: Remove the G_WIN32_IS_NT_BASED() and
876         G_WIN32_HAVE_WIDECHAR_API() tests and their false (Win9x)
877         branches, and any variables or static functions used only by the
878         Win9x branches.
879
880         * glib/gwin32.c (g_win32_windows_version_init): Call g_error() if
881         run on Win9x.
882
883 2006-08-27  Matthias Clasen  <mclasen@redhat.com>
884
885         * configure.in: Fix pthread compiler flag detection.
886
887         * glib/gtimer.c: Use Posix monotonic clocks instead of
888         gettimeofday when available.  (#336114, William Jon McCann)
889
890 2006-08-26  Matthias Clasen  <mclasen@redhat.com>
891
892         * glib/gutils.h:
893         * glib/gscanner.c: Fix some typos.  (#351741, Kjartan Maraas)
894
895 2006-08-25  Matthias Clasen  <mclasen@redhat.com>
896
897         * configure.in: Fix the pthread compiler flag detection.
898
899         * glib/gunicode.h:
900         * glib/gutf8.c (_g_utf8_make_valid): Rename make_valid_utf8
901         from gconvert.c, move it to gutf8.c, and export it privately.
902
903         * glib/gconvert.c (g_filename_display_name): Adjust callers.
904
905         * glib/gkeyfile.c: Use _g_utf8_make_valid() in a number of
906         places to ensure error messages are valid UTF-8.  (#351853,
907         Simon Budig)
908
909 2006-08-22  Matthias Clasen <mclasen@redhat.com>
910
911         * Branch for 2.12