Sun Sep 19 23:52:35 2004 Matthias Clasen * glib/gmessages.c (mklevel_prefix): * glib/gmessages.c (g_logv): Fix the types of some variables to be GLogLevelFlags instead of guint. (#153042, Philippe Blain) 2004-09-18 Matthias Clasen * Version bump * === Released 2.5.3 === 2004-09-17 Matthias Clasen * NEWS: More updates. Thu Sep 16 18:42:46 2004 Manish Singh * glib/abicheck.sh: don't hardcode lengths for cut, instead split on the third field. Thu Sep 16 18:15:32 2004 Manish Singh * glib/gstrfuncs.c (g_strncasecmp): Make it take a guint for number of characters, instead of a gsize. Technically this is incorrect, but this makes it match the prototype, and this is a deprecated function anyway. 2004-09-16 Matthias Clasen * glib/Makefile.am (EXTRA_DIST): Add abicheck.sh Thu Sep 16 02:03:15 2004 Matthias Clasen Implement the same PLT reduction technique used in GTK+: * glib/glib.symbols: Master list of symbols * glib/makegalias.pl: Perl script which creates galias.h * glib/abicheck.sh: Compares actual exports against glib.symbols * glib/glib.def: Removed. This file is now generated from glib.symbols * glib/Makefile.am: Add rules to generate galias.h and glib.def, and add abicheck.sh to TESTS. Don't export _-prefixed symbols. * configure.in: Add --disable-visibility to suppress the use of ELF visibility attributes. * glib/*.c: Include galias.h 2004-09-15 Tor Lillqvist * glib/gwin32.c (g_win32_error_message): Convert message to UTF-8. Technically this breaks API, but the actual use cases in gdk/win32 have assumed it is UTF-8 anyway. Fix documentation. (#152618, Kazuki Iwamoto) * glib/gwin32.h: Don't define ftruncate as a macro. Was never a good idea, and it clashes with newest mingw headers, which have a ftruncate implementation as an inline function. Thanks to Dominik R. * glib/gwin32.c (g_win32_ftruncate): Simplify implementation, just call _chsize() in the C library. 2004-09-15 Matthias Clasen * NEWS: Update. 2004-09-09 Matthias Clasen * glib/gmessages.c (g_return_if_fail_warning): Strip the prefix "IA__" from function names, since that is what GTK+ uses for the PLT-reduction aliases. Thu Sep 9 13:52:26 2004 Owen Taylor * glib/gmessages.c (g_return_if_fail_warning): Include implementation of g_return_if_fail_internal(). Thu Sep 9 10:37:41 2004 Owen Taylor * glib/gmessages.h (g_return_[val_]if_fail): Use a helper function to reduce code size; omit FILE/LINE when we have __PRETTY_FUNCTION__. 2004-09-09 Matthias Clasen * glib/gutils.c (g_get_home_dir): Remove a misleading comment. Thu Sep 9 00:10:40 2004 Matthias Clasen * glib/gstrfuncs.h: * glib/gstrfuncs.c (g_strv_length): Add a function to calculate the length of a NULL-terminated string array. (#150455, Tim-Philipp Müller) * tests/strfunc-test.c (main): Add a test for g_strv_length(). 2004-09-08 Tor Lillqvist * glib/gutils.c (guess_category_value): On Win32, as last resort call g_win32_getlocale() to get the current thread locale. There usually aren't any POSIXish LANG or LC_* environment variables present on Windows machines. * glib/glib.def: Add g_get_language_names. 2004-09-07 Matthias Clasen * glib/gutils.h: * glib/gutils.c (g_get_language_names): Add a function to return a list of applicable locale names. (#95587, Hidetoshi Tajima) (guess_category_value, compute_locale_variants): (explode_locale, unalias_lang, read_aliases): Helper functions for g_get_language_names() * tests/testglib.c (main): Show the results of g_get_language_names() Sun Sep 5 01:46:11 2004 Matthias Clasen * glib/glib.def: * glib/gmessages.h: * glib/gmessages.c (g_log_set_default_handler): New function to install an alternate default log handler. (#66387, Darin Adler) 2004-09-03 Tor Lillqvist * glib/glib.def: Update. Wed Sep 1 20:22:39 2004 Matthias Clasen * glib/gdate.h: * glib/gdate.c (g_date_get_iso8601_week_of_year): Add a function to calculate the ISO 8601 week number of a date. (#92579, Niklas Lundell) 2004-09-01 Anders Carlsson * glib/goption.c: (g_option_context_parse): Set program name before calling the pre-parse hooks. 2004-09-01 Anders Carlsson * glib/goption.c: (g_option_context_free), (print_help), (g_option_context_parse): Handle option contexts without a main group. * tests/option-test.c: (empty_test2), (main): Add test case for that. 2004-08-30 Anders Carlsson * glib/goption.c: (g_option_context_parse): Set prgname to if argc and argv are NULL. * tests/option-test.c: (empty_test1), (main): Add test case for that. Sun Aug 29 23:58:38 2004 Matthias Clasen * glib/ghash.c (g_hash_table_lookup): Point to g_hash_table_lookup_extended() for differentiation between not-found and value-is-NULL. (#150960, Morten Welinder) 2004-08-27 Matthias Clasen Fix #151193, Stepan Kasal: * glib/gfileutils.c (g_file_error_from_errno): * glib/gfileutils.h (enum GFileError): Add G_FILE_ERROR_NOSYS. Fri Aug 27 00:45:41 2004 Matthias Clasen * glib/goption.c (g_option_context_parse): Set the program name from argv[0], noticed by Masatake YAMATO. 2004-08-26 Tor Lillqvist * tests/testglib.c (main): Test the new XDG basedir functions. 2004-08-25 Tor Lillqvist * glib/gwin32.c (g_win32_get_windows_version): New function. Returns the Windows version code like GetVersion(), except that one can pretend to be running on Win9x by setting the G_WIN32_PRETEND_WIN9X environment variable. This is mainly for debugging purposed. * glib/gwin32.h: Declare it. Define macros G_WIN32_WINDOWS_IS_NT_BASED and G_WIN32_HAVE_WIDECHAR_API to test Windows features at run-time. 2004-08-25 Matthias Clasen * configure.in: Post-release version bump. * === Released 2.5.2 === Wed Aug 25 00:25:08 2004 Matthias Clasen * NEWS: Update for 2.5.2 2004-08-25 Tor Lillqvist Win32 equivalences of the XDG folders * glib/gutils.c (get_special_folder): New function, calls SHGetSpecialFolderLocation() to get path to places like the My Documents folder. (g_get_any_init): Use CSIDL_PROFILE as HOME if not overridden by env vars. (g_get_user_data_dir): Use CSIDL_PERSONAL. (g_get_user_config_dir): Use CSIDL_APPDATA. (g_get_user_cache_dir): Use CSIDL_INTERNET_CACHE. Debatable... (g_get_system_data_dirs): Use CSIDL_COMMON_APPDATA and CSIDL_COMMON_DOCUMENTS. (g_get_system_config_dirs): Use CSIDL_COMMON_APPDATA. * configure.in: Add -lole32 to G_LIBS_EXTRA for mingw. * glib/glib.def: Add the new functions. Mon Aug 23 16:16:35 2004 Manish Singh * glib/goption.c (g_option_group_add_entries): remove unused variable. Mon Aug 23 01:35:18 2004 Matthias Clasen * glib/gutils.c (g_get_user_cache_dir): * glib/gutils.c (g_get_user_config_dir): * glib/gutils.c (g_get_user_data_dir): Don't call g_get_home_dir() while holding the g_utils_global lock, simply use g_home_dir. (#150695, Jody Goldberg) 2004-08-21 Tor Lillqvist * glib/giowin32.c (g_io_win32_finalize): Tell select_thread to break out of its loop. Prevents a thread leak. (#147392, Peter Zelezny) * glib/gunicollate.c (g_utf8_collate_key): Guard against bogus return value from strxfrm(). For instance Microsoft's strxfrm() returns INT_MAX on errors. (#141124) 2004-08-19 Tor Lillqvist * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): Correct source and destination charset parameter order in g_convert() call. (#150394, possibly also #141124) 2004-08-20 Jon K Hellan * glib/goption.h: Remove trailing commas. 2004-08-17 Matthias Clasen * configure.in: Check for all four values of the visibility attribute; gcc 2.96 seems to miss "default". (#150379, Vincent Noel) 2004-08-16 Christian Rose * configure.in: Added "bs" to ALL_LINGUAS. 2004-08-11 Ray Strode * docs/reference/glib/glib-sections.txt: * glib/gutils.[ch] (g_get_user_data_dir), (g_get_user_config_dir), (g_get_user_cache_dir), (g_get_system_data_dirs), (g_get_system_config_dirs): Add new XDG basedir API (bug 139973). 2004-08-10 Matthias Clasen * glib/gmacros.h: Remove G_GNUC_INTERNAL from here. * configure.in: Check whether the visibility attribute works and define G_HAVE_GNUC_VISIBILITY and G_GNUC_INTERNAL in glibconfig.h correspondingly. Mon Aug 9 17:37:56 2004 Matthias Clasen * glib/gmacros.h (G_GNUC_INTERNAL): Define empty if gcc is too old. 2004-08-06 Hans Breuer * glib/makefile.msc.in glib/glib.def : updated * glib/gutils.c : avoid 'inconsitent dll linkage' by not defining extern char** environ with msvc 2004-08-06 Matthias Clasen * m4macros/glib-gettext.m4: Require ngettext. (#123847, Danilo Segan) Thu Aug 5 20:53:00 2004 Ray Strode * glib/gutils.h (g_get_codeset): strdup result so caller doesn't free internally managed memory. 2004-08-04 Tor Lillqvist * glib/glib.def: Add glib_check_version. * config.h.win32.in: Update to match what configure produces. Add the G_ATOMIC_*. Define G_ATOMIC_I486 when compiling with gcc. Move HAVE_INT64_AND_I64 to where the configure script puts it. Add HAVE_INTTYPES_H_WITH_UINTMAX. Define intmax_t as __int64 for MSVC. Tue Aug 3 16:19:44 2004 Matthias Clasen * glib/goption.c: Mark user visible strings for translation. Tue Aug 3 15:50:55 2004 Matthias Clasen * glib/goption.[hc]: Pedantically use g types throughout. Tue Aug 3 14:58:20 2004 Matthias Clasen * glib/gutils.h: * glib/gutils.c (glib_check_version): New function to check the version of GLib at runtime. (#149175, Michael Natterer) 2004-08-03 Anders Carlsson * glib/goption.h: * glib/gtypes.h: Move GTranslateFunc to gtypes.h 2004-08-02 Anders Carlsson * glib/Makefile.am: * glib/glib.h: * glib/goption.c: * glib/goption.h: * tests/.cvsignore: * tests/Makefile.am: * tests/option-test.c: Add GOption. 2004-08-02 Matthias Clasen * glib/gmacros.h: Add a G_GNUC_INTERNAL macro to mark function declarations as internal and avoid PLT indirections for them. (#145465, Arjan van de Ven) * glib/gunicodeprivate.h: * glib/gthreadinit.h: * glib/gmessages.h: * glib/gdebug.h: * glib/gconvert.c: Use G_GNUC_INTERNAL for _g_charset_get_aliases(), _g_debug_init(), _g_log_fallback_handler(), _g_mem_thread_init(), _g_messages_thread_init(), _g_convert_thread_init(), _g_rand_thread_init(), _g_main_thread_init(), _g_atomic_thread_init(), _g_mem_thread_private_init(), _g_messages_thread_private_init(), _g_utf8_normalize_wc() and _g_unichar_combining_class(). * glib/gatomic.c: Include gthreadinit.h here to see the declaration for _g_atomic_thread_init(). Sun Aug 1 13:19:18 2004 Manish Singh * tests/uri-test.c: move newline printing from run_from_uri_tests() to run_roundtrip_tests(). 2004-08-01 Matthias Clasen * Post-release version bump * === Released 2.5.1 === Sat Jul 31 23:17:05 2004 Matthias Clasen * NEWS: Updates. Sat Jul 31 20:33:07 2004 Matthias Clasen * tests/shell-test.c: Include a test involving consecutive backslashes followed by a non-escaped doublequote. * glib/gshell.c (tokenize_command_line): Count consecutive backslashes mod 2 to detect escaped doubleqotes. (#127306) 2004-07-30 Matthias Clasen * glib/gconvert.c (g_unescape_uri_string): Don't validate for UTF-8 here. (#148420, Robert Ögren) * tests/uri-test.c (run_roundtrip_tests): Add tests for roundtrip compatibility. Going from filename to uri and back should always give you the same filename back. 2004-07-28 Matthias Clasen * tests/markups/valid-{9,10,11}.gmarkup: * tests/markups/fail-{37,38,39}.gmarkup: Tests for handling of whitespace inside tags. * glib/gmarkup.c (enum GMarkupParseState): Add STATE_AFTER_ATTRIBUTE_NAME and STATE_AFTER_CLOSE_TAG_NAME. (g_markup_parse_context_parse): Accept whitespace between attribute names, '=' and attribute values and between close tag name and '>'. (#148646, Hiroyuki Ikezoe) Tue Jul 27 02:01:31 2004 Matthias Clasen * glib/gstrfuncs.c (g_strsplit_set): s/g_strsplit/g_strsplit_set/ as well. Sat Jul 24 17:50:07 2004 Soeren Sandmann * glib/gstrfuncs.c (g_strsplit_set): s/g_strtokenize/g_strsplit_set/ in docs. Fri Jul 23 10:37:50 2004 Matthias Clasen * tests/type-test.c (main): Actually test G_MAXSIZE with a gsize variable. 2004-07-21 Matthias Clasen Fix #132858, Sven Neumann, patch by James Henstridge: * glib-gettextize.in: modify so that mkinstalldirs will get installed into auxdir. * Makefile.am (gettext_SCRIPTS): install mkinstalldirs. 2004-07-21 Matthias Clasen Fix #147651, reported by Oliver Guntermann: * glib/gprintfint.h (_g_vasprintf): Don't wrap vasprintf(), _g_gnulib_vasprintf() in a macro, since they behave differently wrt. to memory allocation. * glib/gprintf.c (g_vasprintf): Instead, differentiate here between the three cases: system vasprintf(), _g_gnulib_vasprintf(), no vasprintf(). 2004-07-20 Crispin Flowerday * NEWS: Fix a typo in my name Tue Jul 20 04:31:40 2004 Soeren Sandmann * configure.in: Bump version number Sun Jul 18 19:40:30 2004 Soeren Sandmann * === Released 2.5.0 === * Makefile.am (BUILT_EXTRA_DIST): move gtk-doc.make here. Sun Jul 18 01:40:28 2004 Matthias Clasen * NEWS: Updates for 2.5.0 Mon Jul 12 00:02:40 2004 Matthias Clasen * glib/gi18n-lib.h: Remove the ENABLE_NLS check here as well. 2004-07-09 Matthias Clasen * glib/gdir.c (g_dir_open): Convert filename to UTF-8 before using it in the error message. (#146054, Federico Mena Quintero) Thu Jul 8 00:54:32 2004 Matthias Clasen * glib/gi18n.h: Remove the ENABLE_NLS check, since GLib can't be built without anyway. (#135899, Murray Cumming) Mon Jul 5 18:50:27 2004 Matthias Clasen * glib/gmessages.h (g_debug): Complete the g_log() family. (#135730, Sven Herzberg) Mon Jul 5 18:42:30 2004 Matthias Clasen * glib/gnulib/Makefile.am (INCLUDES): Add top_srcdir to make srcdir != . work. (#145166, Kaz Sasayama) Sun Jul 4 01:52:18 2004 Matthias Clasen * configure.in: Use a small test library instead of libpthread.so for testing RTLD_GLOBAL brokenness. (#139567, Julio M. Merino Vidal) 2004-07-02 Sebastian Wilhelmi * glib/gatomic.c: Rename __asm to __asm__ and __volatile to __volatile__ to make the file consistent. Spotted by Benoit Carpentier . 2004-07-01 John Ehresman * glib/giowin32.c (g_io_channel_win32_init, g_io_win32_free) Initialize reset_send & reset_recv fields and don't close sockets unless they were created. (#145153) Fri Jun 11 22:56:46 2004 Matthias Clasen * glib/gscanner.c (g_scanner_get_token_ll): Ignore a missing newline at EOF for single line comments. (#83674, Sven Neumann) Thu Jun 10 23:38:02 2004 Matthias Clasen * tests/printf-test.c (TEST): Actually set any_failed on failure. (#143552, Philippe Blain) 2004-06-09 Federico Mena Quintero * tests/uri-test.c (to_uri_tests): Fix expected results (ha ha) for URIs that *should* have been invalid, or viceversa. (from_uri_tests): Likewise. 2004-06-07 Federico Mena Quintero Fixes #140532. * glib/gconvert.c (is_asciialphanum): Renamed from is_escalphanum(); ensures that this is an ASCII character. (is_asciiescalpha): Renamed from is_escalpha(). (hostname_validate): Use the two functions above. (g_filename_to_uri): Don't convert the filename to UTF-8. (g_filename_from_uri): Don't convert the filename from UTF-8. Mon Jun 7 22:25:24 2004 Matthias Clasen * tests/run-markup-tests.sh: Default to silence, but support a -v argument to get the old output back. 2004-06-06 Tor Lillqvist * glib/gutils.c (g_get_any_init): Check home for being NULL. (#143812, Ivan Wong) Sun Jun 6 15:23:00 2004 Pawan Chitrakr * configure.in: Added "ne" (Nepali) in ALL_LINGUAS Fri Jun 4 19:26:47 2004 Manish Singh * glib/galloca.h: cpp #directives should always have the "#" in the first column of the the line. Do that for "#pragma alloca". Fixes bug #143744. Wed Jun 2 00:57:16 2004 Matthias Clasen * glib/gtypes.h: Use higher precision for the mathematical constants. (#141941, Morten Welinder) Tue Jun 1 22:01:40 2004 Matthias Clasen * glib/gmarkup.c (advance_char): Fix an off-by-one error in g_markup_parse_context_parse(). (#142794, Morten Welinder) Sun May 16 23:23:29 2004 Matthias Clasen Merged from 2.4: * glib/gcompletion.c (g_completion_add_items): (g_completion_remove_items): Remove unnecessary checks. (#142559, Morten Welinder) 2004-05-15 Tor Lillqvist * glib/gutils.c (g_get_any_init): [Win32] Only believe HOME if it is an absolute path and exists. (#138618) 2004-05-14 Tor Lillqvist * glib/gnulib/vasnprintf.c (vasnprintf): Handle empty digit string for precision correctly. (#142400) For backward compatibility with the Trio implementation, make "ll" format modifer work on Win32, too. Change into "I64" before passing to the system printf. (#142433) * tests/printf-test.c (main): Add tests for the above. 2004-05-10 Matthias Clasen Merge from 2.4: * glib/gmain.c (block_source, unblock_source): Make these static. (#142230, Morten Welinder) 2004-05-10 Tor Lillqvist * glib/giowin32.c (g_win32_print_gioflags): Remove two duplicated lines. Thanks to Benoît Carpentier. Sun May 9 02:04:14 2004 Matthias Clasen Merge from 2.4: * glib/guniprop.c (g_utf8_casefold): Avoid an unnecessary memleak. (#141998, Nikolai Weibull) Sat May 8 23:02:26 2004 Matthias Clasen Merge from 2.4: * glib/gutils.h: Remove vestigial g_get_codeset(). * glib/gutils.c (g_get_codeset): Call g_get_charset(). (#137703, Owen Taylor) 2004-05-06 Matthias Clasen * configure.in: Bump version number to 2.5.0. Wed May 5 23:35:44 2004 Matthias Clasen * glib/gconvert.c (g_filename_from_uri): Quote the file scheme to mark it as untranslatable. String change. (#133144, Danilo Segan) 2004-05-03 Pablo Saratxaga * configure.in: Added Walloon (wa) to ALL_LINGUAS Sun May 2 03:51:59 2004 Manish Singh * glib/gtypes.h: check for __pentium4__ when deciding whether to use bswap for GUINT32_SWAP_LE_BE_IA32(). Fixes bug #141620. 2004-05-01 Hans Breuer * glib/gnulib/Makefile.am : added makefile.msc to EXTRA_DIST fixes #141563, Steve Lhomme 2004-04-30 Matthias Clasen * === Released 2.4.1 === * configure.in: Version 2.4.1, interface age 1. * NEWS: Updates 2004-04-25 Tor Lillqvist * glib/gwin32.c (g_win32_get_package_installation_subdirectory): Plug memory leak. (#140770, John Ehresman) 2004-04-23 Matthias Clasen * glib/libcharset/localcharset.c (_g_locale_get_charset_aliases): Reinstate LIBCHARSET_ALIAS_DIR support which got lost at some point. (#139134, Piotr Klaban) * glib/gconvert.c (open_converter): Don't call g_strerror() here, since it can lead to infinite recursion. (#139133, Piotr Klaban) 2004-04-22 Matthias Clasen * tests/testglib.c (main): Trivial warning fix. (#140345) * tests/queue-test.c (main): Add some tests for off-by-one errors. * glib/gqueue.c (g_queue_pop_nth_link): Fix an off-by-one error. (#139703, Philippe Blain) * tests/testglib.c (main): Add testcases for g_message() involving non-printable and unsafe characters. * glib/gmessages.c (escape_string): Don't assume that string->str remains unchanged over g_string_insert() calls. (#139030, Christophe Saout) * glib/gstrfuncs.c (g_ascii_strtod): Fix problems when a locale-specific decimal separator directly follows a number. (#138424, Nickolay V. Shmyrev) * tests/strtod-test.c (main): Add some more testcases. * glib/gmain.c (g_main_context_query): Only set time_is_current to FALSE if context->timeout is not zero. (#137795, Christian Krause) 2004-04-21 Matthias Clasen * tests/printf-test.c (main): Comment out a nonessential testcase which fails on HP-UX. (#136283, Jonas Jonsson) 2004-04-15 Matthias Clasen * tests/patterntest.c (main): Add tests for the empty pattern. * glib/gpattern.c (g_pattern_spec_new): Don't read and write out of bounds when the pattern is empty. (#140032, Stanislav Brabec, Stefan Fent) 2004-04-10 Tor Lillqvist * glib/gwin32.c (g_win32_getlocale): Add new language and sublanguage codes, from GNU gettext. (#137958) * glib/giowin32.c * glib/gmain.c * glib/gstrfuncs.c * glib/gthread.c: Decorating variable definitions with __declspec(dllexport) causes problems on Cygwin build, and isn't really needed for a native Win32 build with mingw or MSVC, so remove. (#138402, Roger Leigh) * glib/libcharset/localcharset.c: Use Win32-specific code also on Cygwin. * tests/uri-test.c: Don't assume that local filenames are in UTF-8 on Cygwin, either. (#138412, Roger Leigh) 2004-04-08 Guntupalli Karunakar * configure.in: Added "gu" (Gujarati) to ALL_LINGUAS. 2004-04-03 Tor Lillqvist * configure.in: Remove AC_CYGWIN, obsolete. Don't let pthreads be found on Cygwin, they don't work. (#138401, Roger Leigh) 2004-03-31 Tor Lillqvist * tests/spawn-test-win32-gui.c: Minor Cygwin fix. (#138405, Roger Leigh) * tests/unicode-encoding.c (process): Use UTF-16LE explicitly also on Cygwin. (#138423, Roger Leigh) 2004-03-30 Adam Weinberger * configure.in: Added en_CA to ALL_LINGUAS. 2004-03-21 Tor Lillqvist * glib/gutils.c (g_path_get_dirname): Fix Win32 behaviour in some cases where a drive letter is present. For 'a:' or 'a:foo', return 'a:.'. This is mostly just for consistency with the behaviour without a drive letter. But very important is to for 'a:\foo' or 'a:\', return 'a:\', and not 'a:'. (Ditto for forward slashes instead of backslashes.) (#137316) * tests/dirname-test.c (main): More complete testing on Win32. If a test fails, include expected and actual result in error message. Fri Mar 19 15:21:09 2004 Owen Taylor * glib/gmain.c: Fix the accidental revert of the fixes from #112222 that happened when the GChildWatch code was added. (Caught by Christian Persch) Fri Mar 19 11:07:06 2004 Owen Taylor * tests/atomic-test.c (main): Make computation of "biggest_pointer" vaguely more portable. (#137498, Jonas Jonsson) 2004-03-16 Tor Lillqvist * configure.in: Define HAVE_INT64_AND_I64 also in the mingw (gcc on Win32) case, where the 64-bit type is called long long, but the system printf/scanf format modifier for 64-bit integers is still I64. 2004-03-16 Gareth Owen * configure.in: Added en_GB to ALL_LINGUAS