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