1 2005-01-09 Hans Breuer <hans@breuer.org>
3 * glib/gfileutils.c : make it compile with mvc6 default sdk,
4 (#define INVALID_FILE_ATTRIBUTES, FILE_ATTRIBUTE_DEVICE)
6 2005-01-09 Tor Lillqvist <tlillqvist@novell.com>
8 * glib/gwin32.c: Include also wchar.h for wcslen on
10 (g_win32_error_message): Fix cast. (#163133, Roger Leigh)
12 * glib/gfileutils.c: Include <io.h> on Windows for
13 prototypes. (#163390, Kazuki Iwamoto)
15 2005-01-07 Matthias Clasen <mclasen@redhat.com>
19 * configure.in: Bump version
21 * === Released 2.6.1 ===
23 2005-01-07 Matthias Clasen <mclasen@redhat.com>
26 * Makefile.am: Generate and distribute gmodule-export-2.0.pc,
27 which is currently just a copy of gmodule-2.0.pc, but makes
28 it explicit that it adds --export-dynamic.
30 * gmodule-export-2.0.pc.in: Copy of gmodule-2.0.pc.in.
32 2005-01-06 Tor Lillqvist <tml@iki.fi>
35 * gobject/Makefile.am: glib.def and gobject.def are generated, not
36 in $(srcdir). (#163143, J. Ali Harlow)
40 * gobject/Makefile.am: Win32 cross-compilation fixes. (#163144,
43 2005-01-05 Matthias Clasen <mclasen@redhat.com>
45 * glib/gutils.h: Simplify the inlining magic to make it
46 work at Oh zero. (#162990, Kalpesh Shah)
48 2005-01-04 Tor Lillqvist <tml@iki.fi>
50 * glib/guniprop.c (get_locale_type): Use g_win32_getlocale()
51 instead of setlocale() on Windows. setlocale() returns strings
52 like "Turkish_Turkey".
54 2005-01-04 Matthias Clasen <mclasen@redhat.com>
56 Fix the inlining magic. (#157536, Jens Hatlak, and
57 #149907, Morten Welinder)
59 * configure.in: Define G_CAN_INLINE in glibconfig.h
61 * glib/gutils.h: Streamline the inlining magic a bit,
62 don't use extern when implementing the non-inlined
65 2005-01-03 Matthias Clasen <mclasen@redhat.com>
67 * glib/gutils.c (g_find_program_in_path): Don't return
68 directories. (#160738, Tommi Komulainen)
70 * glib/gfileutils.c (g_file_get_contents): Clarify the
71 documentation. (#162251, Mariano Suárez-Alvarez)
73 2005-01-02 Matthias Clasen <mclasen@redhat.com>
75 * glib/gutils.c (g_setenv, g_unsetenv): Clarify the
76 docs. (#162747, Crispin Flowerday)
78 2005-01-01 J. Ali Harlow <ali@juiblex.co.uk>
80 * configure.in: Don't use AC_TRY_RUN to test for long long format
81 when using the MSVCRT.DLL runtime since we know the answer anyway
82 and it causes some mild inconvience when cross compiling.
84 * README.win32: Add a reference to the cross compiling section
85 of the reference manual.
87 * docs/reference/glib/cross.sgml: MinGW uses MSVCRT.DLL which
88 requires %I64i instead of %lli. (#161306)
90 2005-01-01 Tor Lillqvist <tml@iki.fi>
92 * glib/gutils.c: Make the g_getenv() ABI backward compatibility
95 2005-01-01 Tor Lillqvist <tml@iki.fi>
99 * glib/gutils.c: Make also g_getenv(), g_setenv(), g_unsetenv()
100 and g_find_program_in_path() take and return UTF-8 strings on
101 Win32. Implement DLL ABI backward compatility for them, too. Move
102 all the DLL ABI stability wrappers to the end of the file. Use
103 wide character API when available in inner_find_program_in_path().
105 * glib/gfileutils.c: With the UTF-8ness of g_getenv() above, just
106 use g_getenv() to get PATHEXT. (Yeah, it's probably overdoing it
107 to consider somebody actually having anything else than ASCII
110 2004-12-31 Tor Lillqvist <tml@iki.fi>
112 * glib/gfileutils.c (g_file_test): Rewrite the Win32 version to
113 use GetFileAttributes() instead of stat(). stat() is unreliable
114 for corner cases like '\\server\share' or '.\'. Part of fixing
115 #161797. When testing for executability, in addition to the fixed
116 set of executable file name extensions also check the PATHEXT
117 environment variable.
119 2004-12-30 Tor Lillqvist <tml@iki.fi>
121 * glib/gutils.c (g_get_current_dir): In the Win32 version, use
122 GetCurrentDirectory() directly for simpler buffer length
123 management. I don't trust getcwd() getting it right all the time.
125 2004-12-30 Matthias Clasen <mclasen@redhat.com>
127 * glib/gfileutils.c (g_file_test): Typo fix.
129 2004-12-30 Tor Lillqvist <tml@iki.fi>
131 * glib/gutils.c (g_path_skip_root): Require UNC paths to start
132 with exactly two slashes.
133 (g_get_current_dir): Use wide character API when available.
134 (g_path_get_dirname): Handle UNC paths better. Part of fix for
137 2004-12-27 Matthias Clasen <mclasen@redhat.com>
139 * configure.in: Add an OS_LINUX conditional.
141 * glib/Makefile.am (TESTS): Only check the ABI on
142 linux, since the shell script is not portable, and libtool
143 deficiencies may distort the ABI on other platforms. (#161741)
145 2004-12-21 Matthias Clasen <mclasen@redhat.com>
147 * glib/goption.c (print_entry): Don't show
148 the special G_OPTION_REMAINING entry. (#161934,
151 2004-12-20 Tor Lillqvist <tml@iki.fi>
153 * glib/gconvert.c (g_locale_to_utf8, g_filename_to_uri): Improve
156 2004-12-20 Matthias Clasen <mclasen@redhat.com>
158 * tests/option-test.c: Add some tests for '--'
161 * glib/goption.c (g_option_context_parse): Don't
162 strip '--' if it would be needed by a second option
165 * glib/gunicollate.c (g_utf8_collate): Make docs
166 more accurate. (#161683, Marcin Krzyzanowski)
168 2004-12-19 Matthias Clasen <mclasen@redhat.com>
170 * glib/goption.c (g_option_context_parse): Call
171 post-parse hooks also if argv is NULL. (#161668,
174 2004-12-16 Matthias Clasen <mclasen@redhat.com>
176 * configure.in: Bump version
178 * === Released 2.6.0 ===
180 2004-12-15 Alexander Larsson <alexl@redhat.com>
182 * glib/gconvert.c: (g_filename_display_basename):
184 Add g_return_val_if_fail.
187 Add g_filename_display_basename
189 2004-12-15 Alexander Larsson <alexl@redhat.com>
191 * glib/gconvert.[ch]:
192 Add g_filename_display_basename.
194 2004-12-14 Matthias Clasen <mclasen@redhat.com>
200 * configure.in: Set version to 2.6.0
202 2004-12-13 Tor Lillqvist <tml@iki.fi>
207 * glib/gstdio.[ch]: Add g_rmdir().
209 2004-12-13 Matthias Clasen <mclasen@redhat.com>
213 2004-12-12 Tor Lillqvist <tml@iki.fi>
216 * glib/gconvert.[ch]: Implement Windows DLL ABI stability also for
217 g_filename_{to,from}_uri().
219 2004-12-11 Tor Lillqvist <tml@iki.fi>
221 * glib/gstdio.c (g_rename, g_unlink, g_remove): Add doc comments
222 about Windows restrictions on renaming and removing.
224 (g_remove): Mimic POSIX remove() on Windows: Try also to rmdir if
225 removal as a file fails. Document this.
227 * glib/gstdio.h: Clarify comment about file name encoding on
230 * glib/gspawn-win32.c: Fix #157255. Also some refactoring of this
231 still very ugly source file.
233 2004-12-09 Matthias Clasen <mclasen@redhat.com>
235 * glib/goption.c (print_help): Don't print help options
236 if the options of a specific group have been
237 requested. (#160645, Glynn Foster)
239 2004-12-07 Matthias Clasen <mclasen@redhat.com>
241 * glib/gutils.c (g_get_language_names): Update the returned
242 value after locale changes. (#160271, Christian Persch)
243 (_g_utils_thread_init): Initialize the language name cache
244 before going threaded.
246 * glib/gthread.c (g_thread_init_glib): Call _g_utils_thread_init().
248 * glib/gthreadinit.h: Add _g_utils_thread_init().
250 2004-12-06 Tor Lillqvist <tml@iki.fi>
252 * glib/giowin32.c (g_io_win32_finalize): Fix a write to freed
253 memory: Unlock the channel's mutex before unrefing the channel.
255 2004-12-06 Matthias Clasen <mclasen@redhat.com>
257 * configure.in: Remove a no longer needed hack for
258 libtool < 1.5.2. (#100697, Owen Taylor, Sebastian Wilhelmi)
260 2004-12-05 Tor Lillqvist <tml@iki.fi>
263 * glib/gwin32.[hc]: Implement DLL ABI stability also for
264 g_win32_get_package_installation_directory()) and
265 g_win32_get_package_installation_subdirectory().
267 * glib/Makefile.am (install-libtool-import-lib): Remove the DLL
268 binary compatibilty entries from the import library. They aren't
269 used by newly compiled code, so no need to have them in the import
270 library. (The "PRIVATE" keyword in the .def file is supposed to do
271 this, but not implemented in the GNU linker yet.)
273 2004-12-04 Matthias Clasen <mclasen@redhat.com>
275 * glib/gqueue.c (g_queue_link_index): Return -1 if queue is
276 NULL. (#159530, Philippe Blain)
278 2004-12-02 Matthias Clasen <mclasen@redhat.com>
280 * configure.in: Bump version.
282 * === Released 2.5.7 ===
284 2004-12-02 Matthias Clasen <mclasen@redhat.com>
286 * glib/glib.symbols: Protect the the various push/pop allocator
287 functions by #ifndef DISABLE_MEM_POOLS. (#160215, Frederic Crozat)
289 * glib/makegalias.pl: Support #ifndef'ed sections.
291 * glib/gutils.c (g_get_system_config_dirs): Don't forget to
292 initialize g_system_config_dirs. (#160213, Frederic Crozat)
294 Wed Dec 1 17:04:37 2004 Manish Singh <yosh@gimp.org>
296 * glib/gstring.h (g_string_append_c_inline): actually enable (and
297 fix up the length test).
299 2004-11-30 Tor Lillqvist <tml@iki.fi>
301 * glib/Makefile.am (glib.def): gcc -E complains "linker input file
302 unused because linking not done" if told to preprocess the
303 glib.symbols file. Use '-' and redirection to pass it as standard
306 2004-11-30 Matthias Clasen <mclasen@redhat.com>
310 2004-11-30 Tor Lillqvist <tml@iki.fi>
312 * glib/gspawn-win32-helper.c (WinMain): Also check errno to detect
313 true errors from spawn*(). (#157258, reported by Bruce Hochstetler)
315 2004-11-29 Matthias Clasen <mclasen@redhat.com>
317 * glib/gmacros.h (G_GNUC_MALLOC): Define empty for gcc 2.95.
319 * glib/gmarkup.c (unescape_text_state_after_charref_hash):
320 Avoid a strndup() here, noticed by Morten Welinder.
322 2004-11-29 Matthias Clasen <mclasen@redhat.com>
324 * glib/gmarkup.c: Remove leftover noinline attributes.
325 (is_name_start_char, is_name_char): Avoid possible reads
326 beyond the end of g_ascii_table.
328 * glib/Makefile.am: Use the perl found by configure. (#149826,
331 Sun Nov 28 13:13:56 2004 Manish Singh <yosh@gimp.org>
333 * glib/abicheck.sh: filter G_GNUC before PRIVATE so $ is still true.
335 * tests/utf8-validate.c: cast pointer math to gint for error print
338 Sun Nov 28 12:07:29 2004 Manish Singh <yosh@gimp.org>
340 * tests/utf8-validate.c: minor comment fix.
342 2004-11-28 Matthias Clasen <mclasen@redhat.com>
349 * glib/gutils.h: Mark functions with G_GNUC_MALLOC when appropriate.
351 * glib/glib.symbols: Add G_GNUC_MALLOC annotations.
353 * glib/gmacros.h (G_GNUC_MALLOC): Add a macro for
354 __attribute__((__malloc__)). (#61780)
356 2004-11-28 Tor Lillqvist <tml@iki.fi>
359 * glib/glib.symbols: [Win32] Make also g_get_user_name() and
360 g_get_real() name return UTF-8. As for the similar changes to fix
361 #101792, for DLL ABI stability we use preprocessor defines to get
362 the new UTF-8 versions, and keep the old names for versions
363 returning strings in the system codepage.
365 Fix g_get_tmp_dir() and g_get_home_dir() to actually return UTF-8
366 as was intended in the fix for bug #101792. (#159664, noticed by
369 2004-11-28 Matthias Clasen <mclasen@redhat.com>
371 * glib/gmarkup.c: Optimizations; don't scan the entire text
372 in find_current_text_end(), split unescape_text() into multiple
373 functions. (#159001, Havoc Pennington)
375 2004-11-27 Matthias Clasen <mclasen@redhat.com>
377 * glib/gspawn.c (g_spawn_async_with_pipes): Update the @flags
378 documentation with references to GChildWatch and
379 g_spawn_close_pid(). (#136255, noted by Owen Taylor)
381 2004-11-26 Matthias Clasen <mclasen@redhat.com>
383 * glib/gkeyfile.c (g_key_file_parse_value_as_string):
384 Don't access invalid memory address if p wasn't
385 increased. (#159557, Frederic Crozat)
387 2004-11-25 Matthias Clasen <mclasen@redhat.com>
389 * tests/strtod-test.c (main): Add a testcase for the previous fix.
391 * glib/gstrfuncs.c (g_ascii_strtod): Make it work again for floats
392 starting with a decimal point, like .75 (#156421, Hans Breuer)
394 Thu Nov 25 14:02:43 2004 Manish Singh <yosh@gimp.org>
396 * glib/abicheck.sh: filter out G_GNUC stuff when doing the compare.
398 * glib/gmessages.c (g_assert_warning): call abort() at the end, so
401 2004-11-25 Kjartan Maraas <kmaraas@gnome.org>
403 * configure.in: Add «nb» to ALL_LINGUAS.
405 2004-11-24 Tor Lillqvist <tml@iki.fi>
407 * glib/gwin32.c (g_win32_error_message,
408 get_package_directory_from_module,
409 g_win32_get_package_installation_directory,
410 g_win32_get_package_installation_subdirectory): Use wide character
411 API when available. Document that string parameters and return
414 2004-11-24 Matthias Clasen <mclasen@redhat.com>
416 * glib/gutf8.c: Replace g_utf8_validate() with an
417 optimized version, and clarify the docs a bit. (#159131,
420 * tests/Makefile.am (test_programs): Add utf8-validate.
422 * tests/utf8-validate.c: Unit tests for g_utf8_validate().
424 2004-11-23 Matthias Clasen <mclasen@redhat.com>
426 * glib/goption.h: Don't mark g_option_error_quark() as const,
427 to be consistent with all the other error_quark functions.
428 (technically they are const, but since these are called only
429 in error paths, giving the compiler better optimization
430 opportunities doesn't matter much)
432 2004-11-23 Matthias Clasen <mclasen@redhat.com>
434 Fix a problem with the PLT reduction changes which caused the
435 internal aliases to lose all attributes.
437 * glib/glib.symbols: Add attribute annotations.
438 * glib/makegalias.pl: Keep attribute annotations, but strip PRIVATE.
439 * glib/Makefile.am (glib.def): Strip attribute annotations, but keep
442 2004-11-21 Hans Breuer <hans@breuer.org>
444 * **/makefile.msc : updated
446 2004-11-16 Matthias Clasen <mclasen@redhat.com>
448 * m4macros/glib-2.0.m4 (AM_PATH_GLIB_2_0): Support gmodule-no-export.
450 * Makefile.am (EXTRA_DIST):
451 * configure.in (AC_CONFIG_FILES): Add gmodule-no-export-2.0.pc.in
453 * gmodule-no-export-2.0.pc.in: Add a variants of gmodule-2.0.pc.in
454 which doesn't add -Wl,--export-dynamic, since Pango or GTK+ don't
455 need it. (#125627, Owen Taylor)
457 2004-11-17 Matthias Clasen <mclasen@redhat.com>
459 * glib/gkeyfile.c: Define S_ISREG() on windows, since it
460 is not present there. (#158469, Kazuki IWAMOTO)
462 2004-11-15 Matthias Clasen <mclasen@redhat.com>
464 * glib/gkeyfile.c (g_key_file_load_from_fd): Use S_ISREG(), since
465 S_IFMT and S_IFREG are apprarently missing on some systems (they
466 are SUS, but not Posix). (#158263)
468 2004-11-12 Matthias Clasen <mclasen@redhat.com>
470 * configure.in: Bump version.
472 * === Released 2.5.6 ===
474 2004-11-11 J. Ali Harlow <ali@juiblex.co.uk>
476 * gobject/Makefile.am:
477 * glib/Makefile.am (gtk.def): Use embedded tab rather than '\t'
478 escape sequence. (#157951)
480 2004-11-10 Tor Lillqvist <tml@iki.fi>
482 * glib/gconvert.c (g_get_filename_charsets): Fix typo in doc
485 2004-11-10 Matthias Clasen <mclasen@redhat.com>
489 Mon Nov 8 10:45:50 2004 Manish Singh <yosh@gimp.org>
493 * glib/giochannel.c: g_return_if_fail -> g_return_val_if_fail
495 * glib/gmain.c: Ditto, plus also make g_main_context_ref() actually
496 return the passed in pointer.
498 2004-11-08 Matthias Clasen <mclasen@redhat.com>
500 * glib/gnode.h (enum GTraverseFlags): Add G_TRAVERSE_LEAVES
501 and G_TRAVERSE_NON_LEAVES as alternative names for
502 G_TRAVERSE_LEAFS and G_TRAVERSE_NON_LEAFS, which are
503 grammatically brutal. (#138853, Morten Welinder)
505 * glib/gasyncqueue.[hc]:
508 * glib/giochannel.[hc]: Make g_io_channel_ref(),
509 g_main_context_ref(), g_hook_ref(), g_async_queue_ref()
510 return the passed in pointer. (#151663, Manish Singh)
512 * glib/gmain.c: Initialize child_watch_count to 1, so
513 that we don't miss the very first child if it exits
514 before we set up the child watch. In that case we had
515 previously source->count == child_watch_count == 0,
516 causing g_child_watch_check() to skip the waitpid()
517 call. (#154827, Gustavo Carneiro)
519 * glib/gmain.c (g_child_watch_source_init_single)
520 (g_child_watch_source_init_multi_threaded): Use sigaction()
521 instead of signal(). (#136867, Jonas Jonsson, patch by
524 2004-11-07 Matthias Clasen <mclasen@redhat.com>
526 * glib/gutils.c (g_get_any_init): Work around an bug
527 in Mac OS < 10.3. (#156446, Dave MacLachlan)
529 2004-11-06 Tor Lillqvist <tml@iki.fi>
531 * glibconfig.h.win32.in: Cosmetics: move the G_GNUC_INTERNAL
532 define to the same place where it is in a configure-generated
535 2004-11-05 Matthias Clasen <mclasen@redhat.com>
537 * tests/strtod-test.c: Portability fixes and extra sanity
538 checks. (#157453, Morten Welinder)
540 2004-11-04 Matthias Clasen <mclasen@redhat.com>
542 * glib/gstrfuncs.c (g_ascii_strtod): Handle numbers like
543 1e1, nan, -infinity. Also try harder to preserve errno.
544 (#156421, Morten Welinder)
546 * tests/strtod-test.c: Add testcases.
548 2004-11-04 Tor Lillqvist <tml@iki.fi>
550 * glib/goption.h (enum GOptionFlags): Add G_OPTION_FLAG_REVERSE,
551 to reverse the sense of a G_OPTION_ARG_NONE (boolean) option.
553 * glib/goption.c (parse_arg): Obey the above flag.
555 * glib/gconvert.c (g_filename_display_name): Document that the
556 result is guaranteed to be non-NULL.
558 * glib/gfileutils.c (get_contents_stdio, get_contents_regfile,
559 get_contents_posix, get_contents_win32, g_file_open_tmp,
560 g_file_read_link): Use g_filename_display_name() for error
562 (g_mkstemp): Document that the template should be in the GLib file
564 (g_file_open_tmp): Ditto. Also document that the actual name
565 returned is also in the GLib file name encoding.
567 2004-11-02 Matthias Clasen <mclasen@redhat.com>
569 * glib/gconvert.c (g_filename_display_name): New function
570 to convert a filename to a UTF-8 string for display
571 purposes. (requested by Alex Larsson)
573 * glib/gconvert.c (g_get_filename_charsets): New function
574 to return the encodings which are tried when converting a
575 filename to UTF-8. (#151465, François Gagné)
577 2004-11-02 Matthias Clasen <mclasen@redhat.com>
579 * configure.in: Bump version
581 * === Released 2.5.5 ===
585 2004-11-02 Matthias Clasen <mclasen@redhat.com>
587 * glib/glib.symbols: Add new functions.
589 * glib/gconvert.c: Fix doc comment for
590 g_get_filename_charsets().
592 * glib/gconvert.c (g_filename_display_name): New function to
593 convert a filename to a UTF-8 string for display purposes.
594 (g_get_filename_charsets): New function to return the
595 encodings which are tried when converting a filename to
598 * glib/goption.c (g_option_context_parse): Document that
599 this function may not return.
601 2004-11-01 Matthias Clasen <mclasen@redhat.com>
603 * glib/gutils.h: Make gtkdoc-scan happy by removing spaces
606 2004-11-01 Tor Lillqvist <tml@iki.fi>
608 * glib/gstdio.c (g_lstat): Implement correctly also on Unix
609 systems without lstat(). (#157038, Morten Welinder)
611 2004-11-01 Ray Strode <rstrode@redhat.com>
614 (g_key_file_get_locale_string): don't return an
615 error if we come across a value with invalid utf8 or
616 if we don't find a translated string. Just fallback
617 to the untranslated string (Mark McLoughlin, bug
621 (g_key_file_init), (g_key_file_clear): track the
622 actual start GKeyFileGroup rather than just its name
623 (g_key_file_parse_group): allow add_group() to
624 update the start group.
625 (g_key_file_remove_group_node): update the start
626 group if it gets removed (Mark McLoughlin, bug
630 (g_key_file_parse_string_as_value): Don't escape
631 tabs and spaces in the middle of key values.
633 2004-11-01 Matthias Clasen <mclasen@redhat.com>
639 * gthread/gthread-posix.c
640 * tests/timeloop-closure.c
641 * tests/timeloop.c: Fix sparse warnings. (#157014, Kjartan Maraas)
643 2004-11-01 Matthias Clasen <mclasen@redhat.com>
645 * glib/goption.c: Documentation updates.
647 Handle conflicts between options in different groups. (#156808)
649 * glib/goption.c (g_option_context_parse): When a long option does not
650 match exactly, try to parse it as --group-option.
651 (g_option_context_add_group): Warn if a group name conflict occurs.
653 * glib/goption.c (print_help): Print out the effective options, ie
654 don't print shadowed short options, and for long options print
655 --group-option instead of --option if appropriate.
657 2004-10-31 Matthias Clasen <mclasen@redhat.com>
659 * glib/gwin32.c: Add bits of markup to g_win32_get_windows_version()
662 2004-10-31 Tor Lillqvist <tml@iki.fi>
664 * glib/gwin32.c: Document g_win32_get_windows_version().
666 * glib/gstdio.[ch]: Add g_lstat().
668 2004-10-29 Matthias Clasen <mclasen@redhat.com>
670 * glib/goption.c: Doc additions.
672 * glib/goption.c (parse_arg): Convert filenames to UTF-8 on
675 2004-10-29 Hans Breuer <hans@breuer.org>
677 * glibconfig.h */makefile.msc.in : updated [and finally fixed my
678 script to produce ready to go de-in(ed) files, w/o autotools]
680 * */*.rc.in : updated copyrights to 2004
682 * glib/gutils.c : some CSIDL_* defines lacking from older SDK;
683 use the same fallback mecahnism as on *NIX where ever applicable
685 2004-10-29 Matthias Clasen <mclasen@redhat.com>
687 * tests/option-test.c: Add tests for the handling of
688 non-option arguments, "--" and G_OPTION_REMAINING.
690 * glib/goption.[hc]: #define G_OPTION_REMAINING, which is
691 a special long option name, which can be used for an option
692 in the main group which collects the non-option arguments.
693 It must be of type G_OPTION_ARG_STRING_ARRAY or
694 G_OPTION_ARG_FILENAME_ARRAY. If the main group doesn't contain
695 an option whose name is G_OPTION_REMAINING, the non-option
696 arguments are left behind in argv as before.
698 * glib/goption.c: Add documentation.
700 2004-10-28 Matthias Clasen <mclasen@redhat.com>
702 * glib/gmessages.h: Mark g_assert_warning as G_GNUC_NORETURN,
703 to avoid compiler warnings. (#156767, Owen Taylor)
705 2004-10-29 Tor Lillqvist <tml@iki.fi>
707 * glib/gstdio.c: Include also <direct.h> for mkdir() prototype
708 with MSVC. [156727, Kazuki IWAMOTO]
710 * glib/giochannel.h (g_io_channel_new_file): Redefine also
711 g_io_channel_new_file to the UTF-8 version on Win32. [156725,
714 2004-10-28 Ray Strode <rstrode@redhat.com>
717 (find_file_in_data_dirs): clean up a leak (#156652,
719 (g_key_file_load_from_fd): propagate fstat() error
720 conditions and retry read on EAGAIN (#156647, Morten
721 Welinder). Return error if file is NOT regular, not if
722 it is regular (bug introduced from last commited bug
724 (g_key_file_load_from_data_dirs): allocate enough space
725 for the terminating NULL.
727 2004-10-28 Ray Strode <rstrode@redhat.com>
729 * glib/gkeyfile.c: Don't use S_ISREG macro (#156728,
732 2004-10-28 Matthias Clasen <mclasen@redhat.com>
734 * glib/gstdio.c: Include galias.h before glib.h (#156697,
737 * glib/gkeyfile.c: Add a missing "Since: 2.6" comment.
739 2004-10-28 Tor Lillqvist <tml@iki.fi>
741 * glib/gstdio.c: Include glib.h early to get G_OS_WIN32. Include
744 * glib/gkeyfile.c: Include gstdio.h and use g_open().
746 2004-10-27 Ray Strode <rstrode@redhat.com>
749 (g_key_file_load_from_fd),
750 (g_key_file_load_from_file):
751 Move file is regular check to load_from_file to use
752 fstat() instead of race prone g_file_test(). Don't
753 clear/init until needed. Change error messages to be
755 (g_key_file_load_from_data),
756 (g_key_file_load_from_data_dirs),
757 (g_key_file_parse_data),
758 (g_key_file_get_value),
759 (g_key_file_get_string),
760 (g_key_file_set_string),
761 (g_key_file_get_string_list),
762 (g_key_file_set_string_list),
763 (g_key_file_set_locale_string),
764 (g_key_file_get_locale_string),
765 (g_key_file_set_locale_string_list),
766 (g_key_file_get_boolean),
767 (g_key_file_set_boolean),
768 (g_key_file_get_boolean_list),
769 (g_key_file_set_boolean_list),
770 (g_key_file_get_integer),
771 (g_key_file_get_integer_list),
772 (g_key_file_set_integer_list),
773 (g_key_file_remove_key):
774 Add more g_return_*if_fail checks for public functions.
776 2004-10-27 Matthias Clasen <mclasen@redhat.com>
778 * configure.in: Bump version.
780 * === Released 2.5.4 ===
782 2004-10-27 Matthias Clasen <mclasen@redhat.com>
784 * glib/abicheck.sh: Strip Win32 specific defs file syntax.
788 2004-10-27 Matthias Clasen <mclasen@redhat.com>
790 Introduce the idea of a filename encoding, which is
791 *literally* the filename encoding on Unix. On Windows,
792 use the Unicode name converted to UTF-8. (#101792,
793 Tor Lillqvist, Owen Taylor)
796 * glib/gconvert.[hc]:
797 * glib/gfileutils.[hc]:
799 * glib/giowin32.c: On Windows, keep old ABI versions
800 of GLib pathname api for DLL ABI stability. Use different
801 names for the new-style UTF-8 versions. Hide this through
804 * glib/gstdio.[hc]: New files containing wrappers for
807 * glib/glib.symbols: Add new symbols.
809 * glib/makegalias.pl: Drop Win32 specific .def syntax,
812 2004-10-27 Matthias Clasen <mclasen@redhat.com>
814 * glib/gkeyfile.c: Fix includes. (#156500, #156499,
817 * glib/Makefile.am (galias.h): Fix srcdir != builddir
818 builds. (#156447, Thomas Fitzsimmons)
820 2004-10-26 Gora Mohanty <gmohanty@cvs.gnome.org>
822 * configure.in: Added 'or' to ALL_LINGUAS.
824 2004-10-26 Matthias Clasen <mclasen@redhat.com>
826 * glib/gkeyfile.c: Include galias.h.
828 * glib/gkeyfile.c (g_key_file_parse_value_as_comment):
829 Don't compare strings and chars.
831 * glib/glib.symbols: Add new symbols.
833 * glib/gkeyfile.c (g_key_file_new): Fix docs.
835 * glib/gkeyfile.h: Use the same parameter names as in
836 the implementation and the docs.
838 * glib/gwin32.c (g_win32_get_windows_version): Make this
839 function thread-safe in the GLib style.
840 * glib/gthreadinit.h:
841 * glib/gwin32.c (_g_win32_thread_init): New function to
842 initialize the version.
843 * glib/gthread.c (g_thread_init_glib): Call
844 _g_win32_thread_init() from here.
846 2004-10-26 Ray Strode <rstrode@redhat.com>
848 * glib/gkeyfile.c: Add Matthias to "Written by" lines
849 (GKeyFileGroup): add field to hold comments about groups
850 (g_key_file_load_from_fd): return TRUE on success and
851 FALSE on failure. Don't close fd's opened by other
853 (g_key_file_load_from_file): run FILE_IS_REGULAR test
854 before trying to open file, to save an fd from being
855 leaked (would probably be better to use fstat()). Close
856 fd when done with it. Return TRUE on success and FALSE
858 (g_key_file_load_from_data): Return TRUE on success and
860 (g_key_file_load_from_data_dirs): remove superfluous
861 const modifier. Return TRUE on success and FALSE on
862 failure. Stop trying to load files when one succeeds.
863 (g_key_file_parse_key_value_pair): don't validate input
864 for UTF-8 until users uses a getter that does
865 validation. Don't leak copy of start_group_name.
866 (g_key_file_to_data): serialize new comment field for
868 (g_key_file_get_keys): Remove convenience code to let
869 NULL group mean start group. Get rid of unneeded NULL
870 check before g_strdup.
871 (g_key_file_get_groups): Reverse groups list before
872 sending to user because it is maintained in backward
874 (g_key_file_get_value),
875 (g_key_file_set_value): add g_return checks at top of
877 (g_key_file_get_string),
878 (g_key_file_get_string_list): validate key value is UTF-8.
879 (g_key_file_[sg]et_*comment): new functions for
880 setting/getting comments
881 (g_key_file_remove_comment): new function to remove
883 (g_key_file_remove_key_value_pair_node): new function to
884 pull a key-value pair out of the list and free it.
885 (g_key_file_remove_group_node): call
886 g_key_file_remove_key_value_pair_node instead of
887 freeing the list immediately to get better statistics
888 for approximate_size.
889 (g_key_file_remove_group): use lookup_group_node instead
890 of lookup_group to prevent a g_list_find call.
891 (g_key_file_add_key): report group also when unable to
893 (g_key_file_lookup_group_node): new function to make
894 getting the group node from a group name easier.
895 (g_key_file_lookup_group): use lookup_group_node under
897 (g_key_file_lookup_key_value_pair_node): new function to
898 make getting the key-value pair from a group and key
900 (g_key_file_parse_comment_as_value): new function to add '#' to the
901 beginning of every line.
902 (g_key_file_parse_value_as_comment): new function that
903 attempts to be the inverse of comment as value.
905 2004-10-26 Matthias Clasen <mclasen@redhat.com>
908 * glib/gkeyfile.c: Don't include ctype.h needlessly. (#156424,
911 * tests/strtod-test.c (test_string): Improve error reporting.
913 Mon Oct 25 15:05:18 2004 Manish Singh <yosh@gimp.org>
915 * autogen.sh: rm autom4te.cache, since it might interfere with
916 differing autoconf versions.
918 * tests/child-test.c: use GINT_TO_POINTER for g_child_watch_add
921 * glib/gfileutils.c: G_IS_DIR_SEPARATOR is defined in gutils.h now,
922 don't redefine it here.
924 2004-10-24 Matthias Clasen <mclasen@redhat.com>
926 * glib/gkeyfile.c (g_key_file_remove_group_node): Don't
927 destroy the lookup map if it is NULL.
929 2004-10-23 Matthias Clasen <mclasen@redhat.com>
931 * glib/gasyncqueue.c, glib/gatomic.c, glib/gdate.c,
932 glib/giochannel.c, glib/gmain.c, glib/gspawn.c,
933 glib/libcharset/localcharset.c: Apply a patch to fix
934 sparse warnings. (#154696, Kjartan Maraas)
936 * glib/gnulib/g-gnulib.h: Undef libc functions before defining
937 them, since they may also be macros. (#155177, Andrea Campi)
940 * glib/gkeyfile.c: Add a parser for desktop entries and
941 similar files with a .ini-like syntax. (#139974, Ray Strode)
943 * glib/glib.h: Include gkeyfile.h
945 * glib/Makefile.am (libglib_2_0_la_SOURCES): Add gkeyfile.c
946 (glibsubinclude_HEADERS): Add gkeyfile.h
948 * glib/gutils.c (_g_compute_locale_variants): Make this
949 non-static and use it in gkeyfile.c
951 2004-10-22 Matthias Clasen <mclasen@redhat.com>
953 * tests/uri-test.c (run_uri_list_tests): Add some
957 * glib/gconvert.c (g_uri_list_extract_uris): New function to
958 split a text/uri-list data into individual uris and strip comments.
960 2004-10-20 Matthias Clasen <mclasen@redhat.com>
962 * glib/goption.c (get_change): Don't return the wrong
963 change. (#155856, Lucas Rocha)
965 2004-10-17 Matthias Clasen <mclasen@redhat.com>
967 * glib/gutils.h (G_IS_DIR_SEPARATOR):
968 * glib/gutils.c: Make public. (#155589, Tim-Philipp Müller)
970 2004-10-08 Matthias Clasen <mclasen@redhat.com>
972 * glib/gmain.c (g_child_watch_add_full):
973 * glib/gmain.c (g_child_watch_add): Document that GLib supports only
974 a single callback per pid. (#154828, Gustavo Carneiro)
976 2004-10-06 Matthias Clasen <mclasen@redhat.com>
978 * glib/gfileutils.c: Fix some C99isms. (#154676, Kjartan Maraas)
980 2004-10-05 Anders Carlsson <andersca@gnome.org>
982 * glib/goption.c: (g_option_context_parse):
983 Add check for if argc is 0.
985 * tests/option-test.c: (empty_test3), (main):
988 2004-10-05 Matthias Clasen <mclasen@redhat.com>
992 2004-10-04 Matthias Clasen <mclasen@redhat.com>
994 * glib/gmem.c (g_mem_set_vtable): Only set vtable_set if the
995 vtable is set. (#154352, Philippe Blain)
997 2004-10-03 Anders Carlsson <andersca@gnome.org>
999 * glib/goption.c: (parse_arg):
1000 Set arg_data on filenames. (Discovered by Mats-Ola Persson).
1002 * tests/option-test.c: (arg_test3), (ignore_test3), (main):
1003 Add test for filename args.
1005 2004-10-01 Tor Lillqvist <tml@iki.fi>
1007 * glib/goption.c (g_option_context_parse): Use
1008 g_path_get_basename() instead of strrchr(), so that either slash
1009 is accepted on Windows.
1011 2004-09-30 Matthias Clasen <mclasen@redhat.com>
1013 * glib/gfileutils.c: Convert filenames to UTF-8 before
1014 putting them in GErrors. (#154078, Morten Welinder)
1016 2004-09-29 Matthias Clasen <mclasen@redhat.com>
1018 * glib/glib.symbols: Add g_assert_warning.
1021 * glib/gmessages.c (g_assert_warning): Treat g_assert
1022 in the same way as g_return_if_fail and move the string
1023 constants into a helper function, which also takes
1024 care of removing the "IA__" prefix from internal aliases.
1026 * glib/gmessages.h: Move the declaration of
1027 g_return_if_fail_warning() out of the ifdefs, so that
1028 building with G_DISABLE_ASSERT works.
1030 2004-09-27 Murray Cumming <murrayc@murrayc.com>
1032 * glib/goptions.[h|c], glib/glib.symbols: Rename
1033 g_context_option_error_quark() to g_option_error_quark(), because that
1034 is consistent with normal naming conventions, and what bindings expect.
1036 .2004-09-26 Matthias Clasen <mclasen@redhat.com>
1038 Fix #153649, Hidetaka Iwai:
1040 * glib/goption.c (parse_long_option): Don't forget to set parsed
1041 to TRUE when parsing a long ARG_NONE option.
1042 (free_changes_list): Fix the memory management for string
1043 and filename arrays.
1045 2004-09-22 Tor Lillqvist <tml@iki.fi>
1047 * glib/gmessages.c: [Win32] Don't ever open a console
1048 window. (Which we used to do if standard output or standard error
1049 are invalid, as they are for GUI applications.) These console
1050 windows that open up unexpectedly have caused endless amounts of
1051 confusion among end-users. (#141102, #151175)
1053 Don't output the process id on Windows. Only output the program
1054 name. If not set with g_set_prgname(), fetch the application
1055 executable's name and use that.
1057 Mon Sep 20 00:35:14 2004 Matthias Clasen <maclas@gmx.de>
1059 * glib/gutf8.c (g_utf16_to_utf8): Add a note explaining how to
1060 convert UTF-16 byte stream of ambiguous endianness. (#152954,
1063 Mon Sep 20 00:17:37 2004 Matthias Clasen <maclas@gmx.de>
1065 * tests/option-test.c (error_test3_post_parse):
1066 * tests/option-test.c (error_test2_post_parse):
1067 * tests/option-test.c (error_test1_post_parse): Don't call
1068 g_set_error () with a NULL format. (#153103, Robert Ögren)
1070 Mon Sep 20 00:13:48 2004 Matthias Clasen <maclas@gmx.de>
1072 Make GOption remove long options completely. (#153113, Robert Ögren)
1074 * glib/goption.c (parse_long_option): Fix a wrong index.
1076 * tests/option-test.c (ignore_test3): Test handling of unknown
1079 Sun Sep 19 23:56:15 2004 Matthias Clasen <maclas@gmx.de>
1081 * glib/goption.c (g_option_context_parse): Call error_func
1082 on error, not post_parse_func again. (#153107, Robert Ögren)
1084 Sun Sep 19 23:52:35 2004 Matthias Clasen <maclas@gmx.de>
1086 * glib/gmessages.c (mklevel_prefix):
1087 * glib/gmessages.c (g_logv): Fix the types of some variables
1088 to be GLogLevelFlags instead of guint. (#153042, Philippe Blain)
1090 2004-09-18 Matthias Clasen <mclasen@redhat.com>
1094 * === Released 2.5.3 ===
1096 2004-09-17 Matthias Clasen <mclasen@redhat.com>
1098 * NEWS: More updates.
1100 Thu Sep 16 18:42:46 2004 Manish Singh <yosh@gimp.org>
1102 * glib/abicheck.sh: don't hardcode lengths for cut, instead split on
1105 Thu Sep 16 18:15:32 2004 Manish Singh <yosh@gimp.org>
1107 * glib/gstrfuncs.c (g_strncasecmp): Make it take a guint for number
1108 of characters, instead of a gsize. Technically this is incorrect,
1109 but this makes it match the prototype, and this is a deprecated
1112 2004-09-16 Matthias Clasen <mclasen@redhat.com>
1114 * glib/Makefile.am (EXTRA_DIST): Add abicheck.sh
1116 Thu Sep 16 02:03:15 2004 Matthias Clasen <maclas@gmx.de>
1118 Implement the same PLT reduction technique used in GTK+:
1120 * glib/glib.symbols: Master list of symbols
1122 * glib/makegalias.pl: Perl script which creates galias.h
1124 * glib/abicheck.sh: Compares actual exports against glib.symbols
1126 * glib/glib.def: Removed. This file is now generated from
1129 * glib/Makefile.am: Add rules to generate galias.h and glib.def,
1130 and add abicheck.sh to TESTS. Don't export _-prefixed symbols.
1132 * configure.in: Add --disable-visibility to suppress the
1133 use of ELF visibility attributes.
1135 * glib/*.c: Include galias.h
1137 2004-09-15 Tor Lillqvist <tml@iki.fi>
1139 * glib/gwin32.c (g_win32_error_message): Convert message to
1140 UTF-8. Technically this breaks API, but the actual use cases in
1141 gdk/win32 have assumed it is UTF-8 anyway. Fix
1142 documentation. (#152618, Kazuki Iwamoto)
1144 * glib/gwin32.h: Don't define ftruncate as a macro. Was never a
1145 good idea, and it clashes with newest mingw headers, which have a
1146 ftruncate implementation as an inline function. Thanks to Dominik R.
1148 * glib/gwin32.c (g_win32_ftruncate): Simplify implementation, just
1149 call _chsize() in the C library.
1151 2004-09-15 Matthias Clasen <mclasen@redhat.com>
1155 2004-09-09 Matthias Clasen <mclasen@redhat.com>
1157 * glib/gmessages.c (g_return_if_fail_warning): Strip the
1158 prefix "IA__" from function names, since that is what
1159 GTK+ uses for the PLT-reduction aliases.
1161 Thu Sep 9 13:52:26 2004 Owen Taylor <otaylor@redhat.com>
1163 * glib/gmessages.c (g_return_if_fail_warning):
1164 Include implementation of g_return_if_fail_internal().
1166 Thu Sep 9 10:37:41 2004 Owen Taylor <otaylor@redhat.com>
1168 * glib/gmessages.h (g_return_[val_]if_fail): Use
1169 a helper function to reduce code size; omit FILE/LINE
1170 when we have __PRETTY_FUNCTION__.
1172 2004-09-09 Matthias Clasen <mclasen@redhat.com>
1174 * glib/gutils.c (g_get_home_dir): Remove a misleading comment.
1176 Thu Sep 9 00:10:40 2004 Matthias Clasen <maclas@gmx.de>
1179 * glib/gstrfuncs.c (g_strv_length): Add a function to
1180 calculate the length of a NULL-terminated string
1181 array. (#150455, Tim-Philipp Müller)
1183 * tests/strfunc-test.c (main): Add a test for g_strv_length().
1185 2004-09-08 Tor Lillqvist <tml@iki.fi>
1187 * glib/gutils.c (guess_category_value): On Win32, as last resort
1188 call g_win32_getlocale() to get the current thread locale. There
1189 usually aren't any POSIXish LANG or LC_* environment variables
1190 present on Windows machines.
1192 * glib/glib.def: Add g_get_language_names.
1194 2004-09-07 Matthias Clasen <mclasen@redhat.com>
1197 * glib/gutils.c (g_get_language_names): Add a function to
1198 return a list of applicable locale names. (#95587,
1200 (guess_category_value, compute_locale_variants):
1201 (explode_locale, unalias_lang, read_aliases): Helper
1202 functions for g_get_language_names()
1204 * tests/testglib.c (main): Show the results of
1205 g_get_language_names()
1207 Sun Sep 5 01:46:11 2004 Matthias Clasen <maclas@gmx.de>
1211 * glib/gmessages.c (g_log_set_default_handler): New
1212 function to install an alternate default log
1213 handler. (#66387, Darin Adler)
1215 2004-09-03 Tor Lillqvist <tml@iki.fi>
1217 * glib/glib.def: Update.
1219 Wed Sep 1 20:22:39 2004 Matthias Clasen <maclas@gmx.de>
1222 * glib/gdate.c (g_date_get_iso8601_week_of_year): Add
1223 a function to calculate the ISO 8601 week number of
1224 a date. (#92579, Niklas Lundell)
1226 2004-09-01 Anders Carlsson <andersca@gnome.org>
1228 * glib/goption.c: (g_option_context_parse):
1229 Set program name before calling the pre-parse hooks.
1231 2004-09-01 Anders Carlsson <andersca@gnome.org>
1233 * glib/goption.c: (g_option_context_free), (print_help),
1234 (g_option_context_parse):
1235 Handle option contexts without a main group.
1237 * tests/option-test.c: (empty_test2), (main):
1238 Add test case for that.
1240 2004-08-30 Anders Carlsson <andersca@gnome.org>
1242 * glib/goption.c: (g_option_context_parse):
1243 Set prgname to <unknown> if argc and argv are NULL.
1245 * tests/option-test.c: (empty_test1), (main):
1246 Add test case for that.
1248 Sun Aug 29 23:58:38 2004 Matthias Clasen <maclas@gmx.de>
1250 * glib/ghash.c (g_hash_table_lookup): Point to
1251 g_hash_table_lookup_extended() for differentiation between
1252 not-found and value-is-NULL. (#150960, Morten Welinder)
1254 2004-08-27 Matthias Clasen <mclasen@redhat.com>
1256 Fix #151193, Stepan Kasal:
1258 * glib/gfileutils.c (g_file_error_from_errno):
1259 * glib/gfileutils.h (enum GFileError): Add G_FILE_ERROR_NOSYS.
1261 Fri Aug 27 00:45:41 2004 Matthias Clasen <maclas@gmx.de>
1263 * glib/goption.c (g_option_context_parse): Set the program name
1264 from argv[0], noticed by Masatake YAMATO.
1266 2004-08-26 Tor Lillqvist <tml@iki.fi>
1268 * tests/testglib.c (main): Test the new XDG basedir functions.
1270 2004-08-25 Tor Lillqvist <tml@iki.fi>
1272 * glib/gwin32.c (g_win32_get_windows_version): New
1273 function. Returns the Windows version code like GetVersion(),
1274 except that one can pretend to be running on Win9x by setting the
1275 G_WIN32_PRETEND_WIN9X environment variable. This is mainly for
1278 * glib/gwin32.h: Declare it. Define macros G_WIN32_WINDOWS_IS_NT_BASED
1279 and G_WIN32_HAVE_WIDECHAR_API to test Windows features at run-time.
1281 2004-08-25 Matthias Clasen <mclasen@redhat.com>
1283 * configure.in: Post-release version bump.
1285 * === Released 2.5.2 ===
1287 Wed Aug 25 00:25:08 2004 Matthias Clasen <maclas@gmx.de>
1289 * NEWS: Update for 2.5.2
1291 2004-08-25 Tor Lillqvist <tml@iki.fi>
1293 Win32 equivalences of the XDG folders
1295 * glib/gutils.c (get_special_folder): New function, calls
1296 SHGetSpecialFolderLocation() to get path to places like the My
1298 (g_get_any_init): Use CSIDL_PROFILE as HOME if not
1299 overridden by env vars.
1300 (g_get_user_data_dir): Use CSIDL_PERSONAL.
1301 (g_get_user_config_dir): Use CSIDL_APPDATA.
1302 (g_get_user_cache_dir): Use CSIDL_INTERNET_CACHE. Debatable...
1303 (g_get_system_data_dirs): Use CSIDL_COMMON_APPDATA and
1304 CSIDL_COMMON_DOCUMENTS.
1305 (g_get_system_config_dirs): Use CSIDL_COMMON_APPDATA.
1307 * configure.in: Add -lole32 to G_LIBS_EXTRA for mingw.
1309 * glib/glib.def: Add the new functions.
1311 Mon Aug 23 16:16:35 2004 Manish Singh <yosh@gimp.org>
1313 * glib/goption.c (g_option_group_add_entries): remove unused
1316 Mon Aug 23 01:35:18 2004 Matthias Clasen <maclas@gmx.de>
1318 * glib/gutils.c (g_get_user_cache_dir):
1319 * glib/gutils.c (g_get_user_config_dir):
1320 * glib/gutils.c (g_get_user_data_dir): Don't call g_get_home_dir()
1321 while holding the g_utils_global lock, simply use g_home_dir.
1322 (#150695, Jody Goldberg)
1324 2004-08-21 Tor Lillqvist <tml@iki.fi>
1326 * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
1327 break out of its loop. Prevents a thread leak. (#147392, Peter
1330 * glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
1331 return value from strxfrm(). For instance Microsoft's strxfrm()
1332 returns INT_MAX on errors. (#141124)
1334 2004-08-19 Tor Lillqvist <tml@iki.fi>
1336 * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): Correct
1337 source and destination charset parameter order in g_convert()
1338 call. (#150394, possibly also #141124)
1340 2004-08-20 Jon K Hellan <hellan@acm.org>
1342 * glib/goption.h: Remove trailing commas.
1344 2004-08-17 Matthias Clasen <mclasen@redhat.com>
1346 * configure.in: Check for all four values of the
1347 visibility attribute; gcc 2.96 seems to miss
1348 "default". (#150379, Vincent Noel)
1350 2004-08-16 Christian Rose <menthos@menthos.com>
1352 * configure.in: Added "bs" to ALL_LINGUAS.
1354 2004-08-11 Ray Strode <rstrode@redhat.com>
1356 * docs/reference/glib/glib-sections.txt:
1357 * glib/gutils.[ch] (g_get_user_data_dir),
1358 (g_get_user_config_dir), (g_get_user_cache_dir),
1359 (g_get_system_data_dirs), (g_get_system_config_dirs):
1360 Add new XDG basedir API (bug 139973).
1362 2004-08-10 Matthias Clasen <mclasen@redhat.com>
1364 * glib/gmacros.h: Remove G_GNUC_INTERNAL from here.
1365 * configure.in: Check whether the visibility attribute
1366 works and define G_HAVE_GNUC_VISIBILITY and
1367 G_GNUC_INTERNAL in glibconfig.h correspondingly.
1369 Mon Aug 9 17:37:56 2004 Matthias Clasen <maclas@gmx.de>
1371 * glib/gmacros.h (G_GNUC_INTERNAL): Define empty if gcc is too old.
1373 2004-08-06 Hans Breuer <hans@breuer.org>
1375 * glib/makefile.msc.in glib/glib.def : updated
1377 * glib/gutils.c : avoid 'inconsitent dll linkage' by not
1378 defining extern char** environ with msvc
1380 2004-08-06 Matthias Clasen <mclasen@redhat.com>
1382 * m4macros/glib-gettext.m4: Require ngettext. (#123847,
1385 Thu Aug 5 20:53:00 2004 Ray Strode <rstrode@redhat.com>
1387 * glib/gutils.h (g_get_codeset): strdup result so caller
1388 doesn't free internally managed memory.
1390 2004-08-04 Tor Lillqvist <tml@iki.fi>
1392 * glib/glib.def: Add glib_check_version.
1394 * config.h.win32.in: Update to match what configure produces. Add
1395 the G_ATOMIC_*. Define G_ATOMIC_I486 when compiling with gcc. Move
1396 HAVE_INT64_AND_I64 to where the configure script puts it. Add
1397 HAVE_INTTYPES_H_WITH_UINTMAX. Define intmax_t as __int64 for MSVC.
1399 Tue Aug 3 16:19:44 2004 Matthias Clasen <maclas@gmx.de>
1401 * glib/goption.c: Mark user visible strings for translation.
1403 Tue Aug 3 15:50:55 2004 Matthias Clasen <maclas@gmx.de>
1405 * glib/goption.[hc]: Pedantically use g types throughout.
1407 Tue Aug 3 14:58:20 2004 Matthias Clasen <maclas@gmx.de>
1410 * glib/gutils.c (glib_check_version): New function to
1411 check the version of GLib at runtime. (#149175, Michael Natterer)
1413 2004-08-03 Anders Carlsson <andersca@gnome.org>
1417 Move GTranslateFunc to gtypes.h
1419 2004-08-02 Anders Carlsson <andersca@gnome.org>
1426 * tests/Makefile.am:
1427 * tests/option-test.c:
1430 2004-08-02 Matthias Clasen <mclasen@redhat.com>
1432 * glib/gmacros.h: Add a G_GNUC_INTERNAL macro to mark function
1433 declarations as internal and avoid PLT indirections for
1434 them. (#145465, Arjan van de Ven)
1436 * glib/gunicodeprivate.h:
1437 * glib/gthreadinit.h:
1440 * glib/gconvert.c: Use G_GNUC_INTERNAL for _g_charset_get_aliases(),
1441 _g_debug_init(), _g_log_fallback_handler(), _g_mem_thread_init(),
1442 _g_messages_thread_init(), _g_convert_thread_init(),
1443 _g_rand_thread_init(), _g_main_thread_init(), _g_atomic_thread_init(),
1444 _g_mem_thread_private_init(), _g_messages_thread_private_init(),
1445 _g_utf8_normalize_wc() and _g_unichar_combining_class().
1447 * glib/gatomic.c: Include gthreadinit.h here to see the declaration
1448 for _g_atomic_thread_init().
1450 Sun Aug 1 13:19:18 2004 Manish Singh <yosh@gimp.org>
1452 * tests/uri-test.c: move newline printing from run_from_uri_tests()
1453 to run_roundtrip_tests().
1455 2004-08-01 Matthias Clasen <mclasen@redhat.com>
1457 * Post-release version bump
1459 * === Released 2.5.1 ===
1461 Sat Jul 31 23:17:05 2004 Matthias Clasen <maclas@gmx.de>
1465 Sat Jul 31 20:33:07 2004 Matthias Clasen <maclas@gmx.de>
1467 * tests/shell-test.c: Include a test involving consecutive
1468 backslashes followed by a non-escaped doublequote.
1470 * glib/gshell.c (tokenize_command_line): Count consecutive
1471 backslashes mod 2 to detect escaped doubleqotes. (#127306)
1473 2004-07-30 Matthias Clasen <mclasen@redhat.com>
1475 * glib/gconvert.c (g_unescape_uri_string): Don't validate
1476 for UTF-8 here. (#148420, Robert Ögren)
1478 * tests/uri-test.c (run_roundtrip_tests): Add tests for
1479 roundtrip compatibility. Going from filename to uri and
1480 back should always give you the same filename back.
1482 2004-07-28 Matthias Clasen <mclasen@redhat.com>
1484 * tests/markups/valid-{9,10,11}.gmarkup:
1485 * tests/markups/fail-{37,38,39}.gmarkup: Tests for handling
1486 of whitespace inside tags.
1488 * glib/gmarkup.c (enum GMarkupParseState): Add
1489 STATE_AFTER_ATTRIBUTE_NAME and STATE_AFTER_CLOSE_TAG_NAME.
1490 (g_markup_parse_context_parse): Accept whitespace between
1491 attribute names, '=' and attribute values and between
1492 close tag name and '>'. (#148646, Hiroyuki Ikezoe)
1494 Tue Jul 27 02:01:31 2004 Matthias Clasen <maclas@gmx.de>
1496 * glib/gstrfuncs.c (g_strsplit_set): s/g_strsplit/g_strsplit_set/
1499 Sat Jul 24 17:50:07 2004 Soeren Sandmann <sandmann@daimi.au.dk>
1501 * glib/gstrfuncs.c (g_strsplit_set):
1502 s/g_strtokenize/g_strsplit_set/ in docs.
1504 Fri Jul 23 10:37:50 2004 Matthias Clasen <maclas@gmx.de>
1506 * tests/type-test.c (main): Actually test G_MAXSIZE with
1509 2004-07-21 Matthias Clasen <mclasen@redhat.com>
1511 Fix #132858, Sven Neumann, patch by James Henstridge:
1513 * glib-gettextize.in: modify so that mkinstalldirs will
1514 get installed into auxdir.
1516 * Makefile.am (gettext_SCRIPTS): install mkinstalldirs.
1518 2004-07-21 Matthias Clasen <mclasen@redhat.com>
1520 Fix #147651, reported by Oliver Guntermann:
1522 * glib/gprintfint.h (_g_vasprintf): Don't wrap vasprintf(),
1523 _g_gnulib_vasprintf() in a macro, since they behave
1524 differently wrt. to memory allocation.
1526 * glib/gprintf.c (g_vasprintf): Instead, differentiate
1527 here between the three cases: system vasprintf(),
1528 _g_gnulib_vasprintf(), no vasprintf().
1530 2004-07-20 Crispin Flowerday <gnome@flowerday.cx>
1532 * NEWS: Fix a typo in my name
1534 Tue Jul 20 04:31:40 2004 Soeren Sandmann <sandmann@daimi.au.dk>
1536 * configure.in: Bump version number
1538 Sun Jul 18 19:40:30 2004 Soeren Sandmann <sandmann@daimi.au.dk>
1540 * === Released 2.5.0 ===
1542 * Makefile.am (BUILT_EXTRA_DIST): move gtk-doc.make here.
1544 Sun Jul 18 01:40:28 2004 Matthias Clasen <maclas@gmx.de>
1546 * NEWS: Updates for 2.5.0
1548 Mon Jul 12 00:02:40 2004 Matthias Clasen <maclas@gmx.de>
1550 * glib/gi18n-lib.h: Remove the ENABLE_NLS check here as well.
1552 2004-07-09 Matthias Clasen <mclasen@redhat.com>
1554 * glib/gdir.c (g_dir_open): Convert filename to UTF-8
1555 before using it in the error message. (#146054, Federico
1558 Thu Jul 8 00:54:32 2004 Matthias Clasen <maclas@gmx.de>
1560 * glib/gi18n.h: Remove the ENABLE_NLS check, since GLib can't
1561 be built without anyway. (#135899, Murray Cumming)
1563 Mon Jul 5 18:50:27 2004 Matthias Clasen <maclas@gmx.de>
1565 * glib/gmessages.h (g_debug): Complete the g_log()
1566 family. (#135730, Sven Herzberg)
1568 Mon Jul 5 18:42:30 2004 Matthias Clasen <maclas@gmx.de>
1570 * glib/gnulib/Makefile.am (INCLUDES): Add top_srcdir to
1571 make srcdir != . work. (#145166, Kaz Sasayama)
1573 Sun Jul 4 01:52:18 2004 Matthias Clasen <maclas@gmx.de>
1575 * configure.in: Use a small test library instead of
1576 libpthread.so for testing RTLD_GLOBAL brokenness. (#139567,
1577 Julio M. Merino Vidal)
1579 2004-07-02 Sebastian Wilhelmi <seppi@seppi.de>
1581 * glib/gatomic.c: Rename __asm to __asm__ and __volatile to
1582 __volatile__ to make the file consistent. Spotted by Benoit
1583 Carpentier <gtkool_2kx@yahoo.fr>.
1585 2004-07-01 John Ehresman <jpe@wingide.com>
1587 * glib/giowin32.c (g_io_channel_win32_init, g_io_win32_free)
1588 Initialize reset_send & reset_recv fields and don't close
1589 sockets unless they were created. (#145153)
1591 Fri Jun 11 22:56:46 2004 Matthias Clasen <maclas@gmx.de>
1593 * glib/gscanner.c (g_scanner_get_token_ll): Ignore a
1594 missing newline at EOF for single line comments.
1595 (#83674, Sven Neumann)
1597 Thu Jun 10 23:38:02 2004 Matthias Clasen <maclas@gmx.de>
1599 * tests/printf-test.c (TEST): Actually set any_failed on
1600 failure. (#143552, Philippe Blain)
1602 2004-06-09 Federico Mena Quintero <federico@ximian.com>
1604 * tests/uri-test.c (to_uri_tests): Fix expected results (ha ha)
1605 for URIs that *should* have been invalid, or viceversa.
1606 (from_uri_tests): Likewise.
1608 2004-06-07 Federico Mena Quintero <federico@ximian.com>
1612 * glib/gconvert.c (is_asciialphanum): Renamed from
1613 is_escalphanum(); ensures that this is an ASCII character.
1614 (is_asciiescalpha): Renamed from is_escalpha().
1615 (hostname_validate): Use the two functions above.
1616 (g_filename_to_uri): Don't convert the filename to UTF-8.
1617 (g_filename_from_uri): Don't convert the filename from UTF-8.
1619 Mon Jun 7 22:25:24 2004 Matthias Clasen <maclas@gmx.de>
1621 * tests/run-markup-tests.sh: Default to silence, but support
1622 a -v argument to get the old output back.
1624 2004-06-06 Tor Lillqvist <tml@iki.fi>
1626 * glib/gutils.c (g_get_any_init): Check home for being
1627 NULL. (#143812, Ivan Wong)
1629 Sun Jun 6 15:23:00 2004 Pawan Chitrakr <pawan@nplinu.org>
1631 * configure.in: Added "ne" (Nepali) in ALL_LINGUAS
1633 Fri Jun 4 19:26:47 2004 Manish Singh <yosh@gimp.org>
1635 * glib/galloca.h: cpp #directives should always have the "#" in the
1636 first column of the the line. Do that for "#pragma alloca". Fixes
1639 Wed Jun 2 00:57:16 2004 Matthias Clasen <maclas@gmx.de>
1641 * glib/gtypes.h: Use higher precision for the mathematical
1642 constants. (#141941, Morten Welinder)
1644 Tue Jun 1 22:01:40 2004 Matthias Clasen <maclas@gmx.de>
1646 * glib/gmarkup.c (advance_char): Fix an off-by-one error
1647 in g_markup_parse_context_parse(). (#142794, Morten Welinder)
1649 Sun May 16 23:23:29 2004 Matthias Clasen <maclas@gmx.de>
1653 * glib/gcompletion.c (g_completion_add_items):
1654 (g_completion_remove_items): Remove unnecessary
1655 checks. (#142559, Morten Welinder)
1657 2004-05-15 Tor Lillqvist <tml@iki.fi>
1659 * glib/gutils.c (g_get_any_init): [Win32] Only believe HOME if it
1660 is an absolute path and exists. (#138618)
1662 2004-05-14 Tor Lillqvist <tml@iki.fi>
1664 * glib/gnulib/vasnprintf.c (vasnprintf): Handle empty digit string
1665 for precision correctly. (#142400)
1667 For backward compatibility with the Trio implementation, make "ll"
1668 format modifer work on Win32, too. Change into "I64" before
1669 passing to the system printf. (#142433)
1671 * tests/printf-test.c (main): Add tests for the above.
1673 2004-05-10 Matthias Clasen <mclasen@redhat.com>
1677 * glib/gmain.c (block_source, unblock_source): Make these
1678 static. (#142230, Morten Welinder)
1680 2004-05-10 Tor Lillqvist <tml@iki.fi>
1682 * glib/giowin32.c (g_win32_print_gioflags): Remove two duplicated
1683 lines. Thanks to Benoît Carpentier.
1685 Sun May 9 02:04:14 2004 Matthias Clasen <maclas@gmx.de>
1689 * glib/guniprop.c (g_utf8_casefold): Avoid an unnecessary
1690 memleak. (#141998, Nikolai Weibull)
1692 Sat May 8 23:02:26 2004 Matthias Clasen <maclas@gmx.de>
1696 * glib/gutils.h: Remove vestigial g_get_codeset().
1697 * glib/gutils.c (g_get_codeset): Call g_get_charset().
1698 (#137703, Owen Taylor)
1700 2004-05-06 Matthias Clasen <mclasen@redhat.com>
1702 * configure.in: Bump version number to 2.5.0.
1704 Wed May 5 23:35:44 2004 Matthias Clasen <maclas@gmx.de>
1706 * glib/gconvert.c (g_filename_from_uri): Quote the file
1707 scheme to mark it as untranslatable. String change.
1708 (#133144, Danilo Segan)
1710 2004-05-03 Pablo Saratxaga <pablo@mandrakesoft.com>
1712 * configure.in: Added Walloon (wa) to ALL_LINGUAS
1714 Sun May 2 03:51:59 2004 Manish Singh <yosh@gimp.org>
1716 * glib/gtypes.h: check for __pentium4__ when deciding whether to
1717 use bswap for GUINT32_SWAP_LE_BE_IA32(). Fixes bug #141620.
1719 2004-05-01 Hans Breuer <hans@breuer.org>
1721 * glib/gnulib/Makefile.am : added makefile.msc to EXTRA_DIST
1722 fixes #141563, Steve Lhomme
1724 2004-04-30 Matthias Clasen <mclasen@redhat.com>
1726 * === Released 2.4.1 ===
1728 * configure.in: Version 2.4.1, interface age 1.
1732 2004-04-25 Tor Lillqvist <tml@iki.fi>
1734 * glib/gwin32.c (g_win32_get_package_installation_subdirectory):
1735 Plug memory leak. (#140770, John Ehresman)
1737 2004-04-23 Matthias Clasen <mclasen@redhat.com>
1739 * glib/libcharset/localcharset.c (_g_locale_get_charset_aliases):
1740 Reinstate LIBCHARSET_ALIAS_DIR support which got lost at some
1741 point. (#139134, Piotr Klaban)
1743 * glib/gconvert.c (open_converter): Don't call g_strerror() here,
1744 since it can lead to infinite recursion. (#139133, Piotr Klaban)
1746 2004-04-22 Matthias Clasen <mclasen@redhat.com>
1748 * tests/testglib.c (main): Trivial warning fix. (#140345)
1750 * tests/queue-test.c (main): Add some tests for off-by-one errors.
1752 * glib/gqueue.c (g_queue_pop_nth_link): Fix an off-by-one
1753 error. (#139703, Philippe Blain)
1755 * tests/testglib.c (main): Add testcases for g_message() involving
1756 non-printable and unsafe characters.
1758 * glib/gmessages.c (escape_string): Don't assume that
1759 string->str remains unchanged over g_string_insert()
1760 calls. (#139030, Christophe Saout)
1762 * glib/gstrfuncs.c (g_ascii_strtod): Fix problems when a
1763 locale-specific decimal separator directly follows a
1764 number. (#138424, Nickolay V. Shmyrev)
1766 * tests/strtod-test.c (main): Add some more testcases.
1768 * glib/gmain.c (g_main_context_query): Only set time_is_current to
1769 FALSE if context->timeout is not zero. (#137795, Christian Krause)
1771 2004-04-21 Matthias Clasen <mclasen@redhat.com>
1773 * tests/printf-test.c (main): Comment out a nonessential testcase
1774 which fails on HP-UX. (#136283, Jonas Jonsson)
1776 2004-04-15 Matthias Clasen <mclasen@redhat.com>
1778 * tests/patterntest.c (main): Add tests for the empty pattern.
1780 * glib/gpattern.c (g_pattern_spec_new): Don't read and write out
1781 of bounds when the pattern is empty. (#140032, Stanislav Brabec,
1784 2004-04-10 Tor Lillqvist <tml@iki.fi>
1786 * glib/gwin32.c (g_win32_getlocale): Add new language and
1787 sublanguage codes, from GNU gettext. (#137958)
1792 * glib/gthread.c: Decorating variable definitions with
1793 __declspec(dllexport) causes problems on Cygwin build, and isn't
1794 really needed for a native Win32 build with mingw or MSVC, so
1795 remove. (#138402, Roger Leigh)
1797 * glib/libcharset/localcharset.c: Use Win32-specific code also on
1799 * tests/uri-test.c: Don't assume that local filenames are in UTF-8
1800 on Cygwin, either. (#138412, Roger Leigh)
1802 2004-04-08 Guntupalli Karunakar <karunakar@freedomink.org>
1804 * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
1806 2004-04-03 Tor Lillqvist <tml@iki.fi>
1808 * configure.in: Remove AC_CYGWIN, obsolete. Don't let pthreads be
1809 found on Cygwin, they don't work. (#138401, Roger Leigh)
1811 2004-03-31 Tor Lillqvist <tml@iki.fi>
1813 * tests/spawn-test-win32-gui.c: Minor Cygwin fix. (#138405, Roger
1816 * tests/unicode-encoding.c (process): Use UTF-16LE explicitly also
1817 on Cygwin. (#138423, Roger Leigh)
1819 2004-03-30 Adam Weinberger <adamw@gnome.org>
1821 * configure.in: Added en_CA to ALL_LINGUAS.
1823 2004-03-21 Tor Lillqvist <tml@iki.fi>
1825 * glib/gutils.c (g_path_get_dirname): Fix Win32 behaviour in some
1826 cases where a drive letter is present. For 'a:' or 'a:foo', return
1827 'a:.'. This is mostly just for consistency with the behaviour
1828 without a drive letter. But very important is to for 'a:\foo' or
1829 'a:\', return 'a:\', and not 'a:'. (Ditto for forward slashes
1830 instead of backslashes.) (#137316)
1832 * tests/dirname-test.c (main): More complete testing on Win32. If
1833 a test fails, include expected and actual result in error message.
1835 Fri Mar 19 15:21:09 2004 Owen Taylor <otaylor@redhat.com>
1837 * glib/gmain.c: Fix the accidental revert of the
1838 fixes from #112222 that happened when the GChildWatch
1839 code was added. (Caught by Christian Persch)
1841 Fri Mar 19 11:07:06 2004 Owen Taylor <otaylor@redhat.com>
1843 * tests/atomic-test.c (main): Make computation
1844 of "biggest_pointer" vaguely more portable.
1845 (#137498, Jonas Jonsson)
1847 2004-03-16 Tor Lillqvist <tml@iki.fi>
1849 * configure.in: Define HAVE_INT64_AND_I64 also in the mingw (gcc
1850 on Win32) case, where the 64-bit type is called long long, but the
1851 system printf/scanf format modifier for 64-bit integers is still I64.
1853 2004-03-16 Gareth Owen <gowen72@yahoo.com>
1855 * configure.in: Added en_GB to ALL_LINGUAS