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