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