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