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