1 2005-01-09 Tor Lillqvist <tlillqvist@novell.com>
3 * glib/gwin32.c (g_win32_error_message): Fix cast. (#163133, Roger
6 * glib/gfileutils.c: Include <io.h> on Windows for
7 prototypes. (#163390, Kazuki Iwamoto)
9 2005-01-07 Matthias Clasen <mclasen@redhat.com>
13 * configure.in: Bump version
15 * === Released 2.6.1 ===
17 2005-01-07 Matthias Clasen <mclasen@redhat.com>
20 * Makefile.am: Generate and distribute gmodule-export-2.0.pc,
21 which is currently just a copy of gmodule-2.0.pc, but makes
22 it explicit that it adds --export-dynamic.
24 * gmodule-export-2.0.pc.in: Copy of gmodule-2.0.pc.in.
26 2005-01-06 Tor Lillqvist <tml@iki.fi>
29 * gobject/Makefile.am: glib.def and gobject.def are generated, not
30 in $(srcdir). (#163143, J. Ali Harlow)
34 * gobject/Makefile.am: Win32 cross-compilation fixes. (#163144,
37 2005-01-05 Matthias Clasen <mclasen@redhat.com>
39 * glib/gutils.h: Simplify the inlining magic to make it
40 work at Oh zero. (#162990, Kalpesh Shah)
42 2005-01-04 Tor Lillqvist <tml@iki.fi>
44 * glib/guniprop.c (get_locale_type): Use g_win32_getlocale()
45 instead of setlocale() on Windows. setlocale() returns strings
46 like "Turkish_Turkey".
48 2005-01-04 Matthias Clasen <mclasen@redhat.com>
50 Fix the inlining magic. (#157536, Jens Hatlak, and
51 #149907, Morten Welinder)
53 * configure.in: Define G_CAN_INLINE in glibconfig.h
55 * glib/gutils.h: Streamline the inlining magic a bit,
56 don't use extern when implementing the non-inlined
59 2005-01-03 Matthias Clasen <mclasen@redhat.com>
61 * glib/gutils.c (g_find_program_in_path): Don't return
62 directories. (#160738, Tommi Komulainen)
64 * glib/gfileutils.c (g_file_get_contents): Clarify the
65 documentation. (#162251, Mariano Suárez-Alvarez)
67 2005-01-02 Matthias Clasen <mclasen@redhat.com>
69 * glib/gutils.c (g_setenv, g_unsetenv): Clarify the
70 docs. (#162747, Crispin Flowerday)
72 2005-01-01 J. Ali Harlow <ali@juiblex.co.uk>
74 * configure.in: Don't use AC_TRY_RUN to test for long long format
75 when using the MSVCRT.DLL runtime since we know the answer anyway
76 and it causes some mild inconvience when cross compiling.
78 * README.win32: Add a reference to the cross compiling section
79 of the reference manual.
81 * docs/reference/glib/cross.sgml: MinGW uses MSVCRT.DLL which
82 requires %I64i instead of %lli. (#161306)
84 2005-01-01 Tor Lillqvist <tml@iki.fi>
86 * glib/gutils.c: Make the g_getenv() ABI backward compatibility
89 2005-01-01 Tor Lillqvist <tml@iki.fi>
93 * glib/gutils.c: Make also g_getenv(), g_setenv(), g_unsetenv()
94 and g_find_program_in_path() take and return UTF-8 strings on
95 Win32. Implement DLL ABI backward compatility for them, too. Move
96 all the DLL ABI stability wrappers to the end of the file. Use
97 wide character API when available in inner_find_program_in_path().
99 * glib/gfileutils.c: With the UTF-8ness of g_getenv() above, just
100 use g_getenv() to get PATHEXT. (Yeah, it's probably overdoing it
101 to consider somebody actually having anything else than ASCII
104 2004-12-31 Tor Lillqvist <tml@iki.fi>
106 * glib/gfileutils.c (g_file_test): Rewrite the Win32 version to
107 use GetFileAttributes() instead of stat(). stat() is unreliable
108 for corner cases like '\\server\share' or '.\'. Part of fixing
109 #161797. When testing for executability, in addition to the fixed
110 set of executable file name extensions also check the PATHEXT
111 environment variable.
113 2004-12-30 Tor Lillqvist <tml@iki.fi>
115 * glib/gutils.c (g_get_current_dir): In the Win32 version, use
116 GetCurrentDirectory() directly for simpler buffer length
117 management. I don't trust getcwd() getting it right all the time.
119 2004-12-30 Matthias Clasen <mclasen@redhat.com>
121 * glib/gfileutils.c (g_file_test): Typo fix.
123 2004-12-30 Tor Lillqvist <tml@iki.fi>
125 * glib/gutils.c (g_path_skip_root): Require UNC paths to start
126 with exactly two slashes.
127 (g_get_current_dir): Use wide character API when available.
128 (g_path_get_dirname): Handle UNC paths better. Part of fix for
131 2004-12-27 Matthias Clasen <mclasen@redhat.com>
133 * configure.in: Add an OS_LINUX conditional.
135 * glib/Makefile.am (TESTS): Only check the ABI on
136 linux, since the shell script is not portable, and libtool
137 deficiencies may distort the ABI on other platforms. (#161741)
139 2004-12-21 Matthias Clasen <mclasen@redhat.com>
141 * glib/goption.c (print_entry): Don't show
142 the special G_OPTION_REMAINING entry. (#161934,
145 2004-12-20 Tor Lillqvist <tml@iki.fi>
147 * glib/gconvert.c (g_locale_to_utf8, g_filename_to_uri): Improve
150 2004-12-20 Matthias Clasen <mclasen@redhat.com>
152 * tests/option-test.c: Add some tests for '--'
155 * glib/goption.c (g_option_context_parse): Don't
156 strip '--' if it would be needed by a second option
159 * glib/gunicollate.c (g_utf8_collate): Make docs
160 more accurate. (#161683, Marcin Krzyzanowski)
162 2004-12-19 Matthias Clasen <mclasen@redhat.com>
164 * glib/goption.c (g_option_context_parse): Call
165 post-parse hooks also if argv is NULL. (#161668,
168 2004-12-16 Matthias Clasen <mclasen@redhat.com>
170 * configure.in: Bump version
172 * === Released 2.6.0 ===
174 2004-12-15 Alexander Larsson <alexl@redhat.com>
176 * glib/gconvert.c: (g_filename_display_basename):
178 Add g_return_val_if_fail.
181 Add g_filename_display_basename
183 2004-12-15 Alexander Larsson <alexl@redhat.com>
185 * glib/gconvert.[ch]:
186 Add g_filename_display_basename.
188 2004-12-14 Matthias Clasen <mclasen@redhat.com>
194 * configure.in: Set version to 2.6.0
196 2004-12-13 Tor Lillqvist <tml@iki.fi>
201 * glib/gstdio.[ch]: Add g_rmdir().
203 2004-12-13 Matthias Clasen <mclasen@redhat.com>
207 2004-12-12 Tor Lillqvist <tml@iki.fi>
210 * glib/gconvert.[ch]: Implement Windows DLL ABI stability also for
211 g_filename_{to,from}_uri().
213 2004-12-11 Tor Lillqvist <tml@iki.fi>
215 * glib/gstdio.c (g_rename, g_unlink, g_remove): Add doc comments
216 about Windows restrictions on renaming and removing.
218 (g_remove): Mimic POSIX remove() on Windows: Try also to rmdir if
219 removal as a file fails. Document this.
221 * glib/gstdio.h: Clarify comment about file name encoding on
224 * glib/gspawn-win32.c: Fix #157255. Also some refactoring of this
225 still very ugly source file.
227 2004-12-09 Matthias Clasen <mclasen@redhat.com>
229 * glib/goption.c (print_help): Don't print help options
230 if the options of a specific group have been
231 requested. (#160645, Glynn Foster)
233 2004-12-07 Matthias Clasen <mclasen@redhat.com>
235 * glib/gutils.c (g_get_language_names): Update the returned
236 value after locale changes. (#160271, Christian Persch)
237 (_g_utils_thread_init): Initialize the language name cache
238 before going threaded.
240 * glib/gthread.c (g_thread_init_glib): Call _g_utils_thread_init().
242 * glib/gthreadinit.h: Add _g_utils_thread_init().
244 2004-12-06 Tor Lillqvist <tml@iki.fi>
246 * glib/giowin32.c (g_io_win32_finalize): Fix a write to freed
247 memory: Unlock the channel's mutex before unrefing the channel.
249 2004-12-06 Matthias Clasen <mclasen@redhat.com>
251 * configure.in: Remove a no longer needed hack for
252 libtool < 1.5.2. (#100697, Owen Taylor, Sebastian Wilhelmi)
254 2004-12-05 Tor Lillqvist <tml@iki.fi>
257 * glib/gwin32.[hc]: Implement DLL ABI stability also for
258 g_win32_get_package_installation_directory()) and
259 g_win32_get_package_installation_subdirectory().
261 * glib/Makefile.am (install-libtool-import-lib): Remove the DLL
262 binary compatibilty entries from the import library. They aren't
263 used by newly compiled code, so no need to have them in the import
264 library. (The "PRIVATE" keyword in the .def file is supposed to do
265 this, but not implemented in the GNU linker yet.)
267 2004-12-04 Matthias Clasen <mclasen@redhat.com>
269 * glib/gqueue.c (g_queue_link_index): Return -1 if queue is
270 NULL. (#159530, Philippe Blain)
272 2004-12-02 Matthias Clasen <mclasen@redhat.com>
274 * configure.in: Bump version.
276 * === Released 2.5.7 ===
278 2004-12-02 Matthias Clasen <mclasen@redhat.com>
280 * glib/glib.symbols: Protect the the various push/pop allocator
281 functions by #ifndef DISABLE_MEM_POOLS. (#160215, Frederic Crozat)
283 * glib/makegalias.pl: Support #ifndef'ed sections.
285 * glib/gutils.c (g_get_system_config_dirs): Don't forget to
286 initialize g_system_config_dirs. (#160213, Frederic Crozat)
288 Wed Dec 1 17:04:37 2004 Manish Singh <yosh@gimp.org>
290 * glib/gstring.h (g_string_append_c_inline): actually enable (and
291 fix up the length test).
293 2004-11-30 Tor Lillqvist <tml@iki.fi>
295 * glib/Makefile.am (glib.def): gcc -E complains "linker input file
296 unused because linking not done" if told to preprocess the
297 glib.symbols file. Use '-' and redirection to pass it as standard
300 2004-11-30 Matthias Clasen <mclasen@redhat.com>
304 2004-11-30 Tor Lillqvist <tml@iki.fi>
306 * glib/gspawn-win32-helper.c (WinMain): Also check errno to detect
307 true errors from spawn*(). (#157258, reported by Bruce Hochstetler)
309 2004-11-29 Matthias Clasen <mclasen@redhat.com>
311 * glib/gmacros.h (G_GNUC_MALLOC): Define empty for gcc 2.95.
313 * glib/gmarkup.c (unescape_text_state_after_charref_hash):
314 Avoid a strndup() here, noticed by Morten Welinder.
316 2004-11-29 Matthias Clasen <mclasen@redhat.com>
318 * glib/gmarkup.c: Remove leftover noinline attributes.
319 (is_name_start_char, is_name_char): Avoid possible reads
320 beyond the end of g_ascii_table.
322 * glib/Makefile.am: Use the perl found by configure. (#149826,
325 Sun Nov 28 13:13:56 2004 Manish Singh <yosh@gimp.org>
327 * glib/abicheck.sh: filter G_GNUC before PRIVATE so $ is still true.
329 * tests/utf8-validate.c: cast pointer math to gint for error print
332 Sun Nov 28 12:07:29 2004 Manish Singh <yosh@gimp.org>
334 * tests/utf8-validate.c: minor comment fix.
336 2004-11-28 Matthias Clasen <mclasen@redhat.com>
343 * glib/gutils.h: Mark functions with G_GNUC_MALLOC when appropriate.
345 * glib/glib.symbols: Add G_GNUC_MALLOC annotations.
347 * glib/gmacros.h (G_GNUC_MALLOC): Add a macro for
348 __attribute__((__malloc__)). (#61780)
350 2004-11-28 Tor Lillqvist <tml@iki.fi>
353 * glib/glib.symbols: [Win32] Make also g_get_user_name() and
354 g_get_real() name return UTF-8. As for the similar changes to fix
355 #101792, for DLL ABI stability we use preprocessor defines to get
356 the new UTF-8 versions, and keep the old names for versions
357 returning strings in the system codepage.
359 Fix g_get_tmp_dir() and g_get_home_dir() to actually return UTF-8
360 as was intended in the fix for bug #101792. (#159664, noticed by
363 2004-11-28 Matthias Clasen <mclasen@redhat.com>
365 * glib/gmarkup.c: Optimizations; don't scan the entire text
366 in find_current_text_end(), split unescape_text() into multiple
367 functions. (#159001, Havoc Pennington)
369 2004-11-27 Matthias Clasen <mclasen@redhat.com>
371 * glib/gspawn.c (g_spawn_async_with_pipes): Update the @flags
372 documentation with references to GChildWatch and
373 g_spawn_close_pid(). (#136255, noted by Owen Taylor)
375 2004-11-26 Matthias Clasen <mclasen@redhat.com>
377 * glib/gkeyfile.c (g_key_file_parse_value_as_string):
378 Don't access invalid memory address if p wasn't
379 increased. (#159557, Frederic Crozat)
381 2004-11-25 Matthias Clasen <mclasen@redhat.com>
383 * tests/strtod-test.c (main): Add a testcase for the previous fix.
385 * glib/gstrfuncs.c (g_ascii_strtod): Make it work again for floats
386 starting with a decimal point, like .75 (#156421, Hans Breuer)
388 Thu Nov 25 14:02:43 2004 Manish Singh <yosh@gimp.org>
390 * glib/abicheck.sh: filter out G_GNUC stuff when doing the compare.
392 * glib/gmessages.c (g_assert_warning): call abort() at the end, so
395 2004-11-25 Kjartan Maraas <kmaraas@gnome.org>
397 * configure.in: Add «nb» to ALL_LINGUAS.
399 2004-11-24 Tor Lillqvist <tml@iki.fi>
401 * glib/gwin32.c (g_win32_error_message,
402 get_package_directory_from_module,
403 g_win32_get_package_installation_directory,
404 g_win32_get_package_installation_subdirectory): Use wide character
405 API when available. Document that string parameters and return
408 2004-11-24 Matthias Clasen <mclasen@redhat.com>
410 * glib/gutf8.c: Replace g_utf8_validate() with an
411 optimized version, and clarify the docs a bit. (#159131,
414 * tests/Makefile.am (test_programs): Add utf8-validate.
416 * tests/utf8-validate.c: Unit tests for g_utf8_validate().
418 2004-11-23 Matthias Clasen <mclasen@redhat.com>
420 * glib/goption.h: Don't mark g_option_error_quark() as const,
421 to be consistent with all the other error_quark functions.
422 (technically they are const, but since these are called only
423 in error paths, giving the compiler better optimization
424 opportunities doesn't matter much)
426 2004-11-23 Matthias Clasen <mclasen@redhat.com>
428 Fix a problem with the PLT reduction changes which caused the
429 internal aliases to lose all attributes.
431 * glib/glib.symbols: Add attribute annotations.
432 * glib/makegalias.pl: Keep attribute annotations, but strip PRIVATE.
433 * glib/Makefile.am (glib.def): Strip attribute annotations, but keep
436 2004-11-21 Hans Breuer <hans@breuer.org>
438 * **/makefile.msc : updated
440 2004-11-16 Matthias Clasen <mclasen@redhat.com>
442 * m4macros/glib-2.0.m4 (AM_PATH_GLIB_2_0): Support gmodule-no-export.
444 * Makefile.am (EXTRA_DIST):
445 * configure.in (AC_CONFIG_FILES): Add gmodule-no-export-2.0.pc.in
447 * gmodule-no-export-2.0.pc.in: Add a variants of gmodule-2.0.pc.in
448 which doesn't add -Wl,--export-dynamic, since Pango or GTK+ don't
449 need it. (#125627, Owen Taylor)
451 2004-11-17 Matthias Clasen <mclasen@redhat.com>
453 * glib/gkeyfile.c: Define S_ISREG() on windows, since it
454 is not present there. (#158469, Kazuki IWAMOTO)
456 2004-11-15 Matthias Clasen <mclasen@redhat.com>
458 * glib/gkeyfile.c (g_key_file_load_from_fd): Use S_ISREG(), since
459 S_IFMT and S_IFREG are apprarently missing on some systems (they
460 are SUS, but not Posix). (#158263)
462 2004-11-12 Matthias Clasen <mclasen@redhat.com>
464 * configure.in: Bump version.
466 * === Released 2.5.6 ===
468 2004-11-11 J. Ali Harlow <ali@juiblex.co.uk>
470 * gobject/Makefile.am:
471 * glib/Makefile.am (gtk.def): Use embedded tab rather than '\t'
472 escape sequence. (#157951)
474 2004-11-10 Tor Lillqvist <tml@iki.fi>
476 * glib/gconvert.c (g_get_filename_charsets): Fix typo in doc
479 2004-11-10 Matthias Clasen <mclasen@redhat.com>
483 Mon Nov 8 10:45:50 2004 Manish Singh <yosh@gimp.org>
487 * glib/giochannel.c: g_return_if_fail -> g_return_val_if_fail
489 * glib/gmain.c: Ditto, plus also make g_main_context_ref() actually
490 return the passed in pointer.
492 2004-11-08 Matthias Clasen <mclasen@redhat.com>
494 * glib/gnode.h (enum GTraverseFlags): Add G_TRAVERSE_LEAVES
495 and G_TRAVERSE_NON_LEAVES as alternative names for
496 G_TRAVERSE_LEAFS and G_TRAVERSE_NON_LEAFS, which are
497 grammatically brutal. (#138853, Morten Welinder)
499 * glib/gasyncqueue.[hc]:
502 * glib/giochannel.[hc]: Make g_io_channel_ref(),
503 g_main_context_ref(), g_hook_ref(), g_async_queue_ref()
504 return the passed in pointer. (#151663, Manish Singh)
506 * glib/gmain.c: Initialize child_watch_count to 1, so
507 that we don't miss the very first child if it exits
508 before we set up the child watch. In that case we had
509 previously source->count == child_watch_count == 0,
510 causing g_child_watch_check() to skip the waitpid()
511 call. (#154827, Gustavo Carneiro)
513 * glib/gmain.c (g_child_watch_source_init_single)
514 (g_child_watch_source_init_multi_threaded): Use sigaction()
515 instead of signal(). (#136867, Jonas Jonsson, patch by
518 2004-11-07 Matthias Clasen <mclasen@redhat.com>
520 * glib/gutils.c (g_get_any_init): Work around an bug
521 in Mac OS < 10.3. (#156446, Dave MacLachlan)
523 2004-11-06 Tor Lillqvist <tml@iki.fi>
525 * glibconfig.h.win32.in: Cosmetics: move the G_GNUC_INTERNAL
526 define to the same place where it is in a configure-generated
529 2004-11-05 Matthias Clasen <mclasen@redhat.com>
531 * tests/strtod-test.c: Portability fixes and extra sanity
532 checks. (#157453, Morten Welinder)
534 2004-11-04 Matthias Clasen <mclasen@redhat.com>
536 * glib/gstrfuncs.c (g_ascii_strtod): Handle numbers like
537 1e1, nan, -infinity. Also try harder to preserve errno.
538 (#156421, Morten Welinder)
540 * tests/strtod-test.c: Add testcases.
542 2004-11-04 Tor Lillqvist <tml@iki.fi>
544 * glib/goption.h (enum GOptionFlags): Add G_OPTION_FLAG_REVERSE,
545 to reverse the sense of a G_OPTION_ARG_NONE (boolean) option.
547 * glib/goption.c (parse_arg): Obey the above flag.
549 * glib/gconvert.c (g_filename_display_name): Document that the
550 result is guaranteed to be non-NULL.
552 * glib/gfileutils.c (get_contents_stdio, get_contents_regfile,
553 get_contents_posix, get_contents_win32, g_file_open_tmp,
554 g_file_read_link): Use g_filename_display_name() for error
556 (g_mkstemp): Document that the template should be in the GLib file
558 (g_file_open_tmp): Ditto. Also document that the actual name
559 returned is also in the GLib file name encoding.
561 2004-11-02 Matthias Clasen <mclasen@redhat.com>
563 * glib/gconvert.c (g_filename_display_name): New function
564 to convert a filename to a UTF-8 string for display
565 purposes. (requested by Alex Larsson)
567 * glib/gconvert.c (g_get_filename_charsets): New function
568 to return the encodings which are tried when converting a
569 filename to UTF-8. (#151465, François Gagné)
571 2004-11-02 Matthias Clasen <mclasen@redhat.com>
573 * configure.in: Bump version
575 * === Released 2.5.5 ===
579 2004-11-02 Matthias Clasen <mclasen@redhat.com>
581 * glib/glib.symbols: Add new functions.
583 * glib/gconvert.c: Fix doc comment for
584 g_get_filename_charsets().
586 * glib/gconvert.c (g_filename_display_name): New function to
587 convert a filename to a UTF-8 string for display purposes.
588 (g_get_filename_charsets): New function to return the
589 encodings which are tried when converting a filename to
592 * glib/goption.c (g_option_context_parse): Document that
593 this function may not return.
595 2004-11-01 Matthias Clasen <mclasen@redhat.com>
597 * glib/gutils.h: Make gtkdoc-scan happy by removing spaces
600 2004-11-01 Tor Lillqvist <tml@iki.fi>
602 * glib/gstdio.c (g_lstat): Implement correctly also on Unix
603 systems without lstat(). (#157038, Morten Welinder)
605 2004-11-01 Ray Strode <rstrode@redhat.com>
608 (g_key_file_get_locale_string): don't return an
609 error if we come across a value with invalid utf8 or
610 if we don't find a translated string. Just fallback
611 to the untranslated string (Mark McLoughlin, bug
615 (g_key_file_init), (g_key_file_clear): track the
616 actual start GKeyFileGroup rather than just its name
617 (g_key_file_parse_group): allow add_group() to
618 update the start group.
619 (g_key_file_remove_group_node): update the start
620 group if it gets removed (Mark McLoughlin, bug
624 (g_key_file_parse_string_as_value): Don't escape
625 tabs and spaces in the middle of key values.
627 2004-11-01 Matthias Clasen <mclasen@redhat.com>
633 * gthread/gthread-posix.c
634 * tests/timeloop-closure.c
635 * tests/timeloop.c: Fix sparse warnings. (#157014, Kjartan Maraas)
637 2004-11-01 Matthias Clasen <mclasen@redhat.com>
639 * glib/goption.c: Documentation updates.
641 Handle conflicts between options in different groups. (#156808)
643 * glib/goption.c (g_option_context_parse): When a long option does not
644 match exactly, try to parse it as --group-option.
645 (g_option_context_add_group): Warn if a group name conflict occurs.
647 * glib/goption.c (print_help): Print out the effective options, ie
648 don't print shadowed short options, and for long options print
649 --group-option instead of --option if appropriate.
651 2004-10-31 Matthias Clasen <mclasen@redhat.com>
653 * glib/gwin32.c: Add bits of markup to g_win32_get_windows_version()
656 2004-10-31 Tor Lillqvist <tml@iki.fi>
658 * glib/gwin32.c: Document g_win32_get_windows_version().
660 * glib/gstdio.[ch]: Add g_lstat().
662 2004-10-29 Matthias Clasen <mclasen@redhat.com>
664 * glib/goption.c: Doc additions.
666 * glib/goption.c (parse_arg): Convert filenames to UTF-8 on
669 2004-10-29 Hans Breuer <hans@breuer.org>
671 * glibconfig.h */makefile.msc.in : updated [and finally fixed my
672 script to produce ready to go de-in(ed) files, w/o autotools]
674 * */*.rc.in : updated copyrights to 2004
676 * glib/gutils.c : some CSIDL_* defines lacking from older SDK;
677 use the same fallback mecahnism as on *NIX where ever applicable
679 2004-10-29 Matthias Clasen <mclasen@redhat.com>
681 * tests/option-test.c: Add tests for the handling of
682 non-option arguments, "--" and G_OPTION_REMAINING.
684 * glib/goption.[hc]: #define G_OPTION_REMAINING, which is
685 a special long option name, which can be used for an option
686 in the main group which collects the non-option arguments.
687 It must be of type G_OPTION_ARG_STRING_ARRAY or
688 G_OPTION_ARG_FILENAME_ARRAY. If the main group doesn't contain
689 an option whose name is G_OPTION_REMAINING, the non-option
690 arguments are left behind in argv as before.
692 * glib/goption.c: Add documentation.
694 2004-10-28 Matthias Clasen <mclasen@redhat.com>
696 * glib/gmessages.h: Mark g_assert_warning as G_GNUC_NORETURN,
697 to avoid compiler warnings. (#156767, Owen Taylor)
699 2004-10-29 Tor Lillqvist <tml@iki.fi>
701 * glib/gstdio.c: Include also <direct.h> for mkdir() prototype
702 with MSVC. [156727, Kazuki IWAMOTO]
704 * glib/giochannel.h (g_io_channel_new_file): Redefine also
705 g_io_channel_new_file to the UTF-8 version on Win32. [156725,
708 2004-10-28 Ray Strode <rstrode@redhat.com>
711 (find_file_in_data_dirs): clean up a leak (#156652,
713 (g_key_file_load_from_fd): propagate fstat() error
714 conditions and retry read on EAGAIN (#156647, Morten
715 Welinder). Return error if file is NOT regular, not if
716 it is regular (bug introduced from last commited bug
718 (g_key_file_load_from_data_dirs): allocate enough space
719 for the terminating NULL.
721 2004-10-28 Ray Strode <rstrode@redhat.com>
723 * glib/gkeyfile.c: Don't use S_ISREG macro (#156728,
726 2004-10-28 Matthias Clasen <mclasen@redhat.com>
728 * glib/gstdio.c: Include galias.h before glib.h (#156697,
731 * glib/gkeyfile.c: Add a missing "Since: 2.6" comment.
733 2004-10-28 Tor Lillqvist <tml@iki.fi>
735 * glib/gstdio.c: Include glib.h early to get G_OS_WIN32. Include
738 * glib/gkeyfile.c: Include gstdio.h and use g_open().
740 2004-10-27 Ray Strode <rstrode@redhat.com>
743 (g_key_file_load_from_fd),
744 (g_key_file_load_from_file):
745 Move file is regular check to load_from_file to use
746 fstat() instead of race prone g_file_test(). Don't
747 clear/init until needed. Change error messages to be
749 (g_key_file_load_from_data),
750 (g_key_file_load_from_data_dirs),
751 (g_key_file_parse_data),
752 (g_key_file_get_value),
753 (g_key_file_get_string),
754 (g_key_file_set_string),
755 (g_key_file_get_string_list),
756 (g_key_file_set_string_list),
757 (g_key_file_set_locale_string),
758 (g_key_file_get_locale_string),
759 (g_key_file_set_locale_string_list),
760 (g_key_file_get_boolean),
761 (g_key_file_set_boolean),
762 (g_key_file_get_boolean_list),
763 (g_key_file_set_boolean_list),
764 (g_key_file_get_integer),
765 (g_key_file_get_integer_list),
766 (g_key_file_set_integer_list),
767 (g_key_file_remove_key):
768 Add more g_return_*if_fail checks for public functions.
770 2004-10-27 Matthias Clasen <mclasen@redhat.com>
772 * configure.in: Bump version.
774 * === Released 2.5.4 ===
776 2004-10-27 Matthias Clasen <mclasen@redhat.com>
778 * glib/abicheck.sh: Strip Win32 specific defs file syntax.
782 2004-10-27 Matthias Clasen <mclasen@redhat.com>
784 Introduce the idea of a filename encoding, which is
785 *literally* the filename encoding on Unix. On Windows,
786 use the Unicode name converted to UTF-8. (#101792,
787 Tor Lillqvist, Owen Taylor)
790 * glib/gconvert.[hc]:
791 * glib/gfileutils.[hc]:
793 * glib/giowin32.c: On Windows, keep old ABI versions
794 of GLib pathname api for DLL ABI stability. Use different
795 names for the new-style UTF-8 versions. Hide this through
798 * glib/gstdio.[hc]: New files containing wrappers for
801 * glib/glib.symbols: Add new symbols.
803 * glib/makegalias.pl: Drop Win32 specific .def syntax,
806 2004-10-27 Matthias Clasen <mclasen@redhat.com>
808 * glib/gkeyfile.c: Fix includes. (#156500, #156499,
811 * glib/Makefile.am (galias.h): Fix srcdir != builddir
812 builds. (#156447, Thomas Fitzsimmons)
814 2004-10-26 Gora Mohanty <gmohanty@cvs.gnome.org>
816 * configure.in: Added 'or' to ALL_LINGUAS.
818 2004-10-26 Matthias Clasen <mclasen@redhat.com>
820 * glib/gkeyfile.c: Include galias.h.
822 * glib/gkeyfile.c (g_key_file_parse_value_as_comment):
823 Don't compare strings and chars.
825 * glib/glib.symbols: Add new symbols.
827 * glib/gkeyfile.c (g_key_file_new): Fix docs.
829 * glib/gkeyfile.h: Use the same parameter names as in
830 the implementation and the docs.
832 * glib/gwin32.c (g_win32_get_windows_version): Make this
833 function thread-safe in the GLib style.
834 * glib/gthreadinit.h:
835 * glib/gwin32.c (_g_win32_thread_init): New function to
836 initialize the version.
837 * glib/gthread.c (g_thread_init_glib): Call
838 _g_win32_thread_init() from here.
840 2004-10-26 Ray Strode <rstrode@redhat.com>
842 * glib/gkeyfile.c: Add Matthias to "Written by" lines
843 (GKeyFileGroup): add field to hold comments about groups
844 (g_key_file_load_from_fd): return TRUE on success and
845 FALSE on failure. Don't close fd's opened by other
847 (g_key_file_load_from_file): run FILE_IS_REGULAR test
848 before trying to open file, to save an fd from being
849 leaked (would probably be better to use fstat()). Close
850 fd when done with it. Return TRUE on success and FALSE
852 (g_key_file_load_from_data): Return TRUE on success and
854 (g_key_file_load_from_data_dirs): remove superfluous
855 const modifier. Return TRUE on success and FALSE on
856 failure. Stop trying to load files when one succeeds.
857 (g_key_file_parse_key_value_pair): don't validate input
858 for UTF-8 until users uses a getter that does
859 validation. Don't leak copy of start_group_name.
860 (g_key_file_to_data): serialize new comment field for
862 (g_key_file_get_keys): Remove convenience code to let
863 NULL group mean start group. Get rid of unneeded NULL
864 check before g_strdup.
865 (g_key_file_get_groups): Reverse groups list before
866 sending to user because it is maintained in backward
868 (g_key_file_get_value),
869 (g_key_file_set_value): add g_return checks at top of
871 (g_key_file_get_string),
872 (g_key_file_get_string_list): validate key value is UTF-8.
873 (g_key_file_[sg]et_*comment): new functions for
874 setting/getting comments
875 (g_key_file_remove_comment): new function to remove
877 (g_key_file_remove_key_value_pair_node): new function to
878 pull a key-value pair out of the list and free it.
879 (g_key_file_remove_group_node): call
880 g_key_file_remove_key_value_pair_node instead of
881 freeing the list immediately to get better statistics
882 for approximate_size.
883 (g_key_file_remove_group): use lookup_group_node instead
884 of lookup_group to prevent a g_list_find call.
885 (g_key_file_add_key): report group also when unable to
887 (g_key_file_lookup_group_node): new function to make
888 getting the group node from a group name easier.
889 (g_key_file_lookup_group): use lookup_group_node under
891 (g_key_file_lookup_key_value_pair_node): new function to
892 make getting the key-value pair from a group and key
894 (g_key_file_parse_comment_as_value): new function to add '#' to the
895 beginning of every line.
896 (g_key_file_parse_value_as_comment): new function that
897 attempts to be the inverse of comment as value.
899 2004-10-26 Matthias Clasen <mclasen@redhat.com>
902 * glib/gkeyfile.c: Don't include ctype.h needlessly. (#156424,
905 * tests/strtod-test.c (test_string): Improve error reporting.
907 Mon Oct 25 15:05:18 2004 Manish Singh <yosh@gimp.org>
909 * autogen.sh: rm autom4te.cache, since it might interfere with
910 differing autoconf versions.
912 * tests/child-test.c: use GINT_TO_POINTER for g_child_watch_add
915 * glib/gfileutils.c: G_IS_DIR_SEPARATOR is defined in gutils.h now,
916 don't redefine it here.
918 2004-10-24 Matthias Clasen <mclasen@redhat.com>
920 * glib/gkeyfile.c (g_key_file_remove_group_node): Don't
921 destroy the lookup map if it is NULL.
923 2004-10-23 Matthias Clasen <mclasen@redhat.com>
925 * glib/gasyncqueue.c, glib/gatomic.c, glib/gdate.c,
926 glib/giochannel.c, glib/gmain.c, glib/gspawn.c,
927 glib/libcharset/localcharset.c: Apply a patch to fix
928 sparse warnings. (#154696, Kjartan Maraas)
930 * glib/gnulib/g-gnulib.h: Undef libc functions before defining
931 them, since they may also be macros. (#155177, Andrea Campi)
934 * glib/gkeyfile.c: Add a parser for desktop entries and
935 similar files with a .ini-like syntax. (#139974, Ray Strode)
937 * glib/glib.h: Include gkeyfile.h
939 * glib/Makefile.am (libglib_2_0_la_SOURCES): Add gkeyfile.c
940 (glibsubinclude_HEADERS): Add gkeyfile.h
942 * glib/gutils.c (_g_compute_locale_variants): Make this
943 non-static and use it in gkeyfile.c
945 2004-10-22 Matthias Clasen <mclasen@redhat.com>
947 * tests/uri-test.c (run_uri_list_tests): Add some
951 * glib/gconvert.c (g_uri_list_extract_uris): New function to
952 split a text/uri-list data into individual uris and strip comments.
954 2004-10-20 Matthias Clasen <mclasen@redhat.com>
956 * glib/goption.c (get_change): Don't return the wrong
957 change. (#155856, Lucas Rocha)
959 2004-10-17 Matthias Clasen <mclasen@redhat.com>
961 * glib/gutils.h (G_IS_DIR_SEPARATOR):
962 * glib/gutils.c: Make public. (#155589, Tim-Philipp Müller)
964 2004-10-08 Matthias Clasen <mclasen@redhat.com>
966 * glib/gmain.c (g_child_watch_add_full):
967 * glib/gmain.c (g_child_watch_add): Document that GLib supports only
968 a single callback per pid. (#154828, Gustavo Carneiro)
970 2004-10-06 Matthias Clasen <mclasen@redhat.com>
972 * glib/gfileutils.c: Fix some C99isms. (#154676, Kjartan Maraas)
974 2004-10-05 Anders Carlsson <andersca@gnome.org>
976 * glib/goption.c: (g_option_context_parse):
977 Add check for if argc is 0.
979 * tests/option-test.c: (empty_test3), (main):
982 2004-10-05 Matthias Clasen <mclasen@redhat.com>
986 2004-10-04 Matthias Clasen <mclasen@redhat.com>
988 * glib/gmem.c (g_mem_set_vtable): Only set vtable_set if the
989 vtable is set. (#154352, Philippe Blain)
991 2004-10-03 Anders Carlsson <andersca@gnome.org>
993 * glib/goption.c: (parse_arg):
994 Set arg_data on filenames. (Discovered by Mats-Ola Persson).
996 * tests/option-test.c: (arg_test3), (ignore_test3), (main):
997 Add test for filename args.
999 2004-10-01 Tor Lillqvist <tml@iki.fi>
1001 * glib/goption.c (g_option_context_parse): Use
1002 g_path_get_basename() instead of strrchr(), so that either slash
1003 is accepted on Windows.
1005 2004-09-30 Matthias Clasen <mclasen@redhat.com>
1007 * glib/gfileutils.c: Convert filenames to UTF-8 before
1008 putting them in GErrors. (#154078, Morten Welinder)
1010 2004-09-29 Matthias Clasen <mclasen@redhat.com>
1012 * glib/glib.symbols: Add g_assert_warning.
1015 * glib/gmessages.c (g_assert_warning): Treat g_assert
1016 in the same way as g_return_if_fail and move the string
1017 constants into a helper function, which also takes
1018 care of removing the "IA__" prefix from internal aliases.
1020 * glib/gmessages.h: Move the declaration of
1021 g_return_if_fail_warning() out of the ifdefs, so that
1022 building with G_DISABLE_ASSERT works.
1024 2004-09-27 Murray Cumming <murrayc@murrayc.com>
1026 * glib/goptions.[h|c], glib/glib.symbols: Rename
1027 g_context_option_error_quark() to g_option_error_quark(), because that
1028 is consistent with normal naming conventions, and what bindings expect.
1030 .2004-09-26 Matthias Clasen <mclasen@redhat.com>
1032 Fix #153649, Hidetaka Iwai:
1034 * glib/goption.c (parse_long_option): Don't forget to set parsed
1035 to TRUE when parsing a long ARG_NONE option.
1036 (free_changes_list): Fix the memory management for string
1037 and filename arrays.
1039 2004-09-22 Tor Lillqvist <tml@iki.fi>
1041 * glib/gmessages.c: [Win32] Don't ever open a console
1042 window. (Which we used to do if standard output or standard error
1043 are invalid, as they are for GUI applications.) These console
1044 windows that open up unexpectedly have caused endless amounts of
1045 confusion among end-users. (#141102, #151175)
1047 Don't output the process id on Windows. Only output the program
1048 name. If not set with g_set_prgname(), fetch the application
1049 executable's name and use that.
1051 Mon Sep 20 00:35:14 2004 Matthias Clasen <maclas@gmx.de>
1053 * glib/gutf8.c (g_utf16_to_utf8): Add a note explaining how to
1054 convert UTF-16 byte stream of ambiguous endianness. (#152954,
1057 Mon Sep 20 00:17:37 2004 Matthias Clasen <maclas@gmx.de>
1059 * tests/option-test.c (error_test3_post_parse):
1060 * tests/option-test.c (error_test2_post_parse):
1061 * tests/option-test.c (error_test1_post_parse): Don't call
1062 g_set_error () with a NULL format. (#153103, Robert Ögren)
1064 Mon Sep 20 00:13:48 2004 Matthias Clasen <maclas@gmx.de>
1066 Make GOption remove long options completely. (#153113, Robert Ögren)
1068 * glib/goption.c (parse_long_option): Fix a wrong index.
1070 * tests/option-test.c (ignore_test3): Test handling of unknown
1073 Sun Sep 19 23:56:15 2004 Matthias Clasen <maclas@gmx.de>
1075 * glib/goption.c (g_option_context_parse): Call error_func
1076 on error, not post_parse_func again. (#153107, Robert Ögren)
1078 Sun Sep 19 23:52:35 2004 Matthias Clasen <maclas@gmx.de>
1080 * glib/gmessages.c (mklevel_prefix):
1081 * glib/gmessages.c (g_logv): Fix the types of some variables
1082 to be GLogLevelFlags instead of guint. (#153042, Philippe Blain)
1084 2004-09-18 Matthias Clasen <mclasen@redhat.com>
1088 * === Released 2.5.3 ===
1090 2004-09-17 Matthias Clasen <mclasen@redhat.com>
1092 * NEWS: More updates.
1094 Thu Sep 16 18:42:46 2004 Manish Singh <yosh@gimp.org>
1096 * glib/abicheck.sh: don't hardcode lengths for cut, instead split on
1099 Thu Sep 16 18:15:32 2004 Manish Singh <yosh@gimp.org>
1101 * glib/gstrfuncs.c (g_strncasecmp): Make it take a guint for number
1102 of characters, instead of a gsize. Technically this is incorrect,
1103 but this makes it match the prototype, and this is a deprecated
1106 2004-09-16 Matthias Clasen <mclasen@redhat.com>
1108 * glib/Makefile.am (EXTRA_DIST): Add abicheck.sh
1110 Thu Sep 16 02:03:15 2004 Matthias Clasen <maclas@gmx.de>
1112 Implement the same PLT reduction technique used in GTK+:
1114 * glib/glib.symbols: Master list of symbols
1116 * glib/makegalias.pl: Perl script which creates galias.h
1118 * glib/abicheck.sh: Compares actual exports against glib.symbols
1120 * glib/glib.def: Removed. This file is now generated from
1123 * glib/Makefile.am: Add rules to generate galias.h and glib.def,
1124 and add abicheck.sh to TESTS. Don't export _-prefixed symbols.
1126 * configure.in: Add --disable-visibility to suppress the
1127 use of ELF visibility attributes.
1129 * glib/*.c: Include galias.h
1131 2004-09-15 Tor Lillqvist <tml@iki.fi>
1133 * glib/gwin32.c (g_win32_error_message): Convert message to
1134 UTF-8. Technically this breaks API, but the actual use cases in
1135 gdk/win32 have assumed it is UTF-8 anyway. Fix
1136 documentation. (#152618, Kazuki Iwamoto)
1138 * glib/gwin32.h: Don't define ftruncate as a macro. Was never a
1139 good idea, and it clashes with newest mingw headers, which have a
1140 ftruncate implementation as an inline function. Thanks to Dominik R.
1142 * glib/gwin32.c (g_win32_ftruncate): Simplify implementation, just
1143 call _chsize() in the C library.
1145 2004-09-15 Matthias Clasen <mclasen@redhat.com>
1149 2004-09-09 Matthias Clasen <mclasen@redhat.com>
1151 * glib/gmessages.c (g_return_if_fail_warning): Strip the
1152 prefix "IA__" from function names, since that is what
1153 GTK+ uses for the PLT-reduction aliases.
1155 Thu Sep 9 13:52:26 2004 Owen Taylor <otaylor@redhat.com>
1157 * glib/gmessages.c (g_return_if_fail_warning):
1158 Include implementation of g_return_if_fail_internal().
1160 Thu Sep 9 10:37:41 2004 Owen Taylor <otaylor@redhat.com>
1162 * glib/gmessages.h (g_return_[val_]if_fail): Use
1163 a helper function to reduce code size; omit FILE/LINE
1164 when we have __PRETTY_FUNCTION__.
1166 2004-09-09 Matthias Clasen <mclasen@redhat.com>
1168 * glib/gutils.c (g_get_home_dir): Remove a misleading comment.
1170 Thu Sep 9 00:10:40 2004 Matthias Clasen <maclas@gmx.de>
1173 * glib/gstrfuncs.c (g_strv_length): Add a function to
1174 calculate the length of a NULL-terminated string
1175 array. (#150455, Tim-Philipp Müller)
1177 * tests/strfunc-test.c (main): Add a test for g_strv_length().
1179 2004-09-08 Tor Lillqvist <tml@iki.fi>
1181 * glib/gutils.c (guess_category_value): On Win32, as last resort
1182 call g_win32_getlocale() to get the current thread locale. There
1183 usually aren't any POSIXish LANG or LC_* environment variables
1184 present on Windows machines.
1186 * glib/glib.def: Add g_get_language_names.
1188 2004-09-07 Matthias Clasen <mclasen@redhat.com>
1191 * glib/gutils.c (g_get_language_names): Add a function to
1192 return a list of applicable locale names. (#95587,
1194 (guess_category_value, compute_locale_variants):
1195 (explode_locale, unalias_lang, read_aliases): Helper
1196 functions for g_get_language_names()
1198 * tests/testglib.c (main): Show the results of
1199 g_get_language_names()
1201 Sun Sep 5 01:46:11 2004 Matthias Clasen <maclas@gmx.de>
1205 * glib/gmessages.c (g_log_set_default_handler): New
1206 function to install an alternate default log
1207 handler. (#66387, Darin Adler)
1209 2004-09-03 Tor Lillqvist <tml@iki.fi>
1211 * glib/glib.def: Update.
1213 Wed Sep 1 20:22:39 2004 Matthias Clasen <maclas@gmx.de>
1216 * glib/gdate.c (g_date_get_iso8601_week_of_year): Add
1217 a function to calculate the ISO 8601 week number of
1218 a date. (#92579, Niklas Lundell)
1220 2004-09-01 Anders Carlsson <andersca@gnome.org>
1222 * glib/goption.c: (g_option_context_parse):
1223 Set program name before calling the pre-parse hooks.
1225 2004-09-01 Anders Carlsson <andersca@gnome.org>
1227 * glib/goption.c: (g_option_context_free), (print_help),
1228 (g_option_context_parse):
1229 Handle option contexts without a main group.
1231 * tests/option-test.c: (empty_test2), (main):
1232 Add test case for that.
1234 2004-08-30 Anders Carlsson <andersca@gnome.org>
1236 * glib/goption.c: (g_option_context_parse):
1237 Set prgname to <unknown> if argc and argv are NULL.
1239 * tests/option-test.c: (empty_test1), (main):
1240 Add test case for that.
1242 Sun Aug 29 23:58:38 2004 Matthias Clasen <maclas@gmx.de>
1244 * glib/ghash.c (g_hash_table_lookup): Point to
1245 g_hash_table_lookup_extended() for differentiation between
1246 not-found and value-is-NULL. (#150960, Morten Welinder)
1248 2004-08-27 Matthias Clasen <mclasen@redhat.com>
1250 Fix #151193, Stepan Kasal:
1252 * glib/gfileutils.c (g_file_error_from_errno):
1253 * glib/gfileutils.h (enum GFileError): Add G_FILE_ERROR_NOSYS.
1255 Fri Aug 27 00:45:41 2004 Matthias Clasen <maclas@gmx.de>
1257 * glib/goption.c (g_option_context_parse): Set the program name
1258 from argv[0], noticed by Masatake YAMATO.
1260 2004-08-26 Tor Lillqvist <tml@iki.fi>
1262 * tests/testglib.c (main): Test the new XDG basedir functions.
1264 2004-08-25 Tor Lillqvist <tml@iki.fi>
1266 * glib/gwin32.c (g_win32_get_windows_version): New
1267 function. Returns the Windows version code like GetVersion(),
1268 except that one can pretend to be running on Win9x by setting the
1269 G_WIN32_PRETEND_WIN9X environment variable. This is mainly for
1272 * glib/gwin32.h: Declare it. Define macros G_WIN32_WINDOWS_IS_NT_BASED
1273 and G_WIN32_HAVE_WIDECHAR_API to test Windows features at run-time.
1275 2004-08-25 Matthias Clasen <mclasen@redhat.com>
1277 * configure.in: Post-release version bump.
1279 * === Released 2.5.2 ===
1281 Wed Aug 25 00:25:08 2004 Matthias Clasen <maclas@gmx.de>
1283 * NEWS: Update for 2.5.2
1285 2004-08-25 Tor Lillqvist <tml@iki.fi>
1287 Win32 equivalences of the XDG folders
1289 * glib/gutils.c (get_special_folder): New function, calls
1290 SHGetSpecialFolderLocation() to get path to places like the My
1292 (g_get_any_init): Use CSIDL_PROFILE as HOME if not
1293 overridden by env vars.
1294 (g_get_user_data_dir): Use CSIDL_PERSONAL.
1295 (g_get_user_config_dir): Use CSIDL_APPDATA.
1296 (g_get_user_cache_dir): Use CSIDL_INTERNET_CACHE. Debatable...
1297 (g_get_system_data_dirs): Use CSIDL_COMMON_APPDATA and
1298 CSIDL_COMMON_DOCUMENTS.
1299 (g_get_system_config_dirs): Use CSIDL_COMMON_APPDATA.
1301 * configure.in: Add -lole32 to G_LIBS_EXTRA for mingw.
1303 * glib/glib.def: Add the new functions.
1305 Mon Aug 23 16:16:35 2004 Manish Singh <yosh@gimp.org>
1307 * glib/goption.c (g_option_group_add_entries): remove unused
1310 Mon Aug 23 01:35:18 2004 Matthias Clasen <maclas@gmx.de>
1312 * glib/gutils.c (g_get_user_cache_dir):
1313 * glib/gutils.c (g_get_user_config_dir):
1314 * glib/gutils.c (g_get_user_data_dir): Don't call g_get_home_dir()
1315 while holding the g_utils_global lock, simply use g_home_dir.
1316 (#150695, Jody Goldberg)
1318 2004-08-21 Tor Lillqvist <tml@iki.fi>
1320 * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
1321 break out of its loop. Prevents a thread leak. (#147392, Peter
1324 * glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
1325 return value from strxfrm(). For instance Microsoft's strxfrm()
1326 returns INT_MAX on errors. (#141124)
1328 2004-08-19 Tor Lillqvist <tml@iki.fi>
1330 * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): Correct
1331 source and destination charset parameter order in g_convert()
1332 call. (#150394, possibly also #141124)
1334 2004-08-20 Jon K Hellan <hellan@acm.org>
1336 * glib/goption.h: Remove trailing commas.
1338 2004-08-17 Matthias Clasen <mclasen@redhat.com>
1340 * configure.in: Check for all four values of the
1341 visibility attribute; gcc 2.96 seems to miss
1342 "default". (#150379, Vincent Noel)
1344 2004-08-16 Christian Rose <menthos@menthos.com>
1346 * configure.in: Added "bs" to ALL_LINGUAS.
1348 2004-08-11 Ray Strode <rstrode@redhat.com>
1350 * docs/reference/glib/glib-sections.txt:
1351 * glib/gutils.[ch] (g_get_user_data_dir),
1352 (g_get_user_config_dir), (g_get_user_cache_dir),
1353 (g_get_system_data_dirs), (g_get_system_config_dirs):
1354 Add new XDG basedir API (bug 139973).
1356 2004-08-10 Matthias Clasen <mclasen@redhat.com>
1358 * glib/gmacros.h: Remove G_GNUC_INTERNAL from here.
1359 * configure.in: Check whether the visibility attribute
1360 works and define G_HAVE_GNUC_VISIBILITY and
1361 G_GNUC_INTERNAL in glibconfig.h correspondingly.
1363 Mon Aug 9 17:37:56 2004 Matthias Clasen <maclas@gmx.de>
1365 * glib/gmacros.h (G_GNUC_INTERNAL): Define empty if gcc is too old.
1367 2004-08-06 Hans Breuer <hans@breuer.org>
1369 * glib/makefile.msc.in glib/glib.def : updated
1371 * glib/gutils.c : avoid 'inconsitent dll linkage' by not
1372 defining extern char** environ with msvc
1374 2004-08-06 Matthias Clasen <mclasen@redhat.com>
1376 * m4macros/glib-gettext.m4: Require ngettext. (#123847,
1379 Thu Aug 5 20:53:00 2004 Ray Strode <rstrode@redhat.com>
1381 * glib/gutils.h (g_get_codeset): strdup result so caller
1382 doesn't free internally managed memory.
1384 2004-08-04 Tor Lillqvist <tml@iki.fi>
1386 * glib/glib.def: Add glib_check_version.
1388 * config.h.win32.in: Update to match what configure produces. Add
1389 the G_ATOMIC_*. Define G_ATOMIC_I486 when compiling with gcc. Move
1390 HAVE_INT64_AND_I64 to where the configure script puts it. Add
1391 HAVE_INTTYPES_H_WITH_UINTMAX. Define intmax_t as __int64 for MSVC.
1393 Tue Aug 3 16:19:44 2004 Matthias Clasen <maclas@gmx.de>
1395 * glib/goption.c: Mark user visible strings for translation.
1397 Tue Aug 3 15:50:55 2004 Matthias Clasen <maclas@gmx.de>
1399 * glib/goption.[hc]: Pedantically use g types throughout.
1401 Tue Aug 3 14:58:20 2004 Matthias Clasen <maclas@gmx.de>
1404 * glib/gutils.c (glib_check_version): New function to
1405 check the version of GLib at runtime. (#149175, Michael Natterer)
1407 2004-08-03 Anders Carlsson <andersca@gnome.org>
1411 Move GTranslateFunc to gtypes.h
1413 2004-08-02 Anders Carlsson <andersca@gnome.org>
1420 * tests/Makefile.am:
1421 * tests/option-test.c:
1424 2004-08-02 Matthias Clasen <mclasen@redhat.com>
1426 * glib/gmacros.h: Add a G_GNUC_INTERNAL macro to mark function
1427 declarations as internal and avoid PLT indirections for
1428 them. (#145465, Arjan van de Ven)
1430 * glib/gunicodeprivate.h:
1431 * glib/gthreadinit.h:
1434 * glib/gconvert.c: Use G_GNUC_INTERNAL for _g_charset_get_aliases(),
1435 _g_debug_init(), _g_log_fallback_handler(), _g_mem_thread_init(),
1436 _g_messages_thread_init(), _g_convert_thread_init(),
1437 _g_rand_thread_init(), _g_main_thread_init(), _g_atomic_thread_init(),
1438 _g_mem_thread_private_init(), _g_messages_thread_private_init(),
1439 _g_utf8_normalize_wc() and _g_unichar_combining_class().
1441 * glib/gatomic.c: Include gthreadinit.h here to see the declaration
1442 for _g_atomic_thread_init().
1444 Sun Aug 1 13:19:18 2004 Manish Singh <yosh@gimp.org>
1446 * tests/uri-test.c: move newline printing from run_from_uri_tests()
1447 to run_roundtrip_tests().
1449 2004-08-01 Matthias Clasen <mclasen@redhat.com>
1451 * Post-release version bump
1453 * === Released 2.5.1 ===
1455 Sat Jul 31 23:17:05 2004 Matthias Clasen <maclas@gmx.de>
1459 Sat Jul 31 20:33:07 2004 Matthias Clasen <maclas@gmx.de>
1461 * tests/shell-test.c: Include a test involving consecutive
1462 backslashes followed by a non-escaped doublequote.
1464 * glib/gshell.c (tokenize_command_line): Count consecutive
1465 backslashes mod 2 to detect escaped doubleqotes. (#127306)
1467 2004-07-30 Matthias Clasen <mclasen@redhat.com>
1469 * glib/gconvert.c (g_unescape_uri_string): Don't validate
1470 for UTF-8 here. (#148420, Robert Ögren)
1472 * tests/uri-test.c (run_roundtrip_tests): Add tests for
1473 roundtrip compatibility. Going from filename to uri and
1474 back should always give you the same filename back.
1476 2004-07-28 Matthias Clasen <mclasen@redhat.com>
1478 * tests/markups/valid-{9,10,11}.gmarkup:
1479 * tests/markups/fail-{37,38,39}.gmarkup: Tests for handling
1480 of whitespace inside tags.
1482 * glib/gmarkup.c (enum GMarkupParseState): Add
1483 STATE_AFTER_ATTRIBUTE_NAME and STATE_AFTER_CLOSE_TAG_NAME.
1484 (g_markup_parse_context_parse): Accept whitespace between
1485 attribute names, '=' and attribute values and between
1486 close tag name and '>'. (#148646, Hiroyuki Ikezoe)
1488 Tue Jul 27 02:01:31 2004 Matthias Clasen <maclas@gmx.de>
1490 * glib/gstrfuncs.c (g_strsplit_set): s/g_strsplit/g_strsplit_set/
1493 Sat Jul 24 17:50:07 2004 Soeren Sandmann <sandmann@daimi.au.dk>
1495 * glib/gstrfuncs.c (g_strsplit_set):
1496 s/g_strtokenize/g_strsplit_set/ in docs.
1498 Fri Jul 23 10:37:50 2004 Matthias Clasen <maclas@gmx.de>
1500 * tests/type-test.c (main): Actually test G_MAXSIZE with
1503 2004-07-21 Matthias Clasen <mclasen@redhat.com>
1505 Fix #132858, Sven Neumann, patch by James Henstridge:
1507 * glib-gettextize.in: modify so that mkinstalldirs will
1508 get installed into auxdir.
1510 * Makefile.am (gettext_SCRIPTS): install mkinstalldirs.
1512 2004-07-21 Matthias Clasen <mclasen@redhat.com>
1514 Fix #147651, reported by Oliver Guntermann:
1516 * glib/gprintfint.h (_g_vasprintf): Don't wrap vasprintf(),
1517 _g_gnulib_vasprintf() in a macro, since they behave
1518 differently wrt. to memory allocation.
1520 * glib/gprintf.c (g_vasprintf): Instead, differentiate
1521 here between the three cases: system vasprintf(),
1522 _g_gnulib_vasprintf(), no vasprintf().
1524 2004-07-20 Crispin Flowerday <gnome@flowerday.cx>
1526 * NEWS: Fix a typo in my name
1528 Tue Jul 20 04:31:40 2004 Soeren Sandmann <sandmann@daimi.au.dk>
1530 * configure.in: Bump version number
1532 Sun Jul 18 19:40:30 2004 Soeren Sandmann <sandmann@daimi.au.dk>
1534 * === Released 2.5.0 ===
1536 * Makefile.am (BUILT_EXTRA_DIST): move gtk-doc.make here.
1538 Sun Jul 18 01:40:28 2004 Matthias Clasen <maclas@gmx.de>
1540 * NEWS: Updates for 2.5.0
1542 Mon Jul 12 00:02:40 2004 Matthias Clasen <maclas@gmx.de>
1544 * glib/gi18n-lib.h: Remove the ENABLE_NLS check here as well.
1546 2004-07-09 Matthias Clasen <mclasen@redhat.com>
1548 * glib/gdir.c (g_dir_open): Convert filename to UTF-8
1549 before using it in the error message. (#146054, Federico
1552 Thu Jul 8 00:54:32 2004 Matthias Clasen <maclas@gmx.de>
1554 * glib/gi18n.h: Remove the ENABLE_NLS check, since GLib can't
1555 be built without anyway. (#135899, Murray Cumming)
1557 Mon Jul 5 18:50:27 2004 Matthias Clasen <maclas@gmx.de>
1559 * glib/gmessages.h (g_debug): Complete the g_log()
1560 family. (#135730, Sven Herzberg)
1562 Mon Jul 5 18:42:30 2004 Matthias Clasen <maclas@gmx.de>
1564 * glib/gnulib/Makefile.am (INCLUDES): Add top_srcdir to
1565 make srcdir != . work. (#145166, Kaz Sasayama)
1567 Sun Jul 4 01:52:18 2004 Matthias Clasen <maclas@gmx.de>
1569 * configure.in: Use a small test library instead of
1570 libpthread.so for testing RTLD_GLOBAL brokenness. (#139567,
1571 Julio M. Merino Vidal)
1573 2004-07-02 Sebastian Wilhelmi <seppi@seppi.de>
1575 * glib/gatomic.c: Rename __asm to __asm__ and __volatile to
1576 __volatile__ to make the file consistent. Spotted by Benoit
1577 Carpentier <gtkool_2kx@yahoo.fr>.
1579 2004-07-01 John Ehresman <jpe@wingide.com>
1581 * glib/giowin32.c (g_io_channel_win32_init, g_io_win32_free)
1582 Initialize reset_send & reset_recv fields and don't close
1583 sockets unless they were created. (#145153)
1585 Fri Jun 11 22:56:46 2004 Matthias Clasen <maclas@gmx.de>
1587 * glib/gscanner.c (g_scanner_get_token_ll): Ignore a
1588 missing newline at EOF for single line comments.
1589 (#83674, Sven Neumann)
1591 Thu Jun 10 23:38:02 2004 Matthias Clasen <maclas@gmx.de>
1593 * tests/printf-test.c (TEST): Actually set any_failed on
1594 failure. (#143552, Philippe Blain)
1596 2004-06-09 Federico Mena Quintero <federico@ximian.com>
1598 * tests/uri-test.c (to_uri_tests): Fix expected results (ha ha)
1599 for URIs that *should* have been invalid, or viceversa.
1600 (from_uri_tests): Likewise.
1602 2004-06-07 Federico Mena Quintero <federico@ximian.com>
1606 * glib/gconvert.c (is_asciialphanum): Renamed from
1607 is_escalphanum(); ensures that this is an ASCII character.
1608 (is_asciiescalpha): Renamed from is_escalpha().
1609 (hostname_validate): Use the two functions above.
1610 (g_filename_to_uri): Don't convert the filename to UTF-8.
1611 (g_filename_from_uri): Don't convert the filename from UTF-8.
1613 Mon Jun 7 22:25:24 2004 Matthias Clasen <maclas@gmx.de>
1615 * tests/run-markup-tests.sh: Default to silence, but support
1616 a -v argument to get the old output back.
1618 2004-06-06 Tor Lillqvist <tml@iki.fi>
1620 * glib/gutils.c (g_get_any_init): Check home for being
1621 NULL. (#143812, Ivan Wong)
1623 Sun Jun 6 15:23:00 2004 Pawan Chitrakr <pawan@nplinu.org>
1625 * configure.in: Added "ne" (Nepali) in ALL_LINGUAS
1627 Fri Jun 4 19:26:47 2004 Manish Singh <yosh@gimp.org>
1629 * glib/galloca.h: cpp #directives should always have the "#" in the
1630 first column of the the line. Do that for "#pragma alloca". Fixes
1633 Wed Jun 2 00:57:16 2004 Matthias Clasen <maclas@gmx.de>
1635 * glib/gtypes.h: Use higher precision for the mathematical
1636 constants. (#141941, Morten Welinder)
1638 Tue Jun 1 22:01:40 2004 Matthias Clasen <maclas@gmx.de>
1640 * glib/gmarkup.c (advance_char): Fix an off-by-one error
1641 in g_markup_parse_context_parse(). (#142794, Morten Welinder)
1643 Sun May 16 23:23:29 2004 Matthias Clasen <maclas@gmx.de>
1647 * glib/gcompletion.c (g_completion_add_items):
1648 (g_completion_remove_items): Remove unnecessary
1649 checks. (#142559, Morten Welinder)
1651 2004-05-15 Tor Lillqvist <tml@iki.fi>
1653 * glib/gutils.c (g_get_any_init): [Win32] Only believe HOME if it
1654 is an absolute path and exists. (#138618)
1656 2004-05-14 Tor Lillqvist <tml@iki.fi>
1658 * glib/gnulib/vasnprintf.c (vasnprintf): Handle empty digit string
1659 for precision correctly. (#142400)
1661 For backward compatibility with the Trio implementation, make "ll"
1662 format modifer work on Win32, too. Change into "I64" before
1663 passing to the system printf. (#142433)
1665 * tests/printf-test.c (main): Add tests for the above.
1667 2004-05-10 Matthias Clasen <mclasen@redhat.com>
1671 * glib/gmain.c (block_source, unblock_source): Make these
1672 static. (#142230, Morten Welinder)
1674 2004-05-10 Tor Lillqvist <tml@iki.fi>
1676 * glib/giowin32.c (g_win32_print_gioflags): Remove two duplicated
1677 lines. Thanks to Benoît Carpentier.
1679 Sun May 9 02:04:14 2004 Matthias Clasen <maclas@gmx.de>
1683 * glib/guniprop.c (g_utf8_casefold): Avoid an unnecessary
1684 memleak. (#141998, Nikolai Weibull)
1686 Sat May 8 23:02:26 2004 Matthias Clasen <maclas@gmx.de>
1690 * glib/gutils.h: Remove vestigial g_get_codeset().
1691 * glib/gutils.c (g_get_codeset): Call g_get_charset().
1692 (#137703, Owen Taylor)
1694 2004-05-06 Matthias Clasen <mclasen@redhat.com>
1696 * configure.in: Bump version number to 2.5.0.
1698 Wed May 5 23:35:44 2004 Matthias Clasen <maclas@gmx.de>
1700 * glib/gconvert.c (g_filename_from_uri): Quote the file
1701 scheme to mark it as untranslatable. String change.
1702 (#133144, Danilo Segan)
1704 2004-05-03 Pablo Saratxaga <pablo@mandrakesoft.com>
1706 * configure.in: Added Walloon (wa) to ALL_LINGUAS
1708 Sun May 2 03:51:59 2004 Manish Singh <yosh@gimp.org>
1710 * glib/gtypes.h: check for __pentium4__ when deciding whether to
1711 use bswap for GUINT32_SWAP_LE_BE_IA32(). Fixes bug #141620.
1713 2004-05-01 Hans Breuer <hans@breuer.org>
1715 * glib/gnulib/Makefile.am : added makefile.msc to EXTRA_DIST
1716 fixes #141563, Steve Lhomme
1718 2004-04-30 Matthias Clasen <mclasen@redhat.com>
1720 * === Released 2.4.1 ===
1722 * configure.in: Version 2.4.1, interface age 1.
1726 2004-04-25 Tor Lillqvist <tml@iki.fi>
1728 * glib/gwin32.c (g_win32_get_package_installation_subdirectory):
1729 Plug memory leak. (#140770, John Ehresman)
1731 2004-04-23 Matthias Clasen <mclasen@redhat.com>
1733 * glib/libcharset/localcharset.c (_g_locale_get_charset_aliases):
1734 Reinstate LIBCHARSET_ALIAS_DIR support which got lost at some
1735 point. (#139134, Piotr Klaban)
1737 * glib/gconvert.c (open_converter): Don't call g_strerror() here,
1738 since it can lead to infinite recursion. (#139133, Piotr Klaban)
1740 2004-04-22 Matthias Clasen <mclasen@redhat.com>
1742 * tests/testglib.c (main): Trivial warning fix. (#140345)
1744 * tests/queue-test.c (main): Add some tests for off-by-one errors.
1746 * glib/gqueue.c (g_queue_pop_nth_link): Fix an off-by-one
1747 error. (#139703, Philippe Blain)
1749 * tests/testglib.c (main): Add testcases for g_message() involving
1750 non-printable and unsafe characters.
1752 * glib/gmessages.c (escape_string): Don't assume that
1753 string->str remains unchanged over g_string_insert()
1754 calls. (#139030, Christophe Saout)
1756 * glib/gstrfuncs.c (g_ascii_strtod): Fix problems when a
1757 locale-specific decimal separator directly follows a
1758 number. (#138424, Nickolay V. Shmyrev)
1760 * tests/strtod-test.c (main): Add some more testcases.
1762 * glib/gmain.c (g_main_context_query): Only set time_is_current to
1763 FALSE if context->timeout is not zero. (#137795, Christian Krause)
1765 2004-04-21 Matthias Clasen <mclasen@redhat.com>
1767 * tests/printf-test.c (main): Comment out a nonessential testcase
1768 which fails on HP-UX. (#136283, Jonas Jonsson)
1770 2004-04-15 Matthias Clasen <mclasen@redhat.com>
1772 * tests/patterntest.c (main): Add tests for the empty pattern.
1774 * glib/gpattern.c (g_pattern_spec_new): Don't read and write out
1775 of bounds when the pattern is empty. (#140032, Stanislav Brabec,
1778 2004-04-10 Tor Lillqvist <tml@iki.fi>
1780 * glib/gwin32.c (g_win32_getlocale): Add new language and
1781 sublanguage codes, from GNU gettext. (#137958)
1786 * glib/gthread.c: Decorating variable definitions with
1787 __declspec(dllexport) causes problems on Cygwin build, and isn't
1788 really needed for a native Win32 build with mingw or MSVC, so
1789 remove. (#138402, Roger Leigh)
1791 * glib/libcharset/localcharset.c: Use Win32-specific code also on
1793 * tests/uri-test.c: Don't assume that local filenames are in UTF-8
1794 on Cygwin, either. (#138412, Roger Leigh)
1796 2004-04-08 Guntupalli Karunakar <karunakar@freedomink.org>
1798 * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
1800 2004-04-03 Tor Lillqvist <tml@iki.fi>
1802 * configure.in: Remove AC_CYGWIN, obsolete. Don't let pthreads be
1803 found on Cygwin, they don't work. (#138401, Roger Leigh)
1805 2004-03-31 Tor Lillqvist <tml@iki.fi>
1807 * tests/spawn-test-win32-gui.c: Minor Cygwin fix. (#138405, Roger
1810 * tests/unicode-encoding.c (process): Use UTF-16LE explicitly also
1811 on Cygwin. (#138423, Roger Leigh)
1813 2004-03-30 Adam Weinberger <adamw@gnome.org>
1815 * configure.in: Added en_CA to ALL_LINGUAS.
1817 2004-03-21 Tor Lillqvist <tml@iki.fi>
1819 * glib/gutils.c (g_path_get_dirname): Fix Win32 behaviour in some
1820 cases where a drive letter is present. For 'a:' or 'a:foo', return
1821 'a:.'. This is mostly just for consistency with the behaviour
1822 without a drive letter. But very important is to for 'a:\foo' or
1823 'a:\', return 'a:\', and not 'a:'. (Ditto for forward slashes
1824 instead of backslashes.) (#137316)
1826 * tests/dirname-test.c (main): More complete testing on Win32. If
1827 a test fails, include expected and actual result in error message.
1829 Fri Mar 19 15:21:09 2004 Owen Taylor <otaylor@redhat.com>
1831 * glib/gmain.c: Fix the accidental revert of the
1832 fixes from #112222 that happened when the GChildWatch
1833 code was added. (Caught by Christian Persch)
1835 Fri Mar 19 11:07:06 2004 Owen Taylor <otaylor@redhat.com>
1837 * tests/atomic-test.c (main): Make computation
1838 of "biggest_pointer" vaguely more portable.
1839 (#137498, Jonas Jonsson)
1841 2004-03-16 Tor Lillqvist <tml@iki.fi>
1843 * configure.in: Define HAVE_INT64_AND_I64 also in the mingw (gcc
1844 on Win32) case, where the 64-bit type is called long long, but the
1845 system printf/scanf format modifier for 64-bit integers is still I64.
1847 2004-03-16 Gareth Owen <gowen72@yahoo.com>
1849 * configure.in: Added en_GB to ALL_LINGUAS