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