Bump version.
[platform/upstream/glib.git] / ChangeLog
1 2004-12-02  Matthias Clasen  <mclasen@redhat.com>
2
3         * configure.in: Bump version.
4
5         * === Released 2.5.7 ===
6         
7 2004-12-02  Matthias Clasen  <mclasen@redhat.com>
8
9         * glib/glib.symbols: Protect the the various push/pop allocator
10         functions by #ifndef DISABLE_MEM_POOLS.  (#160215, Frederic Crozat)
11
12         * glib/makegalias.pl: Support #ifndef'ed sections.
13
14         * glib/gutils.c (g_get_system_config_dirs): Don't forget to 
15         initialize g_system_config_dirs.  (#160213, Frederic Crozat)
16
17 Wed Dec  1 17:04:37 2004  Manish Singh  <yosh@gimp.org>
18
19         * glib/gstring.h (g_string_append_c_inline): actually enable (and
20         fix up the length test).
21
22 2004-11-30  Tor Lillqvist  <tml@iki.fi>
23
24         * glib/Makefile.am (glib.def): gcc -E complains "linker input file
25         unused because linking not done" if told to preprocess the
26         glib.symbols file. Use '-' and redirection to pass it as standard
27         input instead.
28
29 2004-11-30  Matthias Clasen  <mclasen@redhat.com>
30
31         * NEWS: Updates
32
33 2004-11-30  Tor Lillqvist  <tml@iki.fi>
34
35         * glib/gspawn-win32-helper.c (WinMain): Also check errno to detect
36         true errors from spawn*(). (#157258, reported by Bruce Hochstetler)
37
38 2004-11-29  Matthias Clasen  <mclasen@redhat.com>
39
40         * glib/gmacros.h (G_GNUC_MALLOC): Define empty for gcc 2.95.
41
42         * glib/gmarkup.c (unescape_text_state_after_charref_hash): 
43         Avoid a strndup() here, noticed by Morten Welinder.
44
45 2004-11-29  Matthias Clasen  <mclasen@redhat.com>
46
47         * glib/gmarkup.c: Remove leftover noinline attributes.
48         (is_name_start_char, is_name_char): Avoid possible reads
49         beyond the end of g_ascii_table.
50
51         * glib/Makefile.am: Use the perl found by configure.  (#149826,
52         Morten Welinder)
53
54 Sun Nov 28 13:13:56 2004  Manish Singh  <yosh@gimp.org>
55
56         * glib/abicheck.sh: filter G_GNUC before PRIVATE so $ is still true.
57
58         * tests/utf8-validate.c: cast pointer math to gint for error print
59         message.
60
61 Sun Nov 28 12:07:29 2004  Manish Singh  <yosh@gimp.org>
62
63         * tests/utf8-validate.c: minor comment fix.
64
65 2004-11-28  Matthias Clasen  <mclasen@redhat.com>
66
67         * glib/gconvert.h:
68         * glib/gkeyfile.h:
69         * glib/gmem.h: 
70         * glib/gstrfuncs.h:
71         * glib/gunicode.h:
72         * glib/gutils.h: Mark functions with G_GNUC_MALLOC when appropriate.
73
74         * glib/glib.symbols: Add G_GNUC_MALLOC annotations.
75
76         * glib/gmacros.h (G_GNUC_MALLOC): Add a macro for 
77         __attribute__((__malloc__)).  (#61780)
78
79 2004-11-28  Tor Lillqvist  <tml@iki.fi>
80
81         * glib/gutils.[hc]
82         * glib/glib.symbols: [Win32] Make also g_get_user_name() and
83         g_get_real() name return UTF-8. As for the similar changes to fix
84         #101792, for DLL ABI stability we use preprocessor defines to get
85         the new UTF-8 versions, and keep the old names for versions
86         returning strings in the system codepage.
87
88         Fix g_get_tmp_dir() and g_get_home_dir() to actually return UTF-8
89         as was intended in the fix for bug #101792. (#159664, noticed by
90         Robert Ögren)
91
92 2004-11-28  Matthias Clasen  <mclasen@redhat.com>
93
94         * glib/gmarkup.c: Optimizations; don't scan the entire text
95         in find_current_text_end(), split unescape_text() into multiple
96         functions.  (#159001, Havoc Pennington)
97
98 2004-11-27  Matthias Clasen  <mclasen@redhat.com>
99
100         * glib/gspawn.c (g_spawn_async_with_pipes): Update the @flags
101         documentation with references to GChildWatch and 
102         g_spawn_close_pid().  (#136255, noted by Owen Taylor)
103
104 2004-11-26  Matthias Clasen  <mclasen@redhat.com>
105
106         * glib/gkeyfile.c (g_key_file_parse_value_as_string): 
107         Don't access invalid memory address if p wasn't 
108         increased.  (#159557, Frederic Crozat)
109
110 2004-11-25  Matthias Clasen  <mclasen@redhat.com>
111
112         * tests/strtod-test.c (main): Add a testcase for the previous fix.
113
114         * glib/gstrfuncs.c (g_ascii_strtod): Make it work again for floats
115         starting with a decimal point, like .75  (#156421, Hans Breuer)
116
117 Thu Nov 25 14:02:43 2004  Manish Singh  <yosh@gimp.org>
118
119         * glib/abicheck.sh: filter out G_GNUC stuff when doing the compare.
120
121         * glib/gmessages.c (g_assert_warning): call abort() at the end, so
122         gcc doesn't warn.
123
124 2004-11-25  Kjartan Maraas  <kmaraas@gnome.org>
125
126         * configure.in: Add «nb» to ALL_LINGUAS.
127
128 2004-11-24  Tor Lillqvist  <tml@iki.fi>
129
130         * glib/gwin32.c (g_win32_error_message,
131         get_package_directory_from_module,
132         g_win32_get_package_installation_directory,
133         g_win32_get_package_installation_subdirectory): Use wide character
134         API when available. Document that string parameters and return
135         values are in UTF-8.
136
137 2004-11-24  Matthias Clasen  <mclasen@redhat.com>
138
139         * glib/gutf8.c: Replace g_utf8_validate() with an
140         optimized version, and clarify the docs a bit.  (#159131,
141         Owen Taylor)
142
143         * tests/Makefile.am (test_programs): Add utf8-validate.
144
145         * tests/utf8-validate.c: Unit tests for g_utf8_validate().
146
147 2004-11-23  Matthias Clasen  <mclasen@redhat.com>
148
149         * glib/goption.h: Don't mark g_option_error_quark() as const,
150         to be consistent with all the other error_quark functions. 
151         (technically they are const, but since these are called only
152         in error paths, giving the compiler better optimization 
153         opportunities doesn't matter much)
154
155 2004-11-23  Matthias Clasen  <mclasen@redhat.com>
156
157         Fix a problem with the PLT reduction changes which caused the
158         internal aliases to lose all attributes.
159         
160         * glib/glib.symbols: Add attribute annotations.
161         * glib/makegalias.pl: Keep attribute annotations, but strip PRIVATE.
162         * glib/Makefile.am (glib.def): Strip attribute annotations, but keep 
163         PRIVATE.
164
165 2004-11-21  Hans Breuer  <hans@breuer.org>
166
167         * **/makefile.msc : updated
168
169 2004-11-16  Matthias Clasen  <mclasen@redhat.com>
170
171         * m4macros/glib-2.0.m4 (AM_PATH_GLIB_2_0): Support gmodule-no-export.
172
173         * Makefile.am (EXTRA_DIST): 
174         * configure.in (AC_CONFIG_FILES): Add gmodule-no-export-2.0.pc.in 
175
176         * gmodule-no-export-2.0.pc.in: Add a variants of gmodule-2.0.pc.in
177         which doesn't add -Wl,--export-dynamic, since Pango or GTK+ don't
178         need it.  (#125627, Owen Taylor)
179
180 2004-11-17  Matthias Clasen  <mclasen@redhat.com>
181
182         * glib/gkeyfile.c: Define S_ISREG() on windows, since it
183         is not present there.  (#158469, Kazuki IWAMOTO)
184
185 2004-11-15  Matthias Clasen  <mclasen@redhat.com>
186
187         * glib/gkeyfile.c (g_key_file_load_from_fd): Use S_ISREG(), since
188         S_IFMT and S_IFREG are apprarently missing on some systems (they 
189         are SUS, but not Posix).  (#158263)
190
191 2004-11-12  Matthias Clasen  <mclasen@redhat.com>
192
193         * configure.in: Bump version.
194
195         * === Released 2.5.6 ===
196         
197 2004-11-11  J. Ali Harlow  <ali@juiblex.co.uk>
198
199         * gobject/Makefile.am:
200         * glib/Makefile.am (gtk.def): Use embedded tab rather than '\t'
201         escape sequence. (#157951)
202
203 2004-11-10  Tor Lillqvist  <tml@iki.fi>
204
205         * glib/gconvert.c (g_get_filename_charsets): Fix typo in doc
206         comment.
207
208 2004-11-10  Matthias Clasen  <mclasen@redhat.com>
209
210         * NEWS: Updates
211
212 Mon Nov  8 10:45:50 2004  Manish Singh  <yosh@gimp.org>
213
214         * glib/gasyncqueue.c
215         * glib/ghook.c
216         * glib/giochannel.c: g_return_if_fail -> g_return_val_if_fail
217
218         * glib/gmain.c: Ditto, plus also make g_main_context_ref() actually
219         return the passed in pointer.
220
221 2004-11-08  Matthias Clasen  <mclasen@redhat.com>
222
223         * glib/gnode.h (enum GTraverseFlags): Add G_TRAVERSE_LEAVES
224         and G_TRAVERSE_NON_LEAVES as alternative names for 
225         G_TRAVERSE_LEAFS and G_TRAVERSE_NON_LEAFS, which are
226         grammatically brutal.  (#138853, Morten Welinder)
227         
228         * glib/gasyncqueue.[hc]:
229         * glib/ghook.[hc]: 
230         * glib/gmain.[hc]:
231         * glib/giochannel.[hc]: Make g_io_channel_ref(), 
232         g_main_context_ref(), g_hook_ref(), g_async_queue_ref()
233         return the passed in pointer. (#151663, Manish Singh)
234
235         * glib/gmain.c: Initialize child_watch_count to 1, so 
236         that we don't miss the very first child if it exits 
237         before we set up the child watch. In that case we had 
238         previously source->count == child_watch_count == 0, 
239         causing g_child_watch_check() to skip the waitpid() 
240         call.  (#154827, Gustavo Carneiro)
241
242         * glib/gmain.c (g_child_watch_source_init_single) 
243         (g_child_watch_source_init_multi_threaded): Use sigaction()
244         instead of signal().  (#136867, Jonas Jonsson, patch by
245         Archana Shah)
246
247 2004-11-07  Matthias Clasen  <mclasen@redhat.com>
248
249         * glib/gutils.c (g_get_any_init): Work around an bug
250         in Mac OS < 10.3.  (#156446, Dave MacLachlan)
251
252 2004-11-06  Tor Lillqvist  <tml@iki.fi>
253
254         * glibconfig.h.win32.in: Cosmetics: move the G_GNUC_INTERNAL
255         define to the same place where it is in a configure-generated
256         glibconfig.h
257
258 2004-11-05  Matthias Clasen  <mclasen@redhat.com>
259
260         * tests/strtod-test.c: Portability fixes and extra sanity
261         checks.  (#157453, Morten Welinder)
262
263 2004-11-04  Matthias Clasen  <mclasen@redhat.com>
264
265         * glib/gstrfuncs.c (g_ascii_strtod): Handle numbers like
266         1e1, nan, -infinity. Also try harder to preserve errno.  
267         (#156421, Morten Welinder)
268
269         * tests/strtod-test.c: Add testcases.
270
271 2004-11-04  Tor Lillqvist  <tml@iki.fi>
272
273         * glib/goption.h (enum GOptionFlags): Add G_OPTION_FLAG_REVERSE,
274         to reverse the sense of a G_OPTION_ARG_NONE (boolean) option.
275
276         * glib/goption.c (parse_arg): Obey the above flag.
277
278         * glib/gconvert.c (g_filename_display_name): Document that the
279         result is guaranteed to be non-NULL.
280
281         * glib/gfileutils.c (get_contents_stdio, get_contents_regfile,
282         get_contents_posix, get_contents_win32, g_file_open_tmp,
283         g_file_read_link): Use g_filename_display_name() for error
284         messages.
285         (g_mkstemp): Document that the template should be in the GLib file
286         name encoding.
287         (g_file_open_tmp): Ditto. Also document that the actual name
288         returned is also in the GLib file name encoding.
289
290 2004-11-02  Matthias Clasen  <mclasen@redhat.com>
291
292         * glib/gconvert.c (g_filename_display_name): New function 
293         to convert a filename to a UTF-8 string for display 
294         purposes.  (requested by Alex Larsson)
295         
296         * glib/gconvert.c (g_get_filename_charsets): New function 
297         to return the encodings which are tried when converting a 
298         filename to UTF-8. (#151465, François Gagné)
299
300 2004-11-02  Matthias Clasen  <mclasen@redhat.com>
301
302         * configure.in: Bump version
303
304         * === Released 2.5.5 ===
305
306         * NEWS: Updates
307
308 2004-11-02  Matthias Clasen  <mclasen@redhat.com>
309
310         * glib/glib.symbols: Add new functions.
311
312         * glib/gconvert.c: Fix doc comment for 
313         g_get_filename_charsets().
314
315         * glib/gconvert.c (g_filename_display_name): New function to
316         convert a filename to a UTF-8 string for display purposes.
317         (g_get_filename_charsets): New function to return the 
318         encodings which are tried when converting a filename to 
319         UTF-8.
320
321         * glib/goption.c (g_option_context_parse): Document that
322         this function may not return.
323
324 2004-11-01  Matthias Clasen  <mclasen@redhat.com>
325
326         * glib/gutils.h: Make gtkdoc-scan happy by removing spaces
327         between gchar and *.
328
329 2004-11-01  Tor Lillqvist  <tml@iki.fi>
330
331         * glib/gstdio.c (g_lstat): Implement correctly also on Unix
332         systems without lstat(). (#157038, Morten Welinder)
333
334 2004-11-01  Ray Strode <rstrode@redhat.com>
335
336         * glib/gkeyfile.c:
337         (g_key_file_get_locale_string): don't return an
338         error if we come across a value with invalid utf8 or
339         if we don't find a translated string. Just fallback
340         to the untranslated string (Mark McLoughlin, bug
341         #156790).
342         
343         * glib/gkeyfile.c:
344         (g_key_file_init), (g_key_file_clear): track the
345         actual start GKeyFileGroup rather than just its name
346         (g_key_file_parse_group): allow add_group() to
347         update the start group.
348         (g_key_file_remove_group_node): update the start
349         group if it gets removed (Mark McLoughlin, bug
350         #156790).
351
352         * glib/gkeyfile.c:
353         (g_key_file_parse_string_as_value): Don't escape
354         tabs and spaces in the middle of key values.
355
356 2004-11-01  Matthias Clasen  <mclasen@redhat.com>
357
358         * glib/gconvert.c:
359         * glib/gdebug.h
360         * glib/gutils.c
361         * gobject/gtype.c
362         * gthread/gthread-posix.c
363         * tests/timeloop-closure.c
364         * tests/timeloop.c: Fix sparse warnings.  (#157014, Kjartan Maraas)
365
366 2004-11-01  Matthias Clasen  <mclasen@redhat.com>
367
368         * glib/goption.c: Documentation updates.
369
370         Handle conflicts between options in different groups. (#156808)
371         
372         * glib/goption.c (g_option_context_parse): When a long option does not
373         match exactly, try to parse it as --group-option.
374         (g_option_context_add_group): Warn if a group name conflict occurs.
375
376         * glib/goption.c (print_help): Print out the effective options, ie 
377         don't print shadowed short options, and for long options print
378         --group-option instead of --option if appropriate.
379
380 2004-10-31  Matthias Clasen  <mclasen@redhat.com>
381
382         * glib/gwin32.c: Add bits of markup to g_win32_get_windows_version()
383         docs.
384
385 2004-10-31  Tor Lillqvist  <tml@iki.fi>
386
387         * glib/gwin32.c: Document g_win32_get_windows_version().
388
389         * glib/gstdio.[ch]: Add g_lstat().
390
391 2004-10-29  Matthias Clasen  <mclasen@redhat.com>
392
393         * glib/goption.c: Doc additions.
394
395         * glib/goption.c (parse_arg): Convert filenames to UTF-8 on
396         Windows.
397
398 2004-10-29  Hans Breuer  <hans@breuer.org>
399
400         * glibconfig.h */makefile.msc.in : updated [and finally fixed my
401         script to produce ready to go de-in(ed) files, w/o autotools]
402
403         * */*.rc.in : updated copyrights to 2004
404
405         * glib/gutils.c : some CSIDL_* defines lacking from older SDK;
406         use the same fallback mecahnism as on *NIX where ever applicable
407
408 2004-10-29  Matthias Clasen  <mclasen@redhat.com>
409
410         * tests/option-test.c: Add tests for the handling of
411         non-option arguments, "--" and G_OPTION_REMAINING.
412
413         * glib/goption.[hc]: #define G_OPTION_REMAINING, which is
414         a special long option name, which can be used for an option
415         in the main group which collects the non-option arguments.
416         It must be of type G_OPTION_ARG_STRING_ARRAY or 
417         G_OPTION_ARG_FILENAME_ARRAY. If the main group doesn't contain
418         an option whose name is G_OPTION_REMAINING, the non-option
419         arguments are left behind in argv as before.
420
421         * glib/goption.c: Add documentation.
422
423 2004-10-28  Matthias Clasen  <mclasen@redhat.com>
424
425         * glib/gmessages.h: Mark g_assert_warning as G_GNUC_NORETURN,
426         to avoid compiler warnings.  (#156767, Owen Taylor)
427
428 2004-10-29  Tor Lillqvist  <tml@iki.fi>
429
430         * glib/gstdio.c: Include also <direct.h> for mkdir() prototype
431         with MSVC. [156727, Kazuki IWAMOTO]
432
433         * glib/giochannel.h (g_io_channel_new_file): Redefine also
434         g_io_channel_new_file to the UTF-8 version on Win32. [156725,
435         Kazuki IWAMOTO)
436
437 2004-10-28  Ray Strode  <rstrode@redhat.com>
438
439         * glib/gkeyfile.c
440         (find_file_in_data_dirs): clean up a leak (#156652,
441         Morten Welinder)
442         (g_key_file_load_from_fd): propagate fstat() error
443         conditions and retry read on EAGAIN (#156647, Morten
444         Welinder).  Return error if file is NOT regular, not if
445         it is regular (bug introduced from last commited bug
446         fix). 
447         (g_key_file_load_from_data_dirs): allocate enough space
448         for the terminating NULL.
449
450 2004-10-28  Ray Strode  <rstrode@redhat.com>
451
452         * glib/gkeyfile.c: Don't use S_ISREG macro (#156728,
453         Kazuki IWAMOTO)
454
455 2004-10-28  Matthias Clasen  <mclasen@redhat.com>
456
457         * glib/gstdio.c: Include galias.h before glib.h (#156697,
458         Christophe Fergeau)
459
460         * glib/gkeyfile.c: Add a missing "Since: 2.6" comment.
461
462 2004-10-28  Tor Lillqvist  <tml@iki.fi>
463
464         * glib/gstdio.c: Include glib.h early to get G_OS_WIN32. Include
465         errno.h for errno.
466
467         * glib/gkeyfile.c: Include gstdio.h and use g_open().
468
469 2004-10-27  Ray Strode  <rstrode@redhat.com>
470
471         * glib/gkeyfile.c:
472          (g_key_file_load_from_fd), 
473          (g_key_file_load_from_file): 
474          Move file is regular check to load_from_file to use
475          fstat() instead of race prone g_file_test().  Don't
476          clear/init until needed. Change error messages to be
477          more consistent.
478          (g_key_file_load_from_data),
479          (g_key_file_load_from_data_dirs),
480          (g_key_file_parse_data),
481          (g_key_file_get_value),
482          (g_key_file_get_string),
483          (g_key_file_set_string),
484          (g_key_file_get_string_list),
485          (g_key_file_set_string_list),
486          (g_key_file_set_locale_string),
487          (g_key_file_get_locale_string),
488          (g_key_file_set_locale_string_list),
489          (g_key_file_get_boolean),
490          (g_key_file_set_boolean),
491          (g_key_file_get_boolean_list),
492          (g_key_file_set_boolean_list),
493          (g_key_file_get_integer),
494          (g_key_file_get_integer_list),
495          (g_key_file_set_integer_list),
496          (g_key_file_remove_key):
497          Add more g_return_*if_fail checks for public functions.
498
499 2004-10-27  Matthias Clasen  <mclasen@redhat.com>
500
501         * configure.in: Bump version.
502
503         * === Released 2.5.4 ===
504
505 2004-10-27  Matthias Clasen  <mclasen@redhat.com>
506
507         * glib/abicheck.sh: Strip Win32 specific defs file syntax.
508
509         * NEWS: Updates. 
510
511 2004-10-27  Matthias Clasen  <mclasen@redhat.com>
512
513         Introduce the idea of a filename encoding, which is 
514         *literally* the filename encoding on Unix. On Windows, 
515         use the Unicode name converted to UTF-8. (#101792,
516         Tor Lillqvist, Owen Taylor)
517         
518         * glib/gdir.[hc]: 
519         * glib/gconvert.[hc]: 
520         * glib/gfileutils.[hc]: 
521         * glib/gutils.[hc]: 
522         * glib/giowin32.c: On Windows, keep old ABI versions 
523         of GLib pathname api for DLL ABI stability. Use different 
524         names for the new-style UTF-8 versions. Hide this through 
525         a #define.
526
527         * glib/gstdio.[hc]: New files containing wrappers for
528         POSIX pathname api.
529
530         * glib/glib.symbols: Add new symbols.
531
532         * glib/makegalias.pl: Drop Win32 specific .def syntax,
533         include gstdio.h
534
535 2004-10-27  Matthias Clasen  <mclasen@redhat.com>
536
537         * glib/gkeyfile.c: Fix includes. (#156500, #156499, 
538         Kazuki IWAMOTO)
539
540         * glib/Makefile.am (galias.h): Fix srcdir != builddir 
541         builds.  (#156447, Thomas Fitzsimmons)
542
543 2004-10-26  Gora Mohanty  <gmohanty@cvs.gnome.org>
544
545         * configure.in: Added 'or' to ALL_LINGUAS.
546
547 2004-10-26  Matthias Clasen  <mclasen@redhat.com>
548
549         * glib/gkeyfile.c: Include galias.h.
550         
551         * glib/gkeyfile.c (g_key_file_parse_value_as_comment): 
552         Don't compare strings and chars.
553
554         * glib/glib.symbols: Add new symbols.
555
556         * glib/gkeyfile.c (g_key_file_new): Fix docs.
557
558         * glib/gkeyfile.h: Use the same parameter names as in
559         the implementation and the docs.
560
561         * glib/gwin32.c (g_win32_get_windows_version): Make this
562         function thread-safe in the GLib style.
563         * glib/gthreadinit.h: 
564         * glib/gwin32.c (_g_win32_thread_init): New function to
565         initialize the version.
566         * glib/gthread.c (g_thread_init_glib): Call 
567         _g_win32_thread_init() from here.
568
569 2004-10-26  Ray Strode  <rstrode@redhat.com>
570
571         * glib/gkeyfile.c: Add Matthias to "Written by" lines
572          (GKeyFileGroup): add field to hold comments about groups
573          (g_key_file_load_from_fd): return TRUE on success and
574          FALSE on failure.  Don't close fd's opened by other
575          parent function.  
576          (g_key_file_load_from_file): run FILE_IS_REGULAR test
577          before trying to open file, to save an fd from being
578          leaked (would probably be better to use fstat()). Close
579          fd when done with it. Return TRUE on success and FALSE
580          on failure.
581          (g_key_file_load_from_data): Return TRUE on success and
582          FALSE on failure.
583          (g_key_file_load_from_data_dirs): remove superfluous
584          const modifier.  Return TRUE on success and FALSE on
585          failure.  Stop trying to load files when one succeeds.
586          (g_key_file_parse_key_value_pair): don't validate input
587          for UTF-8 until users uses a getter that does
588          validation.  Don't leak copy of start_group_name.
589          (g_key_file_to_data): serialize new comment field for
590          groups.
591          (g_key_file_get_keys): Remove convenience code to let
592          NULL group mean start group.  Get rid of unneeded NULL
593          check before g_strdup.
594          (g_key_file_get_groups): Reverse groups list before
595          sending to user because it is maintained in backward
596          order internally. 
597          (g_key_file_get_value),
598          (g_key_file_set_value): add g_return checks at top of
599          public functions.
600          (g_key_file_get_string), 
601          (g_key_file_get_string_list): validate key value is UTF-8.
602          (g_key_file_[sg]et_*comment): new functions for
603          setting/getting comments
604          (g_key_file_remove_comment): new function to remove
605          comment block
606          (g_key_file_remove_key_value_pair_node): new function to
607          pull a key-value pair out of the list and free it.
608          (g_key_file_remove_group_node): call
609          g_key_file_remove_key_value_pair_node instead of 
610          freeing the list immediately to get better statistics
611          for approximate_size.
612          (g_key_file_remove_group): use lookup_group_node instead
613          of lookup_group to prevent a g_list_find call.
614          (g_key_file_add_key): report group also when unable to
615          find key.
616          (g_key_file_lookup_group_node): new function to make
617          getting the group node from a group name easier.
618          (g_key_file_lookup_group): use lookup_group_node under
619          the hood.
620          (g_key_file_lookup_key_value_pair_node): new function to
621          make getting the key-value pair from a group and key
622          name eaiser.
623          (g_key_file_parse_comment_as_value): new function to add '#' to the
624          beginning of every line.
625          (g_key_file_parse_value_as_comment): new function that
626          attempts to be the inverse of comment as value.
627
628 2004-10-26  Matthias Clasen  <mclasen@redhat.com>
629
630         * glib/gutils.c: 
631         * glib/gkeyfile.c: Don't include ctype.h needlessly.  (#156424,
632         Morten Welinder)
633
634         * tests/strtod-test.c (test_string): Improve error reporting.
635
636 Mon Oct 25 15:05:18 2004  Manish Singh  <yosh@gimp.org>
637
638         * autogen.sh: rm autom4te.cache, since it might interfere with
639         differing autoconf versions.
640
641         * tests/child-test.c: use GINT_TO_POINTER for g_child_watch_add
642         user data.
643
644         * glib/gfileutils.c: G_IS_DIR_SEPARATOR is defined in gutils.h now,
645         don't redefine it here.
646
647 2004-10-24  Matthias Clasen  <mclasen@redhat.com>
648
649         * glib/gkeyfile.c (g_key_file_remove_group_node): Don't
650         destroy the lookup map if it is NULL.
651
652 2004-10-23  Matthias Clasen  <mclasen@redhat.com>
653
654         * glib/gasyncqueue.c, glib/gatomic.c, glib/gdate.c, 
655         glib/giochannel.c, glib/gmain.c, glib/gspawn.c, 
656         glib/libcharset/localcharset.c: Apply a patch to fix
657         sparse warnings. (#154696, Kjartan Maraas)
658
659         * glib/gnulib/g-gnulib.h: Undef libc functions before defining
660         them, since they may also be macros.  (#155177, Andrea Campi)
661
662         * glib/gkeyfile.h: 
663         * glib/gkeyfile.c: Add a parser for desktop entries and
664         similar files with a .ini-like syntax.  (#139974, Ray Strode)
665
666         * glib/glib.h: Include gkeyfile.h
667
668         * glib/Makefile.am (libglib_2_0_la_SOURCES): Add gkeyfile.c
669         (glibsubinclude_HEADERS): Add gkeyfile.h
670
671         * glib/gutils.c (_g_compute_locale_variants): Make this 
672         non-static and use it in gkeyfile.c
673
674 2004-10-22  Matthias Clasen  <mclasen@redhat.com>
675
676         * tests/uri-test.c (run_uri_list_tests): Add some
677         uri list tests.c.
678
679         * glib/gconvert.h:
680         * glib/gconvert.c (g_uri_list_extract_uris): New function to
681         split a text/uri-list data into individual uris and strip comments.
682
683 2004-10-20  Matthias Clasen  <mclasen@redhat.com>
684
685         * glib/goption.c (get_change): Don't return the wrong 
686         change.  (#155856, Lucas Rocha)
687
688 2004-10-17  Matthias Clasen  <mclasen@redhat.com>
689
690         * glib/gutils.h (G_IS_DIR_SEPARATOR): 
691         * glib/gutils.c: Make public.  (#155589, Tim-Philipp Müller) 
692
693 2004-10-08  Matthias Clasen  <mclasen@redhat.com>
694
695         * glib/gmain.c (g_child_watch_add_full): 
696         * glib/gmain.c (g_child_watch_add): Document that GLib supports only
697         a single callback per pid. (#154828, Gustavo Carneiro)
698
699 2004-10-06  Matthias Clasen  <mclasen@redhat.com>
700
701         * glib/gfileutils.c: Fix some C99isms.  (#154676, Kjartan Maraas)
702
703 2004-10-05  Anders Carlsson  <andersca@gnome.org>
704
705         * glib/goption.c: (g_option_context_parse):
706         Add check for if argc is 0.
707         
708         * tests/option-test.c: (empty_test3), (main):
709         Add test case.
710         
711 2004-10-05  Matthias Clasen  <mclasen@redhat.com>
712
713         * NEWS: Update
714
715 2004-10-04  Matthias Clasen  <mclasen@redhat.com>
716
717         * glib/gmem.c (g_mem_set_vtable): Only set vtable_set if the
718         vtable is set.  (#154352, Philippe Blain)
719
720 2004-10-03  Anders Carlsson  <andersca@gnome.org>
721
722         * glib/goption.c: (parse_arg):
723         Set arg_data on filenames. (Discovered by Mats-Ola Persson).
724         
725         * tests/option-test.c: (arg_test3), (ignore_test3), (main):
726         Add test for filename args.
727         
728 2004-10-01  Tor Lillqvist  <tml@iki.fi>
729
730         * glib/goption.c (g_option_context_parse): Use
731         g_path_get_basename() instead of strrchr(), so that either slash
732         is accepted on Windows.
733
734 2004-09-30  Matthias Clasen  <mclasen@redhat.com>
735
736         * glib/gfileutils.c: Convert filenames to UTF-8 before 
737         putting them in GErrors.  (#154078, Morten Welinder)
738
739 2004-09-29  Matthias Clasen  <mclasen@redhat.com>
740
741         * glib/glib.symbols: Add g_assert_warning.
742
743         * glib/gmessages.h:
744         * glib/gmessages.c (g_assert_warning): Treat g_assert 
745         in the same way as g_return_if_fail and move the string 
746         constants into a helper function, which also takes 
747         care of removing the "IA__" prefix from internal aliases.
748
749         * glib/gmessages.h: Move the declaration of 
750         g_return_if_fail_warning() out of the ifdefs, so that
751         building with G_DISABLE_ASSERT works.
752
753 2004-09-27  Murray Cumming  <murrayc@murrayc.com>
754
755         * glib/goptions.[h|c], glib/glib.symbols: Rename 
756         g_context_option_error_quark() to g_option_error_quark(), because that 
757         is consistent with normal naming conventions, and what bindings expect.
758
759 .2004-09-26  Matthias Clasen  <mclasen@redhat.com>
760
761         Fix #153649, Hidetaka Iwai:
762         
763         * glib/goption.c (parse_long_option): Don't forget to set parsed
764         to TRUE when parsing a long ARG_NONE option. 
765         (free_changes_list): Fix the memory management for string
766         and filename arrays.
767
768 2004-09-22  Tor Lillqvist  <tml@iki.fi>
769
770         * glib/gmessages.c: [Win32] Don't ever open a console
771         window. (Which we used to do if standard output or standard error
772         are invalid, as they are for GUI applications.) These console
773         windows that open up unexpectedly have caused endless amounts of
774         confusion among end-users. (#141102, #151175)
775
776         Don't output the process id on Windows. Only output the program
777         name. If not set with g_set_prgname(), fetch the application
778         executable's name and use that.
779
780 Mon Sep 20 00:35:14 2004  Matthias Clasen  <maclas@gmx.de>
781
782         * glib/gutf8.c (g_utf16_to_utf8): Add a note explaining how to
783         convert UTF-16 byte stream of ambiguous endianness.  (#152954,
784         Linus Walleij)
785
786 Mon Sep 20 00:17:37 2004  Matthias Clasen  <maclas@gmx.de>
787
788         * tests/option-test.c (error_test3_post_parse): 
789         * tests/option-test.c (error_test2_post_parse): 
790         * tests/option-test.c (error_test1_post_parse): Don't call 
791         g_set_error () with a NULL format.  (#153103, Robert Ögren) 
792
793 Mon Sep 20 00:13:48 2004  Matthias Clasen  <maclas@gmx.de>
794
795         Make GOption remove long options completely. (#153113, Robert Ögren)
796
797         * glib/goption.c (parse_long_option): Fix a wrong index.
798
799         * tests/option-test.c (ignore_test3): Test handling of unknown
800         options some more.
801
802 Sun Sep 19 23:56:15 2004  Matthias Clasen  <maclas@gmx.de>
803
804         * glib/goption.c (g_option_context_parse): Call error_func
805         on error, not post_parse_func again.  (#153107, Robert Ögren)
806
807 Sun Sep 19 23:52:35 2004  Matthias Clasen  <maclas@gmx.de>
808
809         * glib/gmessages.c (mklevel_prefix): 
810         * glib/gmessages.c (g_logv): Fix the types of some variables
811         to be GLogLevelFlags instead of guint.  (#153042, Philippe Blain)
812
813 2004-09-18  Matthias Clasen  <mclasen@redhat.com>
814
815         * Version bump
816
817         * === Released 2.5.3 ===
818
819 2004-09-17  Matthias Clasen  <mclasen@redhat.com>
820
821         * NEWS: More updates.
822
823 Thu Sep 16 18:42:46 2004  Manish Singh  <yosh@gimp.org>
824
825         * glib/abicheck.sh: don't hardcode lengths for cut, instead split on
826         the third field.
827
828 Thu Sep 16 18:15:32 2004  Manish Singh  <yosh@gimp.org>
829
830         * glib/gstrfuncs.c (g_strncasecmp): Make it take a guint for number
831         of characters, instead of a gsize. Technically this is incorrect,
832         but this makes it match the prototype, and this is a deprecated
833         function anyway.
834
835 2004-09-16  Matthias Clasen  <mclasen@redhat.com>
836
837         * glib/Makefile.am (EXTRA_DIST): Add abicheck.sh
838
839 Thu Sep 16 02:03:15 2004  Matthias Clasen  <maclas@gmx.de>
840
841         Implement the same PLT reduction technique used in GTK+:
842         
843         * glib/glib.symbols: Master list of symbols
844
845         * glib/makegalias.pl: Perl script which creates galias.h
846
847         * glib/abicheck.sh: Compares actual exports against glib.symbols 
848
849         * glib/glib.def: Removed. This file is now generated from
850         glib.symbols
851         
852         * glib/Makefile.am: Add rules to generate galias.h and glib.def,
853         and add abicheck.sh to TESTS. Don't export _-prefixed symbols.
854         
855         * configure.in: Add --disable-visibility to suppress the 
856         use of ELF visibility attributes.
857
858         * glib/*.c: Include galias.h
859
860 2004-09-15  Tor Lillqvist  <tml@iki.fi>
861
862         * glib/gwin32.c (g_win32_error_message): Convert message to
863         UTF-8. Technically this breaks API, but the actual use cases in
864         gdk/win32 have assumed it is UTF-8 anyway. Fix
865         documentation. (#152618, Kazuki Iwamoto)
866
867         * glib/gwin32.h: Don't define ftruncate as a macro. Was never a
868         good idea, and it clashes with newest mingw headers, which have a
869         ftruncate implementation as an inline function. Thanks to Dominik R.
870
871         * glib/gwin32.c (g_win32_ftruncate): Simplify implementation, just
872         call _chsize() in the C library.
873
874 2004-09-15  Matthias Clasen  <mclasen@redhat.com>
875
876         * NEWS: Update.
877
878 2004-09-09  Matthias Clasen  <mclasen@redhat.com>
879
880         * glib/gmessages.c (g_return_if_fail_warning): Strip the
881         prefix "IA__" from function names, since that is what
882         GTK+ uses for the PLT-reduction aliases. 
883
884 Thu Sep  9 13:52:26 2004  Owen Taylor  <otaylor@redhat.com>
885
886         * glib/gmessages.c (g_return_if_fail_warning): 
887         Include implementation of g_return_if_fail_internal().
888
889 Thu Sep  9 10:37:41 2004  Owen Taylor  <otaylor@redhat.com>
890
891         * glib/gmessages.h (g_return_[val_]if_fail): Use
892         a helper function to reduce code size; omit FILE/LINE
893         when we have __PRETTY_FUNCTION__.
894
895 2004-09-09  Matthias Clasen  <mclasen@redhat.com>
896
897         * glib/gutils.c (g_get_home_dir): Remove a misleading comment.
898
899 Thu Sep  9 00:10:40 2004  Matthias Clasen  <maclas@gmx.de>
900
901         * glib/gstrfuncs.h: 
902         * glib/gstrfuncs.c (g_strv_length): Add a function to 
903         calculate the length of a NULL-terminated string 
904         array.  (#150455, Tim-Philipp Müller)
905
906         * tests/strfunc-test.c (main): Add a test for g_strv_length().
907
908 2004-09-08  Tor Lillqvist  <tml@iki.fi>
909
910         * glib/gutils.c (guess_category_value): On Win32, as last resort
911         call g_win32_getlocale() to get the current thread locale. There
912         usually aren't any POSIXish LANG or LC_* environment variables
913         present on Windows machines.
914
915         * glib/glib.def: Add g_get_language_names.
916
917 2004-09-07  Matthias Clasen  <mclasen@redhat.com>
918
919         * glib/gutils.h: 
920         * glib/gutils.c (g_get_language_names): Add a function to
921         return a list of applicable locale names.  (#95587, 
922         Hidetoshi Tajima)
923         (guess_category_value, compute_locale_variants):
924         (explode_locale, unalias_lang, read_aliases): Helper 
925         functions for g_get_language_names()
926
927         * tests/testglib.c (main): Show the results of 
928         g_get_language_names()
929
930 Sun Sep  5 01:46:11 2004  Matthias Clasen  <maclas@gmx.de>
931
932         * glib/glib.def: 
933         * glib/gmessages.h: 
934         * glib/gmessages.c (g_log_set_default_handler): New
935         function to install an alternate default log 
936         handler.  (#66387, Darin Adler)
937
938 2004-09-03  Tor Lillqvist  <tml@iki.fi>
939
940         * glib/glib.def: Update.
941
942 Wed Sep  1 20:22:39 2004  Matthias Clasen  <maclas@gmx.de>
943
944         * glib/gdate.h:
945         * glib/gdate.c (g_date_get_iso8601_week_of_year): Add
946         a function to calculate the ISO 8601 week number of 
947         a date.  (#92579, Niklas Lundell)
948
949 2004-09-01  Anders Carlsson  <andersca@gnome.org>
950
951         * glib/goption.c: (g_option_context_parse):
952         Set program name before calling the pre-parse hooks.
953         
954 2004-09-01  Anders Carlsson  <andersca@gnome.org>
955
956         * glib/goption.c: (g_option_context_free), (print_help),
957         (g_option_context_parse):
958         Handle option contexts without a main group.
959         
960         * tests/option-test.c: (empty_test2), (main):
961         Add test case for that.
962         
963 2004-08-30  Anders Carlsson  <andersca@gnome.org>
964
965         * glib/goption.c: (g_option_context_parse):
966         Set prgname to <unknown> if argc and argv are NULL.
967         
968         * tests/option-test.c: (empty_test1), (main):
969         Add test case for that.
970         
971 Sun Aug 29 23:58:38 2004  Matthias Clasen  <maclas@gmx.de>
972
973         * glib/ghash.c (g_hash_table_lookup): Point to 
974         g_hash_table_lookup_extended() for differentiation between
975         not-found and value-is-NULL.  (#150960, Morten Welinder)
976
977 2004-08-27  Matthias Clasen  <mclasen@redhat.com>
978
979         Fix #151193, Stepan Kasal:
980         
981         * glib/gfileutils.c (g_file_error_from_errno): 
982         * glib/gfileutils.h (enum GFileError): Add G_FILE_ERROR_NOSYS.
983
984 Fri Aug 27 00:45:41 2004  Matthias Clasen  <maclas@gmx.de>
985
986         * glib/goption.c (g_option_context_parse): Set the program name
987         from argv[0], noticed by Masatake YAMATO.
988
989 2004-08-26  Tor Lillqvist  <tml@iki.fi>
990
991         * tests/testglib.c (main): Test the new XDG basedir functions.
992
993 2004-08-25  Tor Lillqvist  <tml@iki.fi>
994
995         * glib/gwin32.c (g_win32_get_windows_version): New
996         function. Returns the Windows version code like GetVersion(),
997         except that one can pretend to be running on Win9x by setting the
998         G_WIN32_PRETEND_WIN9X environment variable. This is mainly for
999         debugging purposed.
1000
1001         * glib/gwin32.h: Declare it. Define macros G_WIN32_WINDOWS_IS_NT_BASED 
1002         and G_WIN32_HAVE_WIDECHAR_API to test Windows features at run-time.
1003
1004 2004-08-25  Matthias Clasen  <mclasen@redhat.com>
1005
1006         * configure.in: Post-release version bump.
1007
1008         * === Released 2.5.2 ===
1009
1010 Wed Aug 25 00:25:08 2004  Matthias Clasen  <maclas@gmx.de>
1011
1012         * NEWS: Update for 2.5.2
1013
1014 2004-08-25  Tor Lillqvist  <tml@iki.fi>
1015
1016         Win32 equivalences of the XDG folders
1017         
1018         * glib/gutils.c (get_special_folder): New function, calls
1019         SHGetSpecialFolderLocation() to get path to places like the My
1020         Documents folder.
1021         (g_get_any_init): Use CSIDL_PROFILE as HOME if not
1022         overridden by env vars.
1023         (g_get_user_data_dir): Use CSIDL_PERSONAL.
1024         (g_get_user_config_dir): Use CSIDL_APPDATA.
1025         (g_get_user_cache_dir): Use CSIDL_INTERNET_CACHE. Debatable...
1026         (g_get_system_data_dirs): Use CSIDL_COMMON_APPDATA and
1027         CSIDL_COMMON_DOCUMENTS.
1028         (g_get_system_config_dirs): Use CSIDL_COMMON_APPDATA.
1029
1030         * configure.in: Add -lole32 to G_LIBS_EXTRA for mingw.
1031
1032         * glib/glib.def: Add the new functions.
1033
1034 Mon Aug 23 16:16:35 2004  Manish Singh  <yosh@gimp.org>
1035
1036         * glib/goption.c (g_option_group_add_entries): remove unused
1037         variable.
1038
1039 Mon Aug 23 01:35:18 2004  Matthias Clasen  <maclas@gmx.de>
1040
1041         * glib/gutils.c (g_get_user_cache_dir): 
1042         * glib/gutils.c (g_get_user_config_dir): 
1043         * glib/gutils.c (g_get_user_data_dir): Don't call g_get_home_dir()
1044         while holding the g_utils_global lock, simply use g_home_dir. 
1045         (#150695, Jody Goldberg)
1046
1047 2004-08-21  Tor Lillqvist  <tml@iki.fi>
1048
1049         * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
1050         break out of its loop. Prevents a thread leak. (#147392, Peter
1051         Zelezny)
1052
1053         * glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
1054         return value from strxfrm(). For instance Microsoft's strxfrm()
1055         returns INT_MAX on errors. (#141124)
1056
1057 2004-08-19  Tor Lillqvist  <tml@iki.fi>
1058
1059         * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): Correct
1060         source and destination charset parameter order in g_convert()
1061         call. (#150394, possibly also #141124)
1062
1063 2004-08-20  Jon K Hellan  <hellan@acm.org>
1064
1065         * glib/goption.h: Remove trailing commas.
1066
1067 2004-08-17  Matthias Clasen  <mclasen@redhat.com>
1068
1069         * configure.in: Check for all four values of the
1070         visibility attribute; gcc 2.96 seems to miss 
1071         "default".  (#150379, Vincent Noel)
1072
1073 2004-08-16  Christian Rose  <menthos@menthos.com>
1074
1075         * configure.in: Added "bs" to ALL_LINGUAS.
1076
1077 2004-08-11  Ray Strode  <rstrode@redhat.com>
1078
1079         * docs/reference/glib/glib-sections.txt: 
1080         * glib/gutils.[ch] (g_get_user_data_dir),
1081         (g_get_user_config_dir), (g_get_user_cache_dir),
1082         (g_get_system_data_dirs), (g_get_system_config_dirs): 
1083         Add new XDG basedir API (bug 139973).
1084
1085 2004-08-10  Matthias Clasen  <mclasen@redhat.com>
1086
1087         * glib/gmacros.h: Remove G_GNUC_INTERNAL from here.
1088         * configure.in: Check whether the visibility attribute
1089         works and define G_HAVE_GNUC_VISIBILITY and 
1090         G_GNUC_INTERNAL in glibconfig.h correspondingly.
1091
1092 Mon Aug  9 17:37:56 2004  Matthias Clasen  <maclas@gmx.de>
1093
1094         * glib/gmacros.h (G_GNUC_INTERNAL): Define empty if gcc is too old.
1095
1096 2004-08-06  Hans Breuer  <hans@breuer.org>
1097
1098         * glib/makefile.msc.in glib/glib.def : updated
1099
1100         * glib/gutils.c : avoid 'inconsitent dll linkage' by not
1101         defining extern char** environ with msvc
1102
1103 2004-08-06  Matthias Clasen  <mclasen@redhat.com>
1104
1105         * m4macros/glib-gettext.m4: Require ngettext.  (#123847,
1106         Danilo Segan)
1107
1108 Thu Aug  5 20:53:00 2004  Ray Strode  <rstrode@redhat.com>
1109
1110         * glib/gutils.h (g_get_codeset): strdup result so caller
1111         doesn't free internally managed memory.
1112
1113 2004-08-04  Tor Lillqvist  <tml@iki.fi>
1114
1115         * glib/glib.def: Add glib_check_version.
1116
1117         * config.h.win32.in: Update to match what configure produces. Add
1118         the G_ATOMIC_*. Define G_ATOMIC_I486 when compiling with gcc. Move
1119         HAVE_INT64_AND_I64 to where the configure script puts it. Add
1120         HAVE_INTTYPES_H_WITH_UINTMAX. Define intmax_t as __int64 for MSVC.
1121
1122 Tue Aug  3 16:19:44 2004  Matthias Clasen  <maclas@gmx.de>
1123
1124         * glib/goption.c: Mark user visible strings for translation.
1125
1126 Tue Aug  3 15:50:55 2004  Matthias Clasen  <maclas@gmx.de>
1127
1128         * glib/goption.[hc]: Pedantically use g types throughout.
1129
1130 Tue Aug  3 14:58:20 2004  Matthias Clasen  <maclas@gmx.de>
1131
1132         * glib/gutils.h: 
1133         * glib/gutils.c (glib_check_version): New function to
1134         check the version of GLib at runtime.  (#149175, Michael Natterer)
1135
1136 2004-08-03  Anders Carlsson  <andersca@gnome.org>
1137
1138         * glib/goption.h:
1139         * glib/gtypes.h:
1140         Move GTranslateFunc to gtypes.h
1141         
1142 2004-08-02  Anders Carlsson  <andersca@gnome.org>
1143
1144         * glib/Makefile.am:
1145         * glib/glib.h:
1146         * glib/goption.c:
1147         * glib/goption.h:
1148         * tests/.cvsignore:
1149         * tests/Makefile.am:
1150         * tests/option-test.c: 
1151         Add GOption.
1152
1153 2004-08-02  Matthias Clasen  <mclasen@redhat.com>
1154
1155         * glib/gmacros.h: Add a G_GNUC_INTERNAL macro to mark function
1156         declarations as internal and avoid PLT indirections for 
1157         them.  (#145465, Arjan van de Ven)
1158
1159         * glib/gunicodeprivate.h: 
1160         * glib/gthreadinit.h: 
1161         * glib/gmessages.h: 
1162         * glib/gdebug.h: 
1163         * glib/gconvert.c: Use G_GNUC_INTERNAL for _g_charset_get_aliases(),
1164         _g_debug_init(), _g_log_fallback_handler(), _g_mem_thread_init(),
1165         _g_messages_thread_init(), _g_convert_thread_init(), 
1166         _g_rand_thread_init(), _g_main_thread_init(), _g_atomic_thread_init(),
1167         _g_mem_thread_private_init(), _g_messages_thread_private_init(),
1168         _g_utf8_normalize_wc() and _g_unichar_combining_class().
1169
1170         * glib/gatomic.c: Include gthreadinit.h here to see the declaration
1171         for _g_atomic_thread_init().
1172
1173 Sun Aug  1 13:19:18 2004  Manish Singh  <yosh@gimp.org>
1174
1175         * tests/uri-test.c: move newline printing from run_from_uri_tests()
1176         to run_roundtrip_tests().
1177
1178 2004-08-01 Matthias Clasen  <mclasen@redhat.com>
1179
1180         * Post-release version bump
1181
1182         * === Released 2.5.1 ===
1183
1184 Sat Jul 31 23:17:05 2004  Matthias Clasen  <maclas@gmx.de>
1185
1186         * NEWS: Updates.
1187
1188 Sat Jul 31 20:33:07 2004  Matthias Clasen  <maclas@gmx.de>
1189
1190         * tests/shell-test.c: Include a test involving consecutive
1191         backslashes followed by a non-escaped doublequote.
1192         
1193         * glib/gshell.c (tokenize_command_line): Count consecutive
1194         backslashes mod 2 to detect escaped doubleqotes.  (#127306)
1195
1196 2004-07-30  Matthias Clasen  <mclasen@redhat.com>
1197
1198         * glib/gconvert.c (g_unescape_uri_string): Don't validate
1199         for UTF-8 here.  (#148420, Robert Ögren)
1200
1201         * tests/uri-test.c (run_roundtrip_tests): Add tests for 
1202         roundtrip compatibility. Going from filename to uri and 
1203         back should always give you the same filename back. 
1204
1205 2004-07-28  Matthias Clasen  <mclasen@redhat.com>
1206
1207         * tests/markups/valid-{9,10,11}.gmarkup: 
1208         * tests/markups/fail-{37,38,39}.gmarkup: Tests for handling
1209         of whitespace inside tags.
1210
1211         * glib/gmarkup.c (enum GMarkupParseState): Add 
1212         STATE_AFTER_ATTRIBUTE_NAME and STATE_AFTER_CLOSE_TAG_NAME.
1213         (g_markup_parse_context_parse): Accept whitespace between
1214         attribute names, '=' and attribute values and between
1215         close tag name and '>'. (#148646, Hiroyuki Ikezoe)
1216
1217 Tue Jul 27 02:01:31 2004  Matthias Clasen  <maclas@gmx.de>
1218
1219         * glib/gstrfuncs.c (g_strsplit_set): s/g_strsplit/g_strsplit_set/
1220         as well.
1221
1222 Sat Jul 24 17:50:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1223
1224         * glib/gstrfuncs.c (g_strsplit_set):
1225         s/g_strtokenize/g_strsplit_set/ in docs.
1226
1227 Fri Jul 23 10:37:50 2004  Matthias Clasen  <maclas@gmx.de>
1228
1229         * tests/type-test.c (main): Actually test G_MAXSIZE with
1230         a gsize variable.
1231
1232 2004-07-21  Matthias Clasen  <mclasen@redhat.com>
1233
1234         Fix #132858, Sven Neumann, patch by James Henstridge:
1235         
1236         * glib-gettextize.in: modify so that mkinstalldirs will 
1237         get installed into auxdir.
1238
1239         * Makefile.am (gettext_SCRIPTS): install mkinstalldirs.
1240
1241 2004-07-21  Matthias Clasen  <mclasen@redhat.com>
1242
1243         Fix #147651, reported by Oliver Guntermann:
1244
1245         * glib/gprintfint.h (_g_vasprintf): Don't wrap vasprintf(),
1246         _g_gnulib_vasprintf() in a macro, since they behave 
1247         differently wrt. to memory allocation.
1248
1249         * glib/gprintf.c (g_vasprintf): Instead, differentiate 
1250         here between the three cases: system vasprintf(), 
1251         _g_gnulib_vasprintf(), no vasprintf().  
1252
1253 2004-07-20  Crispin Flowerday  <gnome@flowerday.cx>
1254
1255         * NEWS: Fix a typo in my name
1256
1257 Tue Jul 20 04:31:40 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1258
1259         * configure.in: Bump version number
1260
1261 Sun Jul 18 19:40:30 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1262
1263         * === Released 2.5.0 ===
1264
1265         * Makefile.am (BUILT_EXTRA_DIST): move gtk-doc.make here.
1266
1267 Sun Jul 18 01:40:28 2004  Matthias Clasen  <maclas@gmx.de>
1268
1269         * NEWS: Updates for 2.5.0
1270
1271 Mon Jul 12 00:02:40 2004  Matthias Clasen  <maclas@gmx.de>
1272
1273         * glib/gi18n-lib.h: Remove the ENABLE_NLS check here as well.
1274
1275 2004-07-09  Matthias Clasen  <mclasen@redhat.com>
1276
1277         * glib/gdir.c (g_dir_open): Convert filename to UTF-8 
1278         before using it in the error message.  (#146054, Federico
1279         Mena Quintero)
1280
1281 Thu Jul  8 00:54:32 2004  Matthias Clasen  <maclas@gmx.de>
1282
1283         * glib/gi18n.h: Remove the ENABLE_NLS check, since GLib can't
1284         be built without anyway.  (#135899, Murray Cumming)
1285
1286 Mon Jul  5 18:50:27 2004  Matthias Clasen  <maclas@gmx.de>
1287
1288         * glib/gmessages.h (g_debug): Complete the g_log() 
1289         family.  (#135730, Sven Herzberg)
1290
1291 Mon Jul  5 18:42:30 2004  Matthias Clasen  <maclas@gmx.de>
1292
1293         * glib/gnulib/Makefile.am (INCLUDES): Add top_srcdir to 
1294         make srcdir != . work.  (#145166, Kaz Sasayama)
1295
1296 Sun Jul  4 01:52:18 2004  Matthias Clasen  <maclas@gmx.de>
1297
1298         * configure.in: Use a small test library instead of
1299         libpthread.so for testing RTLD_GLOBAL brokenness.  (#139567,
1300         Julio M. Merino Vidal)
1301         
1302 2004-07-02  Sebastian Wilhelmi  <seppi@seppi.de>
1303
1304         * glib/gatomic.c: Rename __asm to __asm__ and __volatile to
1305         __volatile__ to make the file consistent. Spotted by Benoit
1306         Carpentier <gtkool_2kx@yahoo.fr>.
1307
1308 2004-07-01  John Ehresman  <jpe@wingide.com>
1309
1310         * glib/giowin32.c (g_io_channel_win32_init, g_io_win32_free)
1311         Initialize reset_send & reset_recv fields and don't close
1312         sockets unless they were created.  (#145153)
1313
1314 Fri Jun 11 22:56:46 2004  Matthias Clasen  <maclas@gmx.de>
1315
1316         * glib/gscanner.c (g_scanner_get_token_ll): Ignore a 
1317         missing newline at EOF for single line comments.  
1318         (#83674, Sven Neumann)
1319
1320 Thu Jun 10 23:38:02 2004  Matthias Clasen  <maclas@gmx.de>
1321
1322         * tests/printf-test.c (TEST): Actually set any_failed on 
1323         failure.  (#143552, Philippe Blain)
1324
1325 2004-06-09  Federico Mena Quintero  <federico@ximian.com>
1326
1327         * tests/uri-test.c (to_uri_tests): Fix expected results (ha ha)
1328         for URIs that *should* have been invalid, or viceversa.
1329         (from_uri_tests): Likewise.
1330
1331 2004-06-07  Federico Mena Quintero  <federico@ximian.com>
1332
1333         Fixes #140532.
1334
1335         * glib/gconvert.c (is_asciialphanum): Renamed from
1336         is_escalphanum(); ensures that this is an ASCII character.
1337         (is_asciiescalpha): Renamed from is_escalpha().
1338         (hostname_validate): Use the two functions above.
1339         (g_filename_to_uri): Don't convert the filename to UTF-8.
1340         (g_filename_from_uri): Don't convert the filename from UTF-8.
1341
1342 Mon Jun  7 22:25:24 2004  Matthias Clasen  <maclas@gmx.de>
1343
1344         * tests/run-markup-tests.sh: Default to silence, but support
1345         a -v argument to get the old output back. 
1346
1347 2004-06-06  Tor Lillqvist  <tml@iki.fi>
1348
1349         * glib/gutils.c (g_get_any_init): Check home for being
1350         NULL. (#143812, Ivan Wong)
1351
1352 Sun Jun  6 15:23:00 2004  Pawan Chitrakr  <pawan@nplinu.org>
1353
1354         * configure.in: Added "ne" (Nepali) in ALL_LINGUAS
1355
1356 Fri Jun  4 19:26:47 2004  Manish Singh  <yosh@gimp.org>
1357
1358         * glib/galloca.h: cpp #directives should always have the "#" in the
1359         first column of the the line. Do that for "#pragma alloca". Fixes
1360         bug #143744.
1361
1362 Wed Jun  2 00:57:16 2004  Matthias Clasen  <maclas@gmx.de>
1363
1364         * glib/gtypes.h: Use higher precision for the mathematical
1365         constants.  (#141941, Morten Welinder)
1366
1367 Tue Jun  1 22:01:40 2004  Matthias Clasen  <maclas@gmx.de>
1368
1369         * glib/gmarkup.c (advance_char): Fix an off-by-one error 
1370         in g_markup_parse_context_parse().  (#142794, Morten Welinder)
1371
1372 Sun May 16 23:23:29 2004  Matthias Clasen  <maclas@gmx.de>
1373
1374         Merged from 2.4:
1375         
1376         * glib/gcompletion.c (g_completion_add_items):
1377         (g_completion_remove_items): Remove unnecessary 
1378         checks.  (#142559, Morten Welinder)
1379
1380 2004-05-15  Tor Lillqvist  <tml@iki.fi>
1381
1382         * glib/gutils.c (g_get_any_init): [Win32] Only believe HOME if it
1383         is an absolute path and exists. (#138618)
1384
1385 2004-05-14  Tor Lillqvist  <tml@iki.fi>
1386
1387         * glib/gnulib/vasnprintf.c (vasnprintf): Handle empty digit string
1388         for precision correctly. (#142400)
1389
1390         For backward compatibility with the Trio implementation, make "ll"
1391         format modifer work on Win32, too. Change into "I64" before
1392         passing to the system printf. (#142433)
1393
1394         * tests/printf-test.c (main): Add tests for the above.
1395
1396 2004-05-10  Matthias Clasen  <mclasen@redhat.com>
1397
1398         Merge from 2.4:
1399         
1400         * glib/gmain.c (block_source, unblock_source): Make these 
1401         static.  (#142230, Morten Welinder)
1402
1403 2004-05-10  Tor Lillqvist  <tml@iki.fi>
1404
1405         * glib/giowin32.c (g_win32_print_gioflags): Remove two duplicated
1406         lines. Thanks to Benoît Carpentier.
1407
1408 Sun May  9 02:04:14 2004  Matthias Clasen  <maclas@gmx.de>
1409
1410         Merge from 2.4:
1411         
1412         * glib/guniprop.c (g_utf8_casefold): Avoid an unnecessary
1413         memleak.  (#141998, Nikolai Weibull)
1414
1415 Sat May  8 23:02:26 2004  Matthias Clasen  <maclas@gmx.de>
1416
1417         Merge from 2.4:
1418         
1419         * glib/gutils.h: Remove vestigial g_get_codeset().
1420         * glib/gutils.c (g_get_codeset): Call g_get_charset().
1421         (#137703, Owen Taylor)
1422
1423 2004-05-06  Matthias Clasen  <mclasen@redhat.com>
1424
1425         * configure.in: Bump version number to 2.5.0.
1426
1427 Wed May  5 23:35:44 2004  Matthias Clasen  <maclas@gmx.de>
1428
1429         * glib/gconvert.c (g_filename_from_uri): Quote the file
1430         scheme to mark it as untranslatable. String change.  
1431         (#133144, Danilo Segan)
1432
1433 2004-05-03  Pablo Saratxaga  <pablo@mandrakesoft.com>
1434
1435         * configure.in: Added Walloon (wa) to ALL_LINGUAS
1436
1437 Sun May  2 03:51:59 2004  Manish Singh  <yosh@gimp.org>
1438
1439         * glib/gtypes.h: check for __pentium4__ when deciding whether to
1440         use bswap for GUINT32_SWAP_LE_BE_IA32(). Fixes bug #141620.
1441
1442 2004-05-01  Hans Breuer  <hans@breuer.org>
1443
1444         * glib/gnulib/Makefile.am : added makefile.msc to EXTRA_DIST
1445         fixes #141563, Steve Lhomme
1446
1447 2004-04-30  Matthias Clasen  <mclasen@redhat.com>
1448
1449         * === Released 2.4.1 ===
1450
1451         * configure.in: Version 2.4.1, interface age 1. 
1452
1453         * NEWS: Updates
1454         
1455 2004-04-25  Tor Lillqvist  <tml@iki.fi>
1456
1457         * glib/gwin32.c (g_win32_get_package_installation_subdirectory):
1458         Plug memory leak. (#140770, John Ehresman)
1459
1460 2004-04-23  Matthias Clasen  <mclasen@redhat.com>
1461
1462         * glib/libcharset/localcharset.c (_g_locale_get_charset_aliases): 
1463         Reinstate LIBCHARSET_ALIAS_DIR support which got lost at some
1464         point.  (#139134, Piotr Klaban)
1465
1466         * glib/gconvert.c (open_converter): Don't call g_strerror() here, 
1467         since it can lead to infinite recursion.  (#139133, Piotr Klaban)
1468
1469 2004-04-22  Matthias Clasen  <mclasen@redhat.com>
1470
1471         * tests/testglib.c (main): Trivial warning fix.  (#140345)
1472
1473         * tests/queue-test.c (main): Add some tests for off-by-one errors.
1474
1475         * glib/gqueue.c (g_queue_pop_nth_link): Fix an off-by-one 
1476         error.  (#139703, Philippe Blain)
1477
1478         * tests/testglib.c (main): Add testcases for g_message() involving
1479         non-printable and unsafe characters.
1480
1481         * glib/gmessages.c (escape_string): Don't assume that
1482         string->str remains unchanged over g_string_insert() 
1483         calls.  (#139030, Christophe Saout)
1484
1485         * glib/gstrfuncs.c (g_ascii_strtod): Fix problems when a 
1486         locale-specific decimal separator directly follows a 
1487         number.  (#138424, Nickolay V. Shmyrev)
1488
1489         * tests/strtod-test.c (main): Add some more testcases.
1490
1491         * glib/gmain.c (g_main_context_query): Only set time_is_current to 
1492         FALSE if context->timeout is not zero.  (#137795, Christian Krause)
1493
1494 2004-04-21  Matthias Clasen  <mclasen@redhat.com>
1495
1496         * tests/printf-test.c (main): Comment out a nonessential testcase
1497         which fails on HP-UX.  (#136283, Jonas Jonsson)
1498
1499 2004-04-15  Matthias Clasen  <mclasen@redhat.com>
1500
1501         * tests/patterntest.c (main): Add tests for the empty pattern.
1502
1503         * glib/gpattern.c (g_pattern_spec_new): Don't read and write out 
1504         of bounds when the pattern is empty.  (#140032, Stanislav Brabec,
1505         Stefan Fent)
1506
1507 2004-04-10  Tor Lillqvist  <tml@iki.fi>
1508
1509         * glib/gwin32.c (g_win32_getlocale): Add new language and
1510         sublanguage codes, from GNU gettext. (#137958)
1511         
1512         * glib/giowin32.c
1513         * glib/gmain.c
1514         * glib/gstrfuncs.c
1515         * glib/gthread.c: Decorating variable definitions with
1516         __declspec(dllexport) causes problems on Cygwin build, and isn't
1517         really needed for a native Win32 build with mingw or MSVC, so
1518         remove. (#138402, Roger Leigh)
1519
1520         * glib/libcharset/localcharset.c: Use Win32-specific code also on
1521         Cygwin.
1522         * tests/uri-test.c: Don't assume that local filenames are in UTF-8
1523         on Cygwin, either. (#138412, Roger Leigh)
1524
1525 2004-04-08  Guntupalli Karunakar  <karunakar@freedomink.org>
1526
1527         * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
1528
1529 2004-04-03  Tor Lillqvist  <tml@iki.fi>
1530
1531         * configure.in: Remove AC_CYGWIN, obsolete. Don't let pthreads be
1532         found on Cygwin, they don't work. (#138401, Roger Leigh)
1533
1534 2004-03-31  Tor Lillqvist  <tml@iki.fi>
1535
1536         * tests/spawn-test-win32-gui.c: Minor Cygwin fix. (#138405, Roger
1537         Leigh)
1538
1539         * tests/unicode-encoding.c (process): Use UTF-16LE explicitly also
1540         on Cygwin. (#138423, Roger Leigh)
1541
1542 2004-03-30  Adam Weinberger  <adamw@gnome.org>
1543
1544         * configure.in: Added en_CA to ALL_LINGUAS.
1545
1546 2004-03-21  Tor Lillqvist  <tml@iki.fi>
1547
1548         * glib/gutils.c (g_path_get_dirname): Fix Win32 behaviour in some
1549         cases where a drive letter is present. For 'a:' or 'a:foo', return
1550         'a:.'. This is mostly just for consistency with the behaviour
1551         without a drive letter. But very important is to for 'a:\foo' or
1552         'a:\', return 'a:\', and not 'a:'. (Ditto for forward slashes
1553         instead of backslashes.) (#137316)
1554
1555         * tests/dirname-test.c (main): More complete testing on Win32. If
1556         a test fails, include expected and actual result in error message.
1557
1558 Fri Mar 19 15:21:09 2004  Owen Taylor  <otaylor@redhat.com>
1559
1560         * glib/gmain.c: Fix the accidental revert of the
1561         fixes from #112222 that happened when the GChildWatch
1562         code was added. (Caught by Christian Persch)
1563
1564 Fri Mar 19 11:07:06 2004  Owen Taylor  <otaylor@redhat.com>
1565
1566         * tests/atomic-test.c (main): Make computation
1567         of "biggest_pointer" vaguely more portable.
1568         (#137498, Jonas Jonsson)
1569
1570 2004-03-16  Tor Lillqvist  <tml@iki.fi>
1571
1572         * configure.in: Define HAVE_INT64_AND_I64 also in the mingw (gcc
1573         on Win32) case, where the 64-bit type is called long long, but the
1574         system printf/scanf format modifier for 64-bit integers is still I64.
1575
1576 2004-03-16  Gareth Owen  <gowen72@yahoo.com>
1577
1578         * configure.in: Added en_GB to ALL_LINGUAS
1579