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