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