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