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