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