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