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