1 2005-01-01 Tor Lillqvist <tml@iki.fi>
5 * glib/gutils.c: Make also g_getenv(), g_setenv(), g_unsetenv()
6 and g_find_program_in_path() take and return UTF-8 strings on
7 Win32. Implement DLL ABI backward compatility for them, too. Move
8 all the DLL ABI stability wrappers to the end of the file. Use
9 wide character API when available in inner_find_program_in_path().
11 * glib/gfileutils.c: With the UTF-8ness of g_getenv() above, just
12 use g_getenv() to get PATHEXT. (Yeah, it's probably overdoing it
13 to consider somebody actually having anything else than ASCII
16 2004-12-31 Tor Lillqvist <tml@iki.fi>
18 * glib/gfileutils.c (g_file_test): Rewrite the Win32 version to
19 use GetFileAttributes() instead of stat(). stat() is unreliable
20 for corner cases like '\\server\share' or '.\'. Part of fixing
21 #161797. When testing for executability, in addition to the fixed
22 set of executable file name extensions also check the PATHEXT
25 2004-12-30 Tor Lillqvist <tml@iki.fi>
27 * glib/gutils.c (g_get_current_dir): In the Win32 version, use
28 GetCurrentDirectory() directly for simpler buffer length
29 management. I don't trust getcwd() getting it right all the time.
31 2004-12-30 Matthias Clasen <mclasen@redhat.com>
33 * glib/gfileutils.c (g_file_test): Typo fix.
35 2004-12-30 Tor Lillqvist <tml@iki.fi>
37 * glib/gutils.c (g_path_skip_root): Require UNC paths to start
38 with exactly two slashes.
39 (g_get_current_dir): Use wide character API when available.
40 (g_path_get_dirname): Handle UNC paths better. Part of fix for
43 2004-12-27 Matthias Clasen <mclasen@redhat.com>
45 * configure.in: Add an OS_LINUX conditional.
47 * glib/Makefile.am (TESTS): Only check the ABI on
48 linux, since the shell script is not portable, and libtool
49 deficiencies may distort the ABI on other platforms. (#161741)
51 2004-12-21 Matthias Clasen <mclasen@redhat.com>
53 * glib/goption.c (print_entry): Don't show
54 the special G_OPTION_REMAINING entry. (#161934,
57 2004-12-20 Tor Lillqvist <tml@iki.fi>
59 * glib/gconvert.c (g_locale_to_utf8, g_filename_to_uri): Improve
62 2004-12-20 Matthias Clasen <mclasen@redhat.com>
64 * tests/option-test.c: Add some tests for '--'
67 * glib/goption.c (g_option_context_parse): Don't
68 strip '--' if it would be needed by a second option
71 * glib/gunicollate.c (g_utf8_collate): Make docs
72 more accurate. (#161683, Marcin Krzyzanowski)
74 2004-12-19 Matthias Clasen <mclasen@redhat.com>
76 * glib/goption.c (g_option_context_parse): Call
77 post-parse hooks also if argv is NULL. (#161668,
80 2004-12-16 Matthias Clasen <mclasen@redhat.com>
82 * configure.in: Bump version
84 * === Released 2.6.0 ===
86 2004-12-15 Alexander Larsson <alexl@redhat.com>
88 * glib/gconvert.c: (g_filename_display_basename):
90 Add g_return_val_if_fail.
93 Add g_filename_display_basename
95 2004-12-15 Alexander Larsson <alexl@redhat.com>
98 Add g_filename_display_basename.
100 2004-12-14 Matthias Clasen <mclasen@redhat.com>
106 * configure.in: Set version to 2.6.0
108 2004-12-13 Tor Lillqvist <tml@iki.fi>
113 * glib/gstdio.[ch]: Add g_rmdir().
115 2004-12-13 Matthias Clasen <mclasen@redhat.com>
119 2004-12-12 Tor Lillqvist <tml@iki.fi>
122 * glib/gconvert.[ch]: Implement Windows DLL ABI stability also for
123 g_filename_{to,from}_uri().
125 2004-12-11 Tor Lillqvist <tml@iki.fi>
127 * glib/gstdio.c (g_rename, g_unlink, g_remove): Add doc comments
128 about Windows restrictions on renaming and removing.
130 (g_remove): Mimic POSIX remove() on Windows: Try also to rmdir if
131 removal as a file fails. Document this.
133 * glib/gstdio.h: Clarify comment about file name encoding on
136 * glib/gspawn-win32.c: Fix #157255. Also some refactoring of this
137 still very ugly source file.
139 2004-12-09 Matthias Clasen <mclasen@redhat.com>
141 * glib/goption.c (print_help): Don't print help options
142 if the options of a specific group have been
143 requested. (#160645, Glynn Foster)
145 2004-12-07 Matthias Clasen <mclasen@redhat.com>
147 * glib/gutils.c (g_get_language_names): Update the returned
148 value after locale changes. (#160271, Christian Persch)
149 (_g_utils_thread_init): Initialize the language name cache
150 before going threaded.
152 * glib/gthread.c (g_thread_init_glib): Call _g_utils_thread_init().
154 * glib/gthreadinit.h: Add _g_utils_thread_init().
156 2004-12-06 Tor Lillqvist <tml@iki.fi>
158 * glib/giowin32.c (g_io_win32_finalize): Fix a write to freed
159 memory: Unlock the channel's mutex before unrefing the channel.
161 2004-12-06 Matthias Clasen <mclasen@redhat.com>
163 * configure.in: Remove a no longer needed hack for
164 libtool < 1.5.2. (#100697, Owen Taylor, Sebastian Wilhelmi)
166 2004-12-05 Tor Lillqvist <tml@iki.fi>
169 * glib/gwin32.[hc]: Implement DLL ABI stability also for
170 g_win32_get_package_installation_directory()) and
171 g_win32_get_package_installation_subdirectory().
173 * glib/Makefile.am (install-libtool-import-lib): Remove the DLL
174 binary compatibilty entries from the import library. They aren't
175 used by newly compiled code, so no need to have them in the import
176 library. (The "PRIVATE" keyword in the .def file is supposed to do
177 this, but not implemented in the GNU linker yet.)
179 2004-12-04 Matthias Clasen <mclasen@redhat.com>
181 * glib/gqueue.c (g_queue_link_index): Return -1 if queue is
182 NULL. (#159530, Philippe Blain)
184 2004-12-02 Matthias Clasen <mclasen@redhat.com>
186 * configure.in: Bump version.
188 * === Released 2.5.7 ===
190 2004-12-02 Matthias Clasen <mclasen@redhat.com>
192 * glib/glib.symbols: Protect the the various push/pop allocator
193 functions by #ifndef DISABLE_MEM_POOLS. (#160215, Frederic Crozat)
195 * glib/makegalias.pl: Support #ifndef'ed sections.
197 * glib/gutils.c (g_get_system_config_dirs): Don't forget to
198 initialize g_system_config_dirs. (#160213, Frederic Crozat)
200 Wed Dec 1 17:04:37 2004 Manish Singh <yosh@gimp.org>
202 * glib/gstring.h (g_string_append_c_inline): actually enable (and
203 fix up the length test).
205 2004-11-30 Tor Lillqvist <tml@iki.fi>
207 * glib/Makefile.am (glib.def): gcc -E complains "linker input file
208 unused because linking not done" if told to preprocess the
209 glib.symbols file. Use '-' and redirection to pass it as standard
212 2004-11-30 Matthias Clasen <mclasen@redhat.com>
216 2004-11-30 Tor Lillqvist <tml@iki.fi>
218 * glib/gspawn-win32-helper.c (WinMain): Also check errno to detect
219 true errors from spawn*(). (#157258, reported by Bruce Hochstetler)
221 2004-11-29 Matthias Clasen <mclasen@redhat.com>
223 * glib/gmacros.h (G_GNUC_MALLOC): Define empty for gcc 2.95.
225 * glib/gmarkup.c (unescape_text_state_after_charref_hash):
226 Avoid a strndup() here, noticed by Morten Welinder.
228 2004-11-29 Matthias Clasen <mclasen@redhat.com>
230 * glib/gmarkup.c: Remove leftover noinline attributes.
231 (is_name_start_char, is_name_char): Avoid possible reads
232 beyond the end of g_ascii_table.
234 * glib/Makefile.am: Use the perl found by configure. (#149826,
237 Sun Nov 28 13:13:56 2004 Manish Singh <yosh@gimp.org>
239 * glib/abicheck.sh: filter G_GNUC before PRIVATE so $ is still true.
241 * tests/utf8-validate.c: cast pointer math to gint for error print
244 Sun Nov 28 12:07:29 2004 Manish Singh <yosh@gimp.org>
246 * tests/utf8-validate.c: minor comment fix.
248 2004-11-28 Matthias Clasen <mclasen@redhat.com>
255 * glib/gutils.h: Mark functions with G_GNUC_MALLOC when appropriate.
257 * glib/glib.symbols: Add G_GNUC_MALLOC annotations.
259 * glib/gmacros.h (G_GNUC_MALLOC): Add a macro for
260 __attribute__((__malloc__)). (#61780)
262 2004-11-28 Tor Lillqvist <tml@iki.fi>
265 * glib/glib.symbols: [Win32] Make also g_get_user_name() and
266 g_get_real() name return UTF-8. As for the similar changes to fix
267 #101792, for DLL ABI stability we use preprocessor defines to get
268 the new UTF-8 versions, and keep the old names for versions
269 returning strings in the system codepage.
271 Fix g_get_tmp_dir() and g_get_home_dir() to actually return UTF-8
272 as was intended in the fix for bug #101792. (#159664, noticed by
275 2004-11-28 Matthias Clasen <mclasen@redhat.com>
277 * glib/gmarkup.c: Optimizations; don't scan the entire text
278 in find_current_text_end(), split unescape_text() into multiple
279 functions. (#159001, Havoc Pennington)
281 2004-11-27 Matthias Clasen <mclasen@redhat.com>
283 * glib/gspawn.c (g_spawn_async_with_pipes): Update the @flags
284 documentation with references to GChildWatch and
285 g_spawn_close_pid(). (#136255, noted by Owen Taylor)
287 2004-11-26 Matthias Clasen <mclasen@redhat.com>
289 * glib/gkeyfile.c (g_key_file_parse_value_as_string):
290 Don't access invalid memory address if p wasn't
291 increased. (#159557, Frederic Crozat)
293 2004-11-25 Matthias Clasen <mclasen@redhat.com>
295 * tests/strtod-test.c (main): Add a testcase for the previous fix.
297 * glib/gstrfuncs.c (g_ascii_strtod): Make it work again for floats
298 starting with a decimal point, like .75 (#156421, Hans Breuer)
300 Thu Nov 25 14:02:43 2004 Manish Singh <yosh@gimp.org>
302 * glib/abicheck.sh: filter out G_GNUC stuff when doing the compare.
304 * glib/gmessages.c (g_assert_warning): call abort() at the end, so
307 2004-11-25 Kjartan Maraas <kmaraas@gnome.org>
309 * configure.in: Add Ā«nbĀ» to ALL_LINGUAS.
311 2004-11-24 Tor Lillqvist <tml@iki.fi>
313 * glib/gwin32.c (g_win32_error_message,
314 get_package_directory_from_module,
315 g_win32_get_package_installation_directory,
316 g_win32_get_package_installation_subdirectory): Use wide character
317 API when available. Document that string parameters and return
320 2004-11-24 Matthias Clasen <mclasen@redhat.com>
322 * glib/gutf8.c: Replace g_utf8_validate() with an
323 optimized version, and clarify the docs a bit. (#159131,
326 * tests/Makefile.am (test_programs): Add utf8-validate.
328 * tests/utf8-validate.c: Unit tests for g_utf8_validate().
330 2004-11-23 Matthias Clasen <mclasen@redhat.com>
332 * glib/goption.h: Don't mark g_option_error_quark() as const,
333 to be consistent with all the other error_quark functions.
334 (technically they are const, but since these are called only
335 in error paths, giving the compiler better optimization
336 opportunities doesn't matter much)
338 2004-11-23 Matthias Clasen <mclasen@redhat.com>
340 Fix a problem with the PLT reduction changes which caused the
341 internal aliases to lose all attributes.
343 * glib/glib.symbols: Add attribute annotations.
344 * glib/makegalias.pl: Keep attribute annotations, but strip PRIVATE.
345 * glib/Makefile.am (glib.def): Strip attribute annotations, but keep
348 2004-11-21 Hans Breuer <hans@breuer.org>
350 * **/makefile.msc : updated
352 2004-11-16 Matthias Clasen <mclasen@redhat.com>
354 * m4macros/glib-2.0.m4 (AM_PATH_GLIB_2_0): Support gmodule-no-export.
356 * Makefile.am (EXTRA_DIST):
357 * configure.in (AC_CONFIG_FILES): Add gmodule-no-export-2.0.pc.in
359 * gmodule-no-export-2.0.pc.in: Add a variants of gmodule-2.0.pc.in
360 which doesn't add -Wl,--export-dynamic, since Pango or GTK+ don't
361 need it. (#125627, Owen Taylor)
363 2004-11-17 Matthias Clasen <mclasen@redhat.com>
365 * glib/gkeyfile.c: Define S_ISREG() on windows, since it
366 is not present there. (#158469, Kazuki IWAMOTO)
368 2004-11-15 Matthias Clasen <mclasen@redhat.com>
370 * glib/gkeyfile.c (g_key_file_load_from_fd): Use S_ISREG(), since
371 S_IFMT and S_IFREG are apprarently missing on some systems (they
372 are SUS, but not Posix). (#158263)
374 2004-11-12 Matthias Clasen <mclasen@redhat.com>
376 * configure.in: Bump version.
378 * === Released 2.5.6 ===
380 2004-11-11 J. Ali Harlow <ali@juiblex.co.uk>
382 * gobject/Makefile.am:
383 * glib/Makefile.am (gtk.def): Use embedded tab rather than '\t'
384 escape sequence. (#157951)
386 2004-11-10 Tor Lillqvist <tml@iki.fi>
388 * glib/gconvert.c (g_get_filename_charsets): Fix typo in doc
391 2004-11-10 Matthias Clasen <mclasen@redhat.com>
395 Mon Nov 8 10:45:50 2004 Manish Singh <yosh@gimp.org>
399 * glib/giochannel.c: g_return_if_fail -> g_return_val_if_fail
401 * glib/gmain.c: Ditto, plus also make g_main_context_ref() actually
402 return the passed in pointer.
404 2004-11-08 Matthias Clasen <mclasen@redhat.com>
406 * glib/gnode.h (enum GTraverseFlags): Add G_TRAVERSE_LEAVES
407 and G_TRAVERSE_NON_LEAVES as alternative names for
408 G_TRAVERSE_LEAFS and G_TRAVERSE_NON_LEAFS, which are
409 grammatically brutal. (#138853, Morten Welinder)
411 * glib/gasyncqueue.[hc]:
414 * glib/giochannel.[hc]: Make g_io_channel_ref(),
415 g_main_context_ref(), g_hook_ref(), g_async_queue_ref()
416 return the passed in pointer. (#151663, Manish Singh)
418 * glib/gmain.c: Initialize child_watch_count to 1, so
419 that we don't miss the very first child if it exits
420 before we set up the child watch. In that case we had
421 previously source->count == child_watch_count == 0,
422 causing g_child_watch_check() to skip the waitpid()
423 call. (#154827, Gustavo Carneiro)
425 * glib/gmain.c (g_child_watch_source_init_single)
426 (g_child_watch_source_init_multi_threaded): Use sigaction()
427 instead of signal(). (#136867, Jonas Jonsson, patch by
430 2004-11-07 Matthias Clasen <mclasen@redhat.com>
432 * glib/gutils.c (g_get_any_init): Work around an bug
433 in Mac OS < 10.3. (#156446, Dave MacLachlan)
435 2004-11-06 Tor Lillqvist <tml@iki.fi>
437 * glibconfig.h.win32.in: Cosmetics: move the G_GNUC_INTERNAL
438 define to the same place where it is in a configure-generated
441 2004-11-05 Matthias Clasen <mclasen@redhat.com>
443 * tests/strtod-test.c: Portability fixes and extra sanity
444 checks. (#157453, Morten Welinder)
446 2004-11-04 Matthias Clasen <mclasen@redhat.com>
448 * glib/gstrfuncs.c (g_ascii_strtod): Handle numbers like
449 1e1, nan, -infinity. Also try harder to preserve errno.
450 (#156421, Morten Welinder)
452 * tests/strtod-test.c: Add testcases.
454 2004-11-04 Tor Lillqvist <tml@iki.fi>
456 * glib/goption.h (enum GOptionFlags): Add G_OPTION_FLAG_REVERSE,
457 to reverse the sense of a G_OPTION_ARG_NONE (boolean) option.
459 * glib/goption.c (parse_arg): Obey the above flag.
461 * glib/gconvert.c (g_filename_display_name): Document that the
462 result is guaranteed to be non-NULL.
464 * glib/gfileutils.c (get_contents_stdio, get_contents_regfile,
465 get_contents_posix, get_contents_win32, g_file_open_tmp,
466 g_file_read_link): Use g_filename_display_name() for error
468 (g_mkstemp): Document that the template should be in the GLib file
470 (g_file_open_tmp): Ditto. Also document that the actual name
471 returned is also in the GLib file name encoding.
473 2004-11-02 Matthias Clasen <mclasen@redhat.com>
475 * glib/gconvert.c (g_filename_display_name): New function
476 to convert a filename to a UTF-8 string for display
477 purposes. (requested by Alex Larsson)
479 * glib/gconvert.c (g_get_filename_charsets): New function
480 to return the encodings which are tried when converting a
481 filename to UTF-8. (#151465, FranƧois GagnƩ)
483 2004-11-02 Matthias Clasen <mclasen@redhat.com>
485 * configure.in: Bump version
487 * === Released 2.5.5 ===
491 2004-11-02 Matthias Clasen <mclasen@redhat.com>
493 * glib/glib.symbols: Add new functions.
495 * glib/gconvert.c: Fix doc comment for
496 g_get_filename_charsets().
498 * glib/gconvert.c (g_filename_display_name): New function to
499 convert a filename to a UTF-8 string for display purposes.
500 (g_get_filename_charsets): New function to return the
501 encodings which are tried when converting a filename to
504 * glib/goption.c (g_option_context_parse): Document that
505 this function may not return.
507 2004-11-01 Matthias Clasen <mclasen@redhat.com>
509 * glib/gutils.h: Make gtkdoc-scan happy by removing spaces
512 2004-11-01 Tor Lillqvist <tml@iki.fi>
514 * glib/gstdio.c (g_lstat): Implement correctly also on Unix
515 systems without lstat(). (#157038, Morten Welinder)
517 2004-11-01 Ray Strode <rstrode@redhat.com>
520 (g_key_file_get_locale_string): don't return an
521 error if we come across a value with invalid utf8 or
522 if we don't find a translated string. Just fallback
523 to the untranslated string (Mark McLoughlin, bug
527 (g_key_file_init), (g_key_file_clear): track the
528 actual start GKeyFileGroup rather than just its name
529 (g_key_file_parse_group): allow add_group() to
530 update the start group.
531 (g_key_file_remove_group_node): update the start
532 group if it gets removed (Mark McLoughlin, bug
536 (g_key_file_parse_string_as_value): Don't escape
537 tabs and spaces in the middle of key values.
539 2004-11-01 Matthias Clasen <mclasen@redhat.com>
545 * gthread/gthread-posix.c
546 * tests/timeloop-closure.c
547 * tests/timeloop.c: Fix sparse warnings. (#157014, Kjartan Maraas)
549 2004-11-01 Matthias Clasen <mclasen@redhat.com>
551 * glib/goption.c: Documentation updates.
553 Handle conflicts between options in different groups. (#156808)
555 * glib/goption.c (g_option_context_parse): When a long option does not
556 match exactly, try to parse it as --group-option.
557 (g_option_context_add_group): Warn if a group name conflict occurs.
559 * glib/goption.c (print_help): Print out the effective options, ie
560 don't print shadowed short options, and for long options print
561 --group-option instead of --option if appropriate.
563 2004-10-31 Matthias Clasen <mclasen@redhat.com>
565 * glib/gwin32.c: Add bits of markup to g_win32_get_windows_version()
568 2004-10-31 Tor Lillqvist <tml@iki.fi>
570 * glib/gwin32.c: Document g_win32_get_windows_version().
572 * glib/gstdio.[ch]: Add g_lstat().
574 2004-10-29 Matthias Clasen <mclasen@redhat.com>
576 * glib/goption.c: Doc additions.
578 * glib/goption.c (parse_arg): Convert filenames to UTF-8 on
581 2004-10-29 Hans Breuer <hans@breuer.org>
583 * glibconfig.h */makefile.msc.in : updated [and finally fixed my
584 script to produce ready to go de-in(ed) files, w/o autotools]
586 * */*.rc.in : updated copyrights to 2004
588 * glib/gutils.c : some CSIDL_* defines lacking from older SDK;
589 use the same fallback mecahnism as on *NIX where ever applicable
591 2004-10-29 Matthias Clasen <mclasen@redhat.com>
593 * tests/option-test.c: Add tests for the handling of
594 non-option arguments, "--" and G_OPTION_REMAINING.
596 * glib/goption.[hc]: #define G_OPTION_REMAINING, which is
597 a special long option name, which can be used for an option
598 in the main group which collects the non-option arguments.
599 It must be of type G_OPTION_ARG_STRING_ARRAY or
600 G_OPTION_ARG_FILENAME_ARRAY. If the main group doesn't contain
601 an option whose name is G_OPTION_REMAINING, the non-option
602 arguments are left behind in argv as before.
604 * glib/goption.c: Add documentation.
606 2004-10-28 Matthias Clasen <mclasen@redhat.com>
608 * glib/gmessages.h: Mark g_assert_warning as G_GNUC_NORETURN,
609 to avoid compiler warnings. (#156767, Owen Taylor)
611 2004-10-29 Tor Lillqvist <tml@iki.fi>
613 * glib/gstdio.c: Include also <direct.h> for mkdir() prototype
614 with MSVC. [156727, Kazuki IWAMOTO]
616 * glib/giochannel.h (g_io_channel_new_file): Redefine also
617 g_io_channel_new_file to the UTF-8 version on Win32. [156725,
620 2004-10-28 Ray Strode <rstrode@redhat.com>
623 (find_file_in_data_dirs): clean up a leak (#156652,
625 (g_key_file_load_from_fd): propagate fstat() error
626 conditions and retry read on EAGAIN (#156647, Morten
627 Welinder). Return error if file is NOT regular, not if
628 it is regular (bug introduced from last commited bug
630 (g_key_file_load_from_data_dirs): allocate enough space
631 for the terminating NULL.
633 2004-10-28 Ray Strode <rstrode@redhat.com>
635 * glib/gkeyfile.c: Don't use S_ISREG macro (#156728,
638 2004-10-28 Matthias Clasen <mclasen@redhat.com>
640 * glib/gstdio.c: Include galias.h before glib.h (#156697,
643 * glib/gkeyfile.c: Add a missing "Since: 2.6" comment.
645 2004-10-28 Tor Lillqvist <tml@iki.fi>
647 * glib/gstdio.c: Include glib.h early to get G_OS_WIN32. Include
650 * glib/gkeyfile.c: Include gstdio.h and use g_open().
652 2004-10-27 Ray Strode <rstrode@redhat.com>
655 (g_key_file_load_from_fd),
656 (g_key_file_load_from_file):
657 Move file is regular check to load_from_file to use
658 fstat() instead of race prone g_file_test(). Don't
659 clear/init until needed. Change error messages to be
661 (g_key_file_load_from_data),
662 (g_key_file_load_from_data_dirs),
663 (g_key_file_parse_data),
664 (g_key_file_get_value),
665 (g_key_file_get_string),
666 (g_key_file_set_string),
667 (g_key_file_get_string_list),
668 (g_key_file_set_string_list),
669 (g_key_file_set_locale_string),
670 (g_key_file_get_locale_string),
671 (g_key_file_set_locale_string_list),
672 (g_key_file_get_boolean),
673 (g_key_file_set_boolean),
674 (g_key_file_get_boolean_list),
675 (g_key_file_set_boolean_list),
676 (g_key_file_get_integer),
677 (g_key_file_get_integer_list),
678 (g_key_file_set_integer_list),
679 (g_key_file_remove_key):
680 Add more g_return_*if_fail checks for public functions.
682 2004-10-27 Matthias Clasen <mclasen@redhat.com>
684 * configure.in: Bump version.
686 * === Released 2.5.4 ===
688 2004-10-27 Matthias Clasen <mclasen@redhat.com>
690 * glib/abicheck.sh: Strip Win32 specific defs file syntax.
694 2004-10-27 Matthias Clasen <mclasen@redhat.com>
696 Introduce the idea of a filename encoding, which is
697 *literally* the filename encoding on Unix. On Windows,
698 use the Unicode name converted to UTF-8. (#101792,
699 Tor Lillqvist, Owen Taylor)
702 * glib/gconvert.[hc]:
703 * glib/gfileutils.[hc]:
705 * glib/giowin32.c: On Windows, keep old ABI versions
706 of GLib pathname api for DLL ABI stability. Use different
707 names for the new-style UTF-8 versions. Hide this through
710 * glib/gstdio.[hc]: New files containing wrappers for
713 * glib/glib.symbols: Add new symbols.
715 * glib/makegalias.pl: Drop Win32 specific .def syntax,
718 2004-10-27 Matthias Clasen <mclasen@redhat.com>
720 * glib/gkeyfile.c: Fix includes. (#156500, #156499,
723 * glib/Makefile.am (galias.h): Fix srcdir != builddir
724 builds. (#156447, Thomas Fitzsimmons)
726 2004-10-26 Gora Mohanty <gmohanty@cvs.gnome.org>
728 * configure.in: Added 'or' to ALL_LINGUAS.
730 2004-10-26 Matthias Clasen <mclasen@redhat.com>
732 * glib/gkeyfile.c: Include galias.h.
734 * glib/gkeyfile.c (g_key_file_parse_value_as_comment):
735 Don't compare strings and chars.
737 * glib/glib.symbols: Add new symbols.
739 * glib/gkeyfile.c (g_key_file_new): Fix docs.
741 * glib/gkeyfile.h: Use the same parameter names as in
742 the implementation and the docs.
744 * glib/gwin32.c (g_win32_get_windows_version): Make this
745 function thread-safe in the GLib style.
746 * glib/gthreadinit.h:
747 * glib/gwin32.c (_g_win32_thread_init): New function to
748 initialize the version.
749 * glib/gthread.c (g_thread_init_glib): Call
750 _g_win32_thread_init() from here.
752 2004-10-26 Ray Strode <rstrode@redhat.com>
754 * glib/gkeyfile.c: Add Matthias to "Written by" lines
755 (GKeyFileGroup): add field to hold comments about groups
756 (g_key_file_load_from_fd): return TRUE on success and
757 FALSE on failure. Don't close fd's opened by other
759 (g_key_file_load_from_file): run FILE_IS_REGULAR test
760 before trying to open file, to save an fd from being
761 leaked (would probably be better to use fstat()). Close
762 fd when done with it. Return TRUE on success and FALSE
764 (g_key_file_load_from_data): Return TRUE on success and
766 (g_key_file_load_from_data_dirs): remove superfluous
767 const modifier. Return TRUE on success and FALSE on
768 failure. Stop trying to load files when one succeeds.
769 (g_key_file_parse_key_value_pair): don't validate input
770 for UTF-8 until users uses a getter that does
771 validation. Don't leak copy of start_group_name.
772 (g_key_file_to_data): serialize new comment field for
774 (g_key_file_get_keys): Remove convenience code to let
775 NULL group mean start group. Get rid of unneeded NULL
776 check before g_strdup.
777 (g_key_file_get_groups): Reverse groups list before
778 sending to user because it is maintained in backward
780 (g_key_file_get_value),
781 (g_key_file_set_value): add g_return checks at top of
783 (g_key_file_get_string),
784 (g_key_file_get_string_list): validate key value is UTF-8.
785 (g_key_file_[sg]et_*comment): new functions for
786 setting/getting comments
787 (g_key_file_remove_comment): new function to remove
789 (g_key_file_remove_key_value_pair_node): new function to
790 pull a key-value pair out of the list and free it.
791 (g_key_file_remove_group_node): call
792 g_key_file_remove_key_value_pair_node instead of
793 freeing the list immediately to get better statistics
794 for approximate_size.
795 (g_key_file_remove_group): use lookup_group_node instead
796 of lookup_group to prevent a g_list_find call.
797 (g_key_file_add_key): report group also when unable to
799 (g_key_file_lookup_group_node): new function to make
800 getting the group node from a group name easier.
801 (g_key_file_lookup_group): use lookup_group_node under
803 (g_key_file_lookup_key_value_pair_node): new function to
804 make getting the key-value pair from a group and key
806 (g_key_file_parse_comment_as_value): new function to add '#' to the
807 beginning of every line.
808 (g_key_file_parse_value_as_comment): new function that
809 attempts to be the inverse of comment as value.
811 2004-10-26 Matthias Clasen <mclasen@redhat.com>
814 * glib/gkeyfile.c: Don't include ctype.h needlessly. (#156424,
817 * tests/strtod-test.c (test_string): Improve error reporting.
819 Mon Oct 25 15:05:18 2004 Manish Singh <yosh@gimp.org>
821 * autogen.sh: rm autom4te.cache, since it might interfere with
822 differing autoconf versions.
824 * tests/child-test.c: use GINT_TO_POINTER for g_child_watch_add
827 * glib/gfileutils.c: G_IS_DIR_SEPARATOR is defined in gutils.h now,
828 don't redefine it here.
830 2004-10-24 Matthias Clasen <mclasen@redhat.com>
832 * glib/gkeyfile.c (g_key_file_remove_group_node): Don't
833 destroy the lookup map if it is NULL.
835 2004-10-23 Matthias Clasen <mclasen@redhat.com>
837 * glib/gasyncqueue.c, glib/gatomic.c, glib/gdate.c,
838 glib/giochannel.c, glib/gmain.c, glib/gspawn.c,
839 glib/libcharset/localcharset.c: Apply a patch to fix
840 sparse warnings. (#154696, Kjartan Maraas)
842 * glib/gnulib/g-gnulib.h: Undef libc functions before defining
843 them, since they may also be macros. (#155177, Andrea Campi)
846 * glib/gkeyfile.c: Add a parser for desktop entries and
847 similar files with a .ini-like syntax. (#139974, Ray Strode)
849 * glib/glib.h: Include gkeyfile.h
851 * glib/Makefile.am (libglib_2_0_la_SOURCES): Add gkeyfile.c
852 (glibsubinclude_HEADERS): Add gkeyfile.h
854 * glib/gutils.c (_g_compute_locale_variants): Make this
855 non-static and use it in gkeyfile.c
857 2004-10-22 Matthias Clasen <mclasen@redhat.com>
859 * tests/uri-test.c (run_uri_list_tests): Add some
863 * glib/gconvert.c (g_uri_list_extract_uris): New function to
864 split a text/uri-list data into individual uris and strip comments.
866 2004-10-20 Matthias Clasen <mclasen@redhat.com>
868 * glib/goption.c (get_change): Don't return the wrong
869 change. (#155856, Lucas Rocha)
871 2004-10-17 Matthias Clasen <mclasen@redhat.com>
873 * glib/gutils.h (G_IS_DIR_SEPARATOR):
874 * glib/gutils.c: Make public. (#155589, Tim-Philipp MĆ¼ller)
876 2004-10-08 Matthias Clasen <mclasen@redhat.com>
878 * glib/gmain.c (g_child_watch_add_full):
879 * glib/gmain.c (g_child_watch_add): Document that GLib supports only
880 a single callback per pid. (#154828, Gustavo Carneiro)
882 2004-10-06 Matthias Clasen <mclasen@redhat.com>
884 * glib/gfileutils.c: Fix some C99isms. (#154676, Kjartan Maraas)
886 2004-10-05 Anders Carlsson <andersca@gnome.org>
888 * glib/goption.c: (g_option_context_parse):
889 Add check for if argc is 0.
891 * tests/option-test.c: (empty_test3), (main):
894 2004-10-05 Matthias Clasen <mclasen@redhat.com>
898 2004-10-04 Matthias Clasen <mclasen@redhat.com>
900 * glib/gmem.c (g_mem_set_vtable): Only set vtable_set if the
901 vtable is set. (#154352, Philippe Blain)
903 2004-10-03 Anders Carlsson <andersca@gnome.org>
905 * glib/goption.c: (parse_arg):
906 Set arg_data on filenames. (Discovered by Mats-Ola Persson).
908 * tests/option-test.c: (arg_test3), (ignore_test3), (main):
909 Add test for filename args.
911 2004-10-01 Tor Lillqvist <tml@iki.fi>
913 * glib/goption.c (g_option_context_parse): Use
914 g_path_get_basename() instead of strrchr(), so that either slash
915 is accepted on Windows.
917 2004-09-30 Matthias Clasen <mclasen@redhat.com>
919 * glib/gfileutils.c: Convert filenames to UTF-8 before
920 putting them in GErrors. (#154078, Morten Welinder)
922 2004-09-29 Matthias Clasen <mclasen@redhat.com>
924 * glib/glib.symbols: Add g_assert_warning.
927 * glib/gmessages.c (g_assert_warning): Treat g_assert
928 in the same way as g_return_if_fail and move the string
929 constants into a helper function, which also takes
930 care of removing the "IA__" prefix from internal aliases.
932 * glib/gmessages.h: Move the declaration of
933 g_return_if_fail_warning() out of the ifdefs, so that
934 building with G_DISABLE_ASSERT works.
936 2004-09-27 Murray Cumming <murrayc@murrayc.com>
938 * glib/goptions.[h|c], glib/glib.symbols: Rename
939 g_context_option_error_quark() to g_option_error_quark(), because that
940 is consistent with normal naming conventions, and what bindings expect.
942 .2004-09-26 Matthias Clasen <mclasen@redhat.com>
944 Fix #153649, Hidetaka Iwai:
946 * glib/goption.c (parse_long_option): Don't forget to set parsed
947 to TRUE when parsing a long ARG_NONE option.
948 (free_changes_list): Fix the memory management for string
951 2004-09-22 Tor Lillqvist <tml@iki.fi>
953 * glib/gmessages.c: [Win32] Don't ever open a console
954 window. (Which we used to do if standard output or standard error
955 are invalid, as they are for GUI applications.) These console
956 windows that open up unexpectedly have caused endless amounts of
957 confusion among end-users. (#141102, #151175)
959 Don't output the process id on Windows. Only output the program
960 name. If not set with g_set_prgname(), fetch the application
961 executable's name and use that.
963 Mon Sep 20 00:35:14 2004 Matthias Clasen <maclas@gmx.de>
965 * glib/gutf8.c (g_utf16_to_utf8): Add a note explaining how to
966 convert UTF-16 byte stream of ambiguous endianness. (#152954,
969 Mon Sep 20 00:17:37 2004 Matthias Clasen <maclas@gmx.de>
971 * tests/option-test.c (error_test3_post_parse):
972 * tests/option-test.c (error_test2_post_parse):
973 * tests/option-test.c (error_test1_post_parse): Don't call
974 g_set_error () with a NULL format. (#153103, Robert Ćgren)
976 Mon Sep 20 00:13:48 2004 Matthias Clasen <maclas@gmx.de>
978 Make GOption remove long options completely. (#153113, Robert Ćgren)
980 * glib/goption.c (parse_long_option): Fix a wrong index.
982 * tests/option-test.c (ignore_test3): Test handling of unknown
985 Sun Sep 19 23:56:15 2004 Matthias Clasen <maclas@gmx.de>
987 * glib/goption.c (g_option_context_parse): Call error_func
988 on error, not post_parse_func again. (#153107, Robert Ćgren)
990 Sun Sep 19 23:52:35 2004 Matthias Clasen <maclas@gmx.de>
992 * glib/gmessages.c (mklevel_prefix):
993 * glib/gmessages.c (g_logv): Fix the types of some variables
994 to be GLogLevelFlags instead of guint. (#153042, Philippe Blain)
996 2004-09-18 Matthias Clasen <mclasen@redhat.com>
1000 * === Released 2.5.3 ===
1002 2004-09-17 Matthias Clasen <mclasen@redhat.com>
1004 * NEWS: More updates.
1006 Thu Sep 16 18:42:46 2004 Manish Singh <yosh@gimp.org>
1008 * glib/abicheck.sh: don't hardcode lengths for cut, instead split on
1011 Thu Sep 16 18:15:32 2004 Manish Singh <yosh@gimp.org>
1013 * glib/gstrfuncs.c (g_strncasecmp): Make it take a guint for number
1014 of characters, instead of a gsize. Technically this is incorrect,
1015 but this makes it match the prototype, and this is a deprecated
1018 2004-09-16 Matthias Clasen <mclasen@redhat.com>
1020 * glib/Makefile.am (EXTRA_DIST): Add abicheck.sh
1022 Thu Sep 16 02:03:15 2004 Matthias Clasen <maclas@gmx.de>
1024 Implement the same PLT reduction technique used in GTK+:
1026 * glib/glib.symbols: Master list of symbols
1028 * glib/makegalias.pl: Perl script which creates galias.h
1030 * glib/abicheck.sh: Compares actual exports against glib.symbols
1032 * glib/glib.def: Removed. This file is now generated from
1035 * glib/Makefile.am: Add rules to generate galias.h and glib.def,
1036 and add abicheck.sh to TESTS. Don't export _-prefixed symbols.
1038 * configure.in: Add --disable-visibility to suppress the
1039 use of ELF visibility attributes.
1041 * glib/*.c: Include galias.h
1043 2004-09-15 Tor Lillqvist <tml@iki.fi>
1045 * glib/gwin32.c (g_win32_error_message): Convert message to
1046 UTF-8. Technically this breaks API, but the actual use cases in
1047 gdk/win32 have assumed it is UTF-8 anyway. Fix
1048 documentation. (#152618, Kazuki Iwamoto)
1050 * glib/gwin32.h: Don't define ftruncate as a macro. Was never a
1051 good idea, and it clashes with newest mingw headers, which have a
1052 ftruncate implementation as an inline function. Thanks to Dominik R.
1054 * glib/gwin32.c (g_win32_ftruncate): Simplify implementation, just
1055 call _chsize() in the C library.
1057 2004-09-15 Matthias Clasen <mclasen@redhat.com>
1061 2004-09-09 Matthias Clasen <mclasen@redhat.com>
1063 * glib/gmessages.c (g_return_if_fail_warning): Strip the
1064 prefix "IA__" from function names, since that is what
1065 GTK+ uses for the PLT-reduction aliases.
1067 Thu Sep 9 13:52:26 2004 Owen Taylor <otaylor@redhat.com>
1069 * glib/gmessages.c (g_return_if_fail_warning):
1070 Include implementation of g_return_if_fail_internal().
1072 Thu Sep 9 10:37:41 2004 Owen Taylor <otaylor@redhat.com>
1074 * glib/gmessages.h (g_return_[val_]if_fail): Use
1075 a helper function to reduce code size; omit FILE/LINE
1076 when we have __PRETTY_FUNCTION__.
1078 2004-09-09 Matthias Clasen <mclasen@redhat.com>
1080 * glib/gutils.c (g_get_home_dir): Remove a misleading comment.
1082 Thu Sep 9 00:10:40 2004 Matthias Clasen <maclas@gmx.de>
1085 * glib/gstrfuncs.c (g_strv_length): Add a function to
1086 calculate the length of a NULL-terminated string
1087 array. (#150455, Tim-Philipp MĆ¼ller)
1089 * tests/strfunc-test.c (main): Add a test for g_strv_length().
1091 2004-09-08 Tor Lillqvist <tml@iki.fi>
1093 * glib/gutils.c (guess_category_value): On Win32, as last resort
1094 call g_win32_getlocale() to get the current thread locale. There
1095 usually aren't any POSIXish LANG or LC_* environment variables
1096 present on Windows machines.
1098 * glib/glib.def: Add g_get_language_names.
1100 2004-09-07 Matthias Clasen <mclasen@redhat.com>
1103 * glib/gutils.c (g_get_language_names): Add a function to
1104 return a list of applicable locale names. (#95587,
1106 (guess_category_value, compute_locale_variants):
1107 (explode_locale, unalias_lang, read_aliases): Helper
1108 functions for g_get_language_names()
1110 * tests/testglib.c (main): Show the results of
1111 g_get_language_names()
1113 Sun Sep 5 01:46:11 2004 Matthias Clasen <maclas@gmx.de>
1117 * glib/gmessages.c (g_log_set_default_handler): New
1118 function to install an alternate default log
1119 handler. (#66387, Darin Adler)
1121 2004-09-03 Tor Lillqvist <tml@iki.fi>
1123 * glib/glib.def: Update.
1125 Wed Sep 1 20:22:39 2004 Matthias Clasen <maclas@gmx.de>
1128 * glib/gdate.c (g_date_get_iso8601_week_of_year): Add
1129 a function to calculate the ISO 8601 week number of
1130 a date. (#92579, Niklas Lundell)
1132 2004-09-01 Anders Carlsson <andersca@gnome.org>
1134 * glib/goption.c: (g_option_context_parse):
1135 Set program name before calling the pre-parse hooks.
1137 2004-09-01 Anders Carlsson <andersca@gnome.org>
1139 * glib/goption.c: (g_option_context_free), (print_help),
1140 (g_option_context_parse):
1141 Handle option contexts without a main group.
1143 * tests/option-test.c: (empty_test2), (main):
1144 Add test case for that.
1146 2004-08-30 Anders Carlsson <andersca@gnome.org>
1148 * glib/goption.c: (g_option_context_parse):
1149 Set prgname to <unknown> if argc and argv are NULL.
1151 * tests/option-test.c: (empty_test1), (main):
1152 Add test case for that.
1154 Sun Aug 29 23:58:38 2004 Matthias Clasen <maclas@gmx.de>
1156 * glib/ghash.c (g_hash_table_lookup): Point to
1157 g_hash_table_lookup_extended() for differentiation between
1158 not-found and value-is-NULL. (#150960, Morten Welinder)
1160 2004-08-27 Matthias Clasen <mclasen@redhat.com>
1162 Fix #151193, Stepan Kasal:
1164 * glib/gfileutils.c (g_file_error_from_errno):
1165 * glib/gfileutils.h (enum GFileError): Add G_FILE_ERROR_NOSYS.
1167 Fri Aug 27 00:45:41 2004 Matthias Clasen <maclas@gmx.de>
1169 * glib/goption.c (g_option_context_parse): Set the program name
1170 from argv[0], noticed by Masatake YAMATO.
1172 2004-08-26 Tor Lillqvist <tml@iki.fi>
1174 * tests/testglib.c (main): Test the new XDG basedir functions.
1176 2004-08-25 Tor Lillqvist <tml@iki.fi>
1178 * glib/gwin32.c (g_win32_get_windows_version): New
1179 function. Returns the Windows version code like GetVersion(),
1180 except that one can pretend to be running on Win9x by setting the
1181 G_WIN32_PRETEND_WIN9X environment variable. This is mainly for
1184 * glib/gwin32.h: Declare it. Define macros G_WIN32_WINDOWS_IS_NT_BASED
1185 and G_WIN32_HAVE_WIDECHAR_API to test Windows features at run-time.
1187 2004-08-25 Matthias Clasen <mclasen@redhat.com>
1189 * configure.in: Post-release version bump.
1191 * === Released 2.5.2 ===
1193 Wed Aug 25 00:25:08 2004 Matthias Clasen <maclas@gmx.de>
1195 * NEWS: Update for 2.5.2
1197 2004-08-25 Tor Lillqvist <tml@iki.fi>
1199 Win32 equivalences of the XDG folders
1201 * glib/gutils.c (get_special_folder): New function, calls
1202 SHGetSpecialFolderLocation() to get path to places like the My
1204 (g_get_any_init): Use CSIDL_PROFILE as HOME if not
1205 overridden by env vars.
1206 (g_get_user_data_dir): Use CSIDL_PERSONAL.
1207 (g_get_user_config_dir): Use CSIDL_APPDATA.
1208 (g_get_user_cache_dir): Use CSIDL_INTERNET_CACHE. Debatable...
1209 (g_get_system_data_dirs): Use CSIDL_COMMON_APPDATA and
1210 CSIDL_COMMON_DOCUMENTS.
1211 (g_get_system_config_dirs): Use CSIDL_COMMON_APPDATA.
1213 * configure.in: Add -lole32 to G_LIBS_EXTRA for mingw.
1215 * glib/glib.def: Add the new functions.
1217 Mon Aug 23 16:16:35 2004 Manish Singh <yosh@gimp.org>
1219 * glib/goption.c (g_option_group_add_entries): remove unused
1222 Mon Aug 23 01:35:18 2004 Matthias Clasen <maclas@gmx.de>
1224 * glib/gutils.c (g_get_user_cache_dir):
1225 * glib/gutils.c (g_get_user_config_dir):
1226 * glib/gutils.c (g_get_user_data_dir): Don't call g_get_home_dir()
1227 while holding the g_utils_global lock, simply use g_home_dir.
1228 (#150695, Jody Goldberg)
1230 2004-08-21 Tor Lillqvist <tml@iki.fi>
1232 * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
1233 break out of its loop. Prevents a thread leak. (#147392, Peter
1236 * glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
1237 return value from strxfrm(). For instance Microsoft's strxfrm()
1238 returns INT_MAX on errors. (#141124)
1240 2004-08-19 Tor Lillqvist <tml@iki.fi>
1242 * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): Correct
1243 source and destination charset parameter order in g_convert()
1244 call. (#150394, possibly also #141124)
1246 2004-08-20 Jon K Hellan <hellan@acm.org>
1248 * glib/goption.h: Remove trailing commas.
1250 2004-08-17 Matthias Clasen <mclasen@redhat.com>
1252 * configure.in: Check for all four values of the
1253 visibility attribute; gcc 2.96 seems to miss
1254 "default". (#150379, Vincent Noel)
1256 2004-08-16 Christian Rose <menthos@menthos.com>
1258 * configure.in: Added "bs" to ALL_LINGUAS.
1260 2004-08-11 Ray Strode <rstrode@redhat.com>
1262 * docs/reference/glib/glib-sections.txt:
1263 * glib/gutils.[ch] (g_get_user_data_dir),
1264 (g_get_user_config_dir), (g_get_user_cache_dir),
1265 (g_get_system_data_dirs), (g_get_system_config_dirs):
1266 Add new XDG basedir API (bug 139973).
1268 2004-08-10 Matthias Clasen <mclasen@redhat.com>
1270 * glib/gmacros.h: Remove G_GNUC_INTERNAL from here.
1271 * configure.in: Check whether the visibility attribute
1272 works and define G_HAVE_GNUC_VISIBILITY and
1273 G_GNUC_INTERNAL in glibconfig.h correspondingly.
1275 Mon Aug 9 17:37:56 2004 Matthias Clasen <maclas@gmx.de>
1277 * glib/gmacros.h (G_GNUC_INTERNAL): Define empty if gcc is too old.
1279 2004-08-06 Hans Breuer <hans@breuer.org>
1281 * glib/makefile.msc.in glib/glib.def : updated
1283 * glib/gutils.c : avoid 'inconsitent dll linkage' by not
1284 defining extern char** environ with msvc
1286 2004-08-06 Matthias Clasen <mclasen@redhat.com>
1288 * m4macros/glib-gettext.m4: Require ngettext. (#123847,
1291 Thu Aug 5 20:53:00 2004 Ray Strode <rstrode@redhat.com>
1293 * glib/gutils.h (g_get_codeset): strdup result so caller
1294 doesn't free internally managed memory.
1296 2004-08-04 Tor Lillqvist <tml@iki.fi>
1298 * glib/glib.def: Add glib_check_version.
1300 * config.h.win32.in: Update to match what configure produces. Add
1301 the G_ATOMIC_*. Define G_ATOMIC_I486 when compiling with gcc. Move
1302 HAVE_INT64_AND_I64 to where the configure script puts it. Add
1303 HAVE_INTTYPES_H_WITH_UINTMAX. Define intmax_t as __int64 for MSVC.
1305 Tue Aug 3 16:19:44 2004 Matthias Clasen <maclas@gmx.de>
1307 * glib/goption.c: Mark user visible strings for translation.
1309 Tue Aug 3 15:50:55 2004 Matthias Clasen <maclas@gmx.de>
1311 * glib/goption.[hc]: Pedantically use g types throughout.
1313 Tue Aug 3 14:58:20 2004 Matthias Clasen <maclas@gmx.de>
1316 * glib/gutils.c (glib_check_version): New function to
1317 check the version of GLib at runtime. (#149175, Michael Natterer)
1319 2004-08-03 Anders Carlsson <andersca@gnome.org>
1323 Move GTranslateFunc to gtypes.h
1325 2004-08-02 Anders Carlsson <andersca@gnome.org>
1332 * tests/Makefile.am:
1333 * tests/option-test.c:
1336 2004-08-02 Matthias Clasen <mclasen@redhat.com>
1338 * glib/gmacros.h: Add a G_GNUC_INTERNAL macro to mark function
1339 declarations as internal and avoid PLT indirections for
1340 them. (#145465, Arjan van de Ven)
1342 * glib/gunicodeprivate.h:
1343 * glib/gthreadinit.h:
1346 * glib/gconvert.c: Use G_GNUC_INTERNAL for _g_charset_get_aliases(),
1347 _g_debug_init(), _g_log_fallback_handler(), _g_mem_thread_init(),
1348 _g_messages_thread_init(), _g_convert_thread_init(),
1349 _g_rand_thread_init(), _g_main_thread_init(), _g_atomic_thread_init(),
1350 _g_mem_thread_private_init(), _g_messages_thread_private_init(),
1351 _g_utf8_normalize_wc() and _g_unichar_combining_class().
1353 * glib/gatomic.c: Include gthreadinit.h here to see the declaration
1354 for _g_atomic_thread_init().
1356 Sun Aug 1 13:19:18 2004 Manish Singh <yosh@gimp.org>
1358 * tests/uri-test.c: move newline printing from run_from_uri_tests()
1359 to run_roundtrip_tests().
1361 2004-08-01 Matthias Clasen <mclasen@redhat.com>
1363 * Post-release version bump
1365 * === Released 2.5.1 ===
1367 Sat Jul 31 23:17:05 2004 Matthias Clasen <maclas@gmx.de>
1371 Sat Jul 31 20:33:07 2004 Matthias Clasen <maclas@gmx.de>
1373 * tests/shell-test.c: Include a test involving consecutive
1374 backslashes followed by a non-escaped doublequote.
1376 * glib/gshell.c (tokenize_command_line): Count consecutive
1377 backslashes mod 2 to detect escaped doubleqotes. (#127306)
1379 2004-07-30 Matthias Clasen <mclasen@redhat.com>
1381 * glib/gconvert.c (g_unescape_uri_string): Don't validate
1382 for UTF-8 here. (#148420, Robert Ćgren)
1384 * tests/uri-test.c (run_roundtrip_tests): Add tests for
1385 roundtrip compatibility. Going from filename to uri and
1386 back should always give you the same filename back.
1388 2004-07-28 Matthias Clasen <mclasen@redhat.com>
1390 * tests/markups/valid-{9,10,11}.gmarkup:
1391 * tests/markups/fail-{37,38,39}.gmarkup: Tests for handling
1392 of whitespace inside tags.
1394 * glib/gmarkup.c (enum GMarkupParseState): Add
1395 STATE_AFTER_ATTRIBUTE_NAME and STATE_AFTER_CLOSE_TAG_NAME.
1396 (g_markup_parse_context_parse): Accept whitespace between
1397 attribute names, '=' and attribute values and between
1398 close tag name and '>'. (#148646, Hiroyuki Ikezoe)
1400 Tue Jul 27 02:01:31 2004 Matthias Clasen <maclas@gmx.de>
1402 * glib/gstrfuncs.c (g_strsplit_set): s/g_strsplit/g_strsplit_set/
1405 Sat Jul 24 17:50:07 2004 Soeren Sandmann <sandmann@daimi.au.dk>
1407 * glib/gstrfuncs.c (g_strsplit_set):
1408 s/g_strtokenize/g_strsplit_set/ in docs.
1410 Fri Jul 23 10:37:50 2004 Matthias Clasen <maclas@gmx.de>
1412 * tests/type-test.c (main): Actually test G_MAXSIZE with
1415 2004-07-21 Matthias Clasen <mclasen@redhat.com>
1417 Fix #132858, Sven Neumann, patch by James Henstridge:
1419 * glib-gettextize.in: modify so that mkinstalldirs will
1420 get installed into auxdir.
1422 * Makefile.am (gettext_SCRIPTS): install mkinstalldirs.
1424 2004-07-21 Matthias Clasen <mclasen@redhat.com>
1426 Fix #147651, reported by Oliver Guntermann:
1428 * glib/gprintfint.h (_g_vasprintf): Don't wrap vasprintf(),
1429 _g_gnulib_vasprintf() in a macro, since they behave
1430 differently wrt. to memory allocation.
1432 * glib/gprintf.c (g_vasprintf): Instead, differentiate
1433 here between the three cases: system vasprintf(),
1434 _g_gnulib_vasprintf(), no vasprintf().
1436 2004-07-20 Crispin Flowerday <gnome@flowerday.cx>
1438 * NEWS: Fix a typo in my name
1440 Tue Jul 20 04:31:40 2004 Soeren Sandmann <sandmann@daimi.au.dk>
1442 * configure.in: Bump version number
1444 Sun Jul 18 19:40:30 2004 Soeren Sandmann <sandmann@daimi.au.dk>
1446 * === Released 2.5.0 ===
1448 * Makefile.am (BUILT_EXTRA_DIST): move gtk-doc.make here.
1450 Sun Jul 18 01:40:28 2004 Matthias Clasen <maclas@gmx.de>
1452 * NEWS: Updates for 2.5.0
1454 Mon Jul 12 00:02:40 2004 Matthias Clasen <maclas@gmx.de>
1456 * glib/gi18n-lib.h: Remove the ENABLE_NLS check here as well.
1458 2004-07-09 Matthias Clasen <mclasen@redhat.com>
1460 * glib/gdir.c (g_dir_open): Convert filename to UTF-8
1461 before using it in the error message. (#146054, Federico
1464 Thu Jul 8 00:54:32 2004 Matthias Clasen <maclas@gmx.de>
1466 * glib/gi18n.h: Remove the ENABLE_NLS check, since GLib can't
1467 be built without anyway. (#135899, Murray Cumming)
1469 Mon Jul 5 18:50:27 2004 Matthias Clasen <maclas@gmx.de>
1471 * glib/gmessages.h (g_debug): Complete the g_log()
1472 family. (#135730, Sven Herzberg)
1474 Mon Jul 5 18:42:30 2004 Matthias Clasen <maclas@gmx.de>
1476 * glib/gnulib/Makefile.am (INCLUDES): Add top_srcdir to
1477 make srcdir != . work. (#145166, Kaz Sasayama)
1479 Sun Jul 4 01:52:18 2004 Matthias Clasen <maclas@gmx.de>
1481 * configure.in: Use a small test library instead of
1482 libpthread.so for testing RTLD_GLOBAL brokenness. (#139567,
1483 Julio M. Merino Vidal)
1485 2004-07-02 Sebastian Wilhelmi <seppi@seppi.de>
1487 * glib/gatomic.c: Rename __asm to __asm__ and __volatile to
1488 __volatile__ to make the file consistent. Spotted by Benoit
1489 Carpentier <gtkool_2kx@yahoo.fr>.
1491 2004-07-01 John Ehresman <jpe@wingide.com>
1493 * glib/giowin32.c (g_io_channel_win32_init, g_io_win32_free)
1494 Initialize reset_send & reset_recv fields and don't close
1495 sockets unless they were created. (#145153)
1497 Fri Jun 11 22:56:46 2004 Matthias Clasen <maclas@gmx.de>
1499 * glib/gscanner.c (g_scanner_get_token_ll): Ignore a
1500 missing newline at EOF for single line comments.
1501 (#83674, Sven Neumann)
1503 Thu Jun 10 23:38:02 2004 Matthias Clasen <maclas@gmx.de>
1505 * tests/printf-test.c (TEST): Actually set any_failed on
1506 failure. (#143552, Philippe Blain)
1508 2004-06-09 Federico Mena Quintero <federico@ximian.com>
1510 * tests/uri-test.c (to_uri_tests): Fix expected results (ha ha)
1511 for URIs that *should* have been invalid, or viceversa.
1512 (from_uri_tests): Likewise.
1514 2004-06-07 Federico Mena Quintero <federico@ximian.com>
1518 * glib/gconvert.c (is_asciialphanum): Renamed from
1519 is_escalphanum(); ensures that this is an ASCII character.
1520 (is_asciiescalpha): Renamed from is_escalpha().
1521 (hostname_validate): Use the two functions above.
1522 (g_filename_to_uri): Don't convert the filename to UTF-8.
1523 (g_filename_from_uri): Don't convert the filename from UTF-8.
1525 Mon Jun 7 22:25:24 2004 Matthias Clasen <maclas@gmx.de>
1527 * tests/run-markup-tests.sh: Default to silence, but support
1528 a -v argument to get the old output back.
1530 2004-06-06 Tor Lillqvist <tml@iki.fi>
1532 * glib/gutils.c (g_get_any_init): Check home for being
1533 NULL. (#143812, Ivan Wong)
1535 Sun Jun 6 15:23:00 2004 Pawan Chitrakr <pawan@nplinu.org>
1537 * configure.in: Added "ne" (Nepali) in ALL_LINGUAS
1539 Fri Jun 4 19:26:47 2004 Manish Singh <yosh@gimp.org>
1541 * glib/galloca.h: cpp #directives should always have the "#" in the
1542 first column of the the line. Do that for "#pragma alloca". Fixes
1545 Wed Jun 2 00:57:16 2004 Matthias Clasen <maclas@gmx.de>
1547 * glib/gtypes.h: Use higher precision for the mathematical
1548 constants. (#141941, Morten Welinder)
1550 Tue Jun 1 22:01:40 2004 Matthias Clasen <maclas@gmx.de>
1552 * glib/gmarkup.c (advance_char): Fix an off-by-one error
1553 in g_markup_parse_context_parse(). (#142794, Morten Welinder)
1555 Sun May 16 23:23:29 2004 Matthias Clasen <maclas@gmx.de>
1559 * glib/gcompletion.c (g_completion_add_items):
1560 (g_completion_remove_items): Remove unnecessary
1561 checks. (#142559, Morten Welinder)
1563 2004-05-15 Tor Lillqvist <tml@iki.fi>
1565 * glib/gutils.c (g_get_any_init): [Win32] Only believe HOME if it
1566 is an absolute path and exists. (#138618)
1568 2004-05-14 Tor Lillqvist <tml@iki.fi>
1570 * glib/gnulib/vasnprintf.c (vasnprintf): Handle empty digit string
1571 for precision correctly. (#142400)
1573 For backward compatibility with the Trio implementation, make "ll"
1574 format modifer work on Win32, too. Change into "I64" before
1575 passing to the system printf. (#142433)
1577 * tests/printf-test.c (main): Add tests for the above.
1579 2004-05-10 Matthias Clasen <mclasen@redhat.com>
1583 * glib/gmain.c (block_source, unblock_source): Make these
1584 static. (#142230, Morten Welinder)
1586 2004-05-10 Tor Lillqvist <tml@iki.fi>
1588 * glib/giowin32.c (g_win32_print_gioflags): Remove two duplicated
1589 lines. Thanks to BenoƮt Carpentier.
1591 Sun May 9 02:04:14 2004 Matthias Clasen <maclas@gmx.de>
1595 * glib/guniprop.c (g_utf8_casefold): Avoid an unnecessary
1596 memleak. (#141998, Nikolai Weibull)
1598 Sat May 8 23:02:26 2004 Matthias Clasen <maclas@gmx.de>
1602 * glib/gutils.h: Remove vestigial g_get_codeset().
1603 * glib/gutils.c (g_get_codeset): Call g_get_charset().
1604 (#137703, Owen Taylor)
1606 2004-05-06 Matthias Clasen <mclasen@redhat.com>
1608 * configure.in: Bump version number to 2.5.0.
1610 Wed May 5 23:35:44 2004 Matthias Clasen <maclas@gmx.de>
1612 * glib/gconvert.c (g_filename_from_uri): Quote the file
1613 scheme to mark it as untranslatable. String change.
1614 (#133144, Danilo Segan)
1616 2004-05-03 Pablo Saratxaga <pablo@mandrakesoft.com>
1618 * configure.in: Added Walloon (wa) to ALL_LINGUAS
1620 Sun May 2 03:51:59 2004 Manish Singh <yosh@gimp.org>
1622 * glib/gtypes.h: check for __pentium4__ when deciding whether to
1623 use bswap for GUINT32_SWAP_LE_BE_IA32(). Fixes bug #141620.
1625 2004-05-01 Hans Breuer <hans@breuer.org>
1627 * glib/gnulib/Makefile.am : added makefile.msc to EXTRA_DIST
1628 fixes #141563, Steve Lhomme
1630 2004-04-30 Matthias Clasen <mclasen@redhat.com>
1632 * === Released 2.4.1 ===
1634 * configure.in: Version 2.4.1, interface age 1.
1638 2004-04-25 Tor Lillqvist <tml@iki.fi>
1640 * glib/gwin32.c (g_win32_get_package_installation_subdirectory):
1641 Plug memory leak. (#140770, John Ehresman)
1643 2004-04-23 Matthias Clasen <mclasen@redhat.com>
1645 * glib/libcharset/localcharset.c (_g_locale_get_charset_aliases):
1646 Reinstate LIBCHARSET_ALIAS_DIR support which got lost at some
1647 point. (#139134, Piotr Klaban)
1649 * glib/gconvert.c (open_converter): Don't call g_strerror() here,
1650 since it can lead to infinite recursion. (#139133, Piotr Klaban)
1652 2004-04-22 Matthias Clasen <mclasen@redhat.com>
1654 * tests/testglib.c (main): Trivial warning fix. (#140345)
1656 * tests/queue-test.c (main): Add some tests for off-by-one errors.
1658 * glib/gqueue.c (g_queue_pop_nth_link): Fix an off-by-one
1659 error. (#139703, Philippe Blain)
1661 * tests/testglib.c (main): Add testcases for g_message() involving
1662 non-printable and unsafe characters.
1664 * glib/gmessages.c (escape_string): Don't assume that
1665 string->str remains unchanged over g_string_insert()
1666 calls. (#139030, Christophe Saout)
1668 * glib/gstrfuncs.c (g_ascii_strtod): Fix problems when a
1669 locale-specific decimal separator directly follows a
1670 number. (#138424, Nickolay V. Shmyrev)
1672 * tests/strtod-test.c (main): Add some more testcases.
1674 * glib/gmain.c (g_main_context_query): Only set time_is_current to
1675 FALSE if context->timeout is not zero. (#137795, Christian Krause)
1677 2004-04-21 Matthias Clasen <mclasen@redhat.com>
1679 * tests/printf-test.c (main): Comment out a nonessential testcase
1680 which fails on HP-UX. (#136283, Jonas Jonsson)
1682 2004-04-15 Matthias Clasen <mclasen@redhat.com>
1684 * tests/patterntest.c (main): Add tests for the empty pattern.
1686 * glib/gpattern.c (g_pattern_spec_new): Don't read and write out
1687 of bounds when the pattern is empty. (#140032, Stanislav Brabec,
1690 2004-04-10 Tor Lillqvist <tml@iki.fi>
1692 * glib/gwin32.c (g_win32_getlocale): Add new language and
1693 sublanguage codes, from GNU gettext. (#137958)
1698 * glib/gthread.c: Decorating variable definitions with
1699 __declspec(dllexport) causes problems on Cygwin build, and isn't
1700 really needed for a native Win32 build with mingw or MSVC, so
1701 remove. (#138402, Roger Leigh)
1703 * glib/libcharset/localcharset.c: Use Win32-specific code also on
1705 * tests/uri-test.c: Don't assume that local filenames are in UTF-8
1706 on Cygwin, either. (#138412, Roger Leigh)
1708 2004-04-08 Guntupalli Karunakar <karunakar@freedomink.org>
1710 * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
1712 2004-04-03 Tor Lillqvist <tml@iki.fi>
1714 * configure.in: Remove AC_CYGWIN, obsolete. Don't let pthreads be
1715 found on Cygwin, they don't work. (#138401, Roger Leigh)
1717 2004-03-31 Tor Lillqvist <tml@iki.fi>
1719 * tests/spawn-test-win32-gui.c: Minor Cygwin fix. (#138405, Roger
1722 * tests/unicode-encoding.c (process): Use UTF-16LE explicitly also
1723 on Cygwin. (#138423, Roger Leigh)
1725 2004-03-30 Adam Weinberger <adamw@gnome.org>
1727 * configure.in: Added en_CA to ALL_LINGUAS.
1729 2004-03-21 Tor Lillqvist <tml@iki.fi>
1731 * glib/gutils.c (g_path_get_dirname): Fix Win32 behaviour in some
1732 cases where a drive letter is present. For 'a:' or 'a:foo', return
1733 'a:.'. This is mostly just for consistency with the behaviour
1734 without a drive letter. But very important is to for 'a:\foo' or
1735 'a:\', return 'a:\', and not 'a:'. (Ditto for forward slashes
1736 instead of backslashes.) (#137316)
1738 * tests/dirname-test.c (main): More complete testing on Win32. If
1739 a test fails, include expected and actual result in error message.
1741 Fri Mar 19 15:21:09 2004 Owen Taylor <otaylor@redhat.com>
1743 * glib/gmain.c: Fix the accidental revert of the
1744 fixes from #112222 that happened when the GChildWatch
1745 code was added. (Caught by Christian Persch)
1747 Fri Mar 19 11:07:06 2004 Owen Taylor <otaylor@redhat.com>
1749 * tests/atomic-test.c (main): Make computation
1750 of "biggest_pointer" vaguely more portable.
1751 (#137498, Jonas Jonsson)
1753 2004-03-16 Tor Lillqvist <tml@iki.fi>
1755 * configure.in: Define HAVE_INT64_AND_I64 also in the mingw (gcc
1756 on Win32) case, where the 64-bit type is called long long, but the
1757 system printf/scanf format modifier for 64-bit integers is still I64.
1759 2004-03-16 Gareth Owen <gowen72@yahoo.com>
1761 * configure.in: Added en_GB to ALL_LINGUAS