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