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