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