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