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