2002-12-15 Matthias Clasen * glib/trio/glibtrio.h: New file, redefining all trio symbols to fall into the _G/_g_ private glib namespace. * glib/trio/Makefile.am (libtrio_la_SOURCES): Add glibtrio.h * glib/trio/trionan.c: * glib/trio/triostr.c: * glib/trio/trio.c: Include glibtrio.h * glib/gprintfint.h: * glib/trio/trionan.c: * glib/trio/triostr.c: * glib/trio/trio.c: Include glibtrio.h Fri Dec 13 17:10:21 2002 Manish Singh * glib/gscanner.c (g_scanner_unexp_token): Fix typo. Missing '%' in my last commit. Thu Dec 12 23:08:29 2002 Owen Taylor Fixes from Johannes Stezenbach * configure.in: When adding extra libraries to $LIBS for tests, always put them at the front, since that's how they'll be used in the actual Makefiles. * configure.in: Add a couple of missing ','s in AC_LINK_IFELSE() * m4macros/glib-gettext.m4: Remove a stray setting of $LIBS. Thu Dec 12 20:46:26 2002 Owen Taylor * configure.in: Allow not setting glib_cv_long_long_format when cross-compiling since we assume other things that will cause us to pull in Trio anyways. * configure.in: long_long_format is always ll for trio. * configure.in: Error out if --disable-trio is specified but the C library doesn't have the necessary features. 2002-12-13 Matthias Clasen * glib/trio/Makefile.am (libtrio_la_LIBADD): Add -lm for pow(). * tests/string-test.c: Add a test for positional parameters in g_snprintf(). Thu Dec 12 14:58:55 2002 Manish Singh * configure.in: pull in trio if host printf doesn't have a known way of printing 64-bit ints. * glib/gmacros.h: remove extra whitespace at the end * glib/gscanner.c (g_scanner_unexp_token): use G_GUINT64_FORMAT instead of hardcoding "%llu" * tests/testglib.c: remove obsolete conditionals using G_HAVE_GINT64, we always have it now. * tests/type-test.c: same as above, and for G_G[U]INT64_FORMAT as well. Thu Dec 12 13:52:58 2002 Owen Taylor * m4macros/glib-gettext.m4: AC_PREREQ(2.53) here; convinces Debian's wrappers to use the right autoconf for atk, etc. (Reported by Jody Goldberg) 2002-12-11 Tor Lillqvist * glib/gtimer.c (g_timer_elapsed): Fix off-by-one error. (#100853) * glib/gfileutils.c (g_file_test): Bypass extra test for root on Win32. * glib/glib.def: Add g_{get,set}_application_name. Wed Dec 11 17:53:34 2002 Owen Taylor * === Release 2.1.4 === * NEWS: Updates. Wed Dec 11 17:49:15 2002 Owen Taylor * m4macros/glib-gettext.m4: Unset ac_cv_func_bind_textdomain_codeset before calling AC_CHECK_FUNCS(bind_textdomain_codeset) again. * configure.in: Remove duplicate call to AC_CHECK_FUNCS(bind_textdomain_codeset) 2002-12-11 Pauli Virtanen * configure.in: Added "fi" to ALL_LINGUAS. Wed Dec 11 17:00:20 2002 Owen Taylor * acglib.m4 (ac_compile): Add GLIB_ASSERT_SET() as a helper for adding "must be set when cross-compiling" errors. * configure.in: For all cached variables without defaults, error out if they aren't set. Wed Dec 11 15:52:01 2002 Owen Taylor * configure.in: Also assume AC_LINK_IFELSE() is OK when cross-compiling for the libs checks, and for the sched_get_priority_min() check. * configure.in: Add cached value glib_cv_use_pid_surrogate. Wed Dec 11 15:10:25 2002 Owen Taylor * configure.in: Factor out repeated thread test into a m4_define(); when cross-compiling, assume that AC_LINK_IFELSE() is good enough for thinking that -pthread[s] is OK. (More of #58786) * m4macros/glib-gettext.m4: Fix typo. (Manish Singh) Wed Dec 11 14:28:50 2002 Owen Taylor * configure.in: Version 2.1.4, interface age 1. * m4macros/glib-gettext.m4: Major rewrite; remove leftovers from building intl/, prefer libintl if both libc and libintl have dgettext and libintl also has bind_textdomain_codeset(). (#70627) * configure.in acinclude.m4: Use an include to avoid having to duplicate the gettext macros between glib-gettext.m4 and acinclude.m4. * m4macros/glib-gettext.m4: Do some tricks so that configure.in can use macros under hidden names, but aclocal will still find them when installed. * m4macros/glib-gettext.m4: Add AM_GLIB_DEFINE_LOCALEDIR to encapsulate install location of catalog files. * m4macros/glib-gettext.m4 (AM_GLIB_DEFINE_LOCALEDIR): Fix bug where if --prefix wasn't set on the configure line, GLib would look for translations in NONE/share/locale. Wed Dec 11 11:11:44 2002 Owen Taylor * glib/grand.c: Include string.h, supress a warning. 2002-12-10 Sebastian Wilhelmi * glib/grand.c (g_rand_int_range): Improve generation of pseudo-random integers. (#99720, Morten Welinder ) * README.in, docs/reference/glib/running.sgml, docs/reference/glib/tmpl/random_numbers.sgml, docs/reference/glib/changes.sgml: Added notes about the new algorithm. 2002-12-09 Sebastian Wilhelmi * configure.in: use 0 instead of $defattr, as it isn't defined anymore on platforms using -pthread and linux, where this is used, only uses 0 anyway and not "pthread_attr_default". Sun Dec 8 23:36:12 2002 Owen Taylor * glib/gfileutils.c (g_file_test): Guard against the POSIX allowed behavior where access (file, X_OK) succeeds for uid==0 when no executable bits are set. * glib/gfileutils.c (g_file_test): Add doc notes about the possibility of race conditions, and the fact that EXISTS and IS_EXECUTABLE give results for the real uid not the effective user ID. (#81854, Morten Welinder.) Fri Dec 6 14:34:42 2002 Owen Taylor Avoid literal UTF-8. (Allow it to build with IRIX cc, #72757, Tomas Ogren) * tests/patterntest.c (main): Convert literal iso-8859-1 high bit characters in tests to string escapes. * glib/gunichartable.h glib/gen-unicode-tables.pl: Use hex \xMN escapes rather than literal UTF-8 for casefold tables. * configure.in: AC_PREREQ(2.53). needed for recent GLIB_SIZEOF() changes. Fri Dec 6 12:40:00 2002 Owen Taylor * glib/libcharset/Makefile.am (EXTRA_DIST): Don't distribute ref-add/del.sed., fixing problem with srcdir != destdir. (#99813, Phuc LeHong) Fri Dec 6 12:31:30 2002 Owen Taylor * configure.in: chmod 0755 scripts in AC_OUTPUT(), since install -c won't necessarily do that. (#74376, Martin Gansser, Joshua Weage) Thu Dec 5 16:05:55 2002 Owen Taylor * configure.in: Use AC_LINK_IFELSE(), not AC_TRY_RUN() for va_copy(), __va_copy() checks. * configure.in: When there is a reasonable default, provide that in the 3rd argument of AC_TRY_RUN(), instead of just leaving the 3rd argument empty. 2002-12-05 Matthias Clasen * glib/gstrfuncs.c (g_strncasecmp): Break long deprecation info into two paragraphs. Thu Dec 5 15:43:46 2002 Owen Taylor * configure.in: Fix multiple problems with the programs in the argument of AC_TRY_RUN() having preprocessor defines not in the first column. Thu Dec 5 15:24:14 2002 Owen Taylor Start of fixes for cross-compilation. Based on patches from Dimi Shahbaz, Dan Kegel, Johannes Stezenbach, Amy Lin. (#58786) * configure.in: Don't run the Digital-Unix 4 -std1 check when cross_compiling. * configure.in: Use AC_TRY_COMPILE() rather than AC_TRY_RUN() for inline checks. (Daniel Egger) * configure.in: use AC_CHECK_SIZEOF rather than GLIB_SIZEOF for size_t. Remove unused checks for size of ptrdiff_t/intmax_t. * acglib.m4: Resync GLIB_SIZEOF of to the current AC_CHECK_SIZEOF, which handles cross-compilation. * acglib.m4: Remove no longer needed GLIB_SYSDEFS(), add GLIB_CHECK_VALUE() as a wrapper around the amazing _AC_COMPUTE_INT() autoconf 2.5x internal. * configure.in: Redo the POLL* value checks in a cross-compilation friendly way. Thu Dec 5 15:28:37 2002 Owen Taylor * glib/gtimer.c: Include glibconfig.h early so that we include when needed. * glib/gstrfuncs.c: Fix typo. Tue Dec 3 21:10:28 2002 Owen Taylor * configure.in: Add 3rd argument to remaining AC_DEFINES(), so we can get rid of acconfig.h. (#76334, Daniel Egger) * acconfig.h: Removed. Tue Dec 3 20:22:27 2002 Owen Taylor * glib/*.c: Patch from Sven Neumann to make the include order consistent. (#71704) 2002-12-03 Matthias Clasen * configure.in: Check that strlcpy behaves as per the OpenBSD man page before wrapping it. (#53933) 2002-12-03 Frederic Crozat * glib/gunicollate.c: (g_utf8_collate_key): Fix typo from previous commit Tue Dec 3 01:05:00 2002 James M. Cape * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): Check for NULL before doing anything. Mon Dec 2 16:34:13 2002 Owen Taylor * === Released 2.1.3 === * NEWS: Updated. [ Unmerged change from stable from May 16 ] * autogen.sh: Remove check for GNU gettext, since it was causing problems for Solaris CVS builds. (#81885, Hidetoshi Tajima.) Tue Nov 26 09:51:43 2002 Owen Taylor * glib/gstrfuncs.c (g_strchomp): Avoid non-ANSI pointer comparison. (#54344, Morten Welinder) * tests/strfunc-test.c (main): Add tests for strchomp(). 2002-11-30 Ole Laursen * configure.in: Added "da" to ALL_LINGUAS. 2002-11-29 Matthias Clasen * glib/gstrfuncs.c (g_ascii_strtoull): It is a 2.2 addition. * glib/gtimer.c (g_time_val_add): Adjust to changed parameter names. * glib/gutils.c (g_get_application_name): Mark as 2.2. addition. * glib/gstrfuncs.c (g_ascii_strtoull): Mark as 2.0.7 addition. 2002-11-28 Matthias Clasen * glib/gutils.c: * glib/gtree.c: * glib/gstring.c: * glib/gstrfuncs.c: * glib/giochannel.c: Move some docs inline, and add deprecation information. To see the list of affected functions, grep for "Deprecated:". * configure.in: Fix the definitions around printf: either we use system printf in which case HAVE_VASPRINTF, HAVE_C99_VSNPRINTF and HAVE_UNIX98_PRINTF have already been determined by earlier tests, or we use the included printf, in which case we know that these three can be defined as 1. (#99826) * glib/gutf8.c (g_utf8_strreverse): * glib/gstrfuncs.c (g_str_has_suffix): (g_str_has_prefix): * glib/gprintf.c (g_printf): (g_fprintf): (g_sprintf): (g_vprintf): (g_vfprintf): (g_vsprintf): * glib/gmarkup.c (g_markup_parse_context_get_element): Mark as 2.2 API additions. * configure.in: Fix the gtk-doc version check. 2002-11-27 Matthias Clasen * glib/gmessages.h: Use G_LIKELY without surrounding parentheses in g_assert() and g_return_[val]_if_fail() so that we always trigger the gcc warning about "assignment used as truth value". * glib/gmacros.h: Always put parentheses in G_LIKELY and G_UNLIKELY. 2002-11-26 Matthias Clasen * glib/gmessages.h: Only use G_LIKELY in g_assert() and g_return_[val]_if_fail() if it is actually doing something. 2002-11-26 Sebastian Wilhelmi * glib/grand.c, gthread/gthread-impl.c, tests/rand-test.c: Changed the seeding algorithm. Old behaviour can be achived by setting envvar G_RANDOM_VERSION to "2.0". (#99262) * docs/reference/glib/glib-docs.sgml, docs/reference/glib/Makefile.am: Renamed docs/reference/glib/changes-2.0.sgml to docs/reference/glib/changes.sgml and added section for changes from 2.0 to 2.2 (Also corrected 1.0 to 1.2). * README.in, docs/reference/glib/running.sgml, docs/reference/glib/tmpl/random_numbers.sgml, docs/reference/glib/changes.sgml: Added notes about the new seeding algorithm. * configure.in: Make CPPFLAGS, not CFLAGS, include G_THREAD_CFLAGS. CFLAGS is used while linking too and thus GLib programs would link to the threads library on some platforms. Also fixed a bug manifesting through this change. (#77981) 2002-11-26 Matthias Clasen * glib/gmacros.h: Fix the non-gcc-3.x definitions of G_LIKELY and G_UNLIKELY. (Reported by Dan Mills) 2002-11-25 Matthias Clasen * glib/gfileutils.c (g_build_path): (g_build_filename): Document that the varargs must be NULL-terminated. (#99510) * glib/gmessages.h (g_assert): (g_return_if_fail): (g_return_val_if_fail): Remove the (no longer effective) empty if-branch. * glib/gmacros.h: Change the definition of G_LIKELY, so that g_return_if_fail() and friends still trigger a gcc warning if the expr is an assignment. 2002-11-23 Matthias Clasen * configure.in: Generate docs/reference/*/version.xml. * glib/gdir.h: Add Copyright notice. 2002-11-22 Sebastian Wilhelmi * configure.in: Fixed typo: PTHREAD_PRIO_MIN -> PTHREAD_PRIO_MAX. (Laurent Vivier, #99293) Fri Nov 22 09:39:09 2002 Owen Taylor * glib/gmacros.h: Remove broken G_HIDDEN_SYMBOL definition which wasn't supposed to be committed at all. Thu Nov 21 16:19:21 2002 Owen Taylor * glib/ghash.c: Patch from Morten Welinder to make ghash.c properly obey DISABLE_MEM_POOLS. (#96600) Thu Nov 21 14:09:44 2002 Owen Taylor * glib/gmacros.h: Add G_GNUC_DEPRECATED. (Tom Tromey, #87969) 2002-11-21 Tor Lillqvist * config.h.win32.in: Update to match what is currently produced by autotools. * configure.in: Remove superfluous spaces on two shell variable assignment lines. Don't define HAVE_GOOD_PRINTF as 0 if we don't have a good printf, it is tested with #ifdef. * glib/glib.def: Add new functions. * glib/Makefile.am: If !HAVE_GOOD_PRINTF, add libtrio.la to LIBADD and DEPENDENCIES. * glib/glib.rc.in * gmodule/gmodule.rc.in * gobject/gobject.rc.in * gthread/gthread.rc.in * {glib,gmodule,gobject,gthread}/makefile.{mingw,msc}.in: Hardcode 2.0 in the names, as that is what Makefile.am does. 2002-11-21 Matthias Clasen Include a printf implementation supporting C99 snprintf and SUS positional parameters: (#79488) * glib/gstrfuncs.c: * glib/gspawn-win32.c: * glib/gscanner.c: * glib/gconvert.c: * glib/gbacktrace.c: Use _g_printf wrappers. * glib/gutils.c (g_vsnprintf): Simplify, since we can assume C99 snprintf semantics now. * glib/gmessages.c (printf_string_upper_bound): No longer needed, since we can assume C99 snprintf semantics now. (g_logv): Simplify. * acinclude.m4 (AC_FUNC_PRINTF_UNIX98): New macro to check wether printf supports SUS positional parameters. * configure.in: New option --enable-included-printf to force compilation of trio; otherwise trio is compiled if the system printf misses either C99 snprintf semantics of SUS positional parameters. * glib/Makefile.am (SUBDIRS): Conditionally compile trio. (libglib_2_0_la_SOURCES): Add gprintf.c and gprintfint.h. (glibsubinclude_HEADERS): Add gprintf.h. * glib/gprintfint.h: New private wrapping either system printf or trio printf variants in _g_printf wrappers for use inside glib. * glib/gprintf.h: New public header declaring g_printf variants. * glib/gprintf.c: Corresponding implementations. * glib/trio/*: New directory, containing the trio-1.9 sources. 2002-11-20 Matthias Clasen * glib/gmessages.h (g_return_if_fail): (g_return_val_if_fail): Use G_LIKELY. (#69022) * glib/gmacros.h (G_LIKELY): (G_UNLIKELY): New macros for hinting the compiler about the expected result of expressions. For gcc 3.x, define these using __builtin_expect. (#69022) Tue Nov 19 14:38:18 2002 Owen Taylor * glib/gstrfuncs.c (g_ascii_strtoull): Fix strtull/strtoull type in docs (#99012, Morten Welinder.) Add copyright information for code taken from GNU libc. 2002-11-18 Tor Lillqvist * glib/gspawn-win32.c (do_spawn_with_pipes): Do handle G_SPAWN_DO_NOT_REAP_CHILD after all, similarily as on Unix. If the flag is not set, don't call DuplicateHandle() on the handle returned by the helper process, and set the "child pid" returned to the called to zero. Close the handle to the helper process in all cases. * glib/gspawn.c (g_spawn_async_with_pipes): Document Windows behaviour of G_SPAWN_DO_NOT_REAP_CHILD. 2002-11-18 Tor Lillqvist [Win32] Fix the asynchronous g_spawn* to return the process handle of the started program properly. (Note: not the process id. The spawn*() functions in the C runtime return the created process's handle. There doesn't seem to be any way to get the process id of a child process if you have the handle. But then, the process handle usually is more useful anyway.) * glib/gspawn-win32-helper.c (WinMain): If the spawning of the child process succeeded, and if asynchronous spawn (P_NOWAIT), write the result handle up to the parent process, waiting to read it in do_spawn_with_pipes(). * glib/gspawn-win32.c (do_spawn): Use return value from spawning the helper. If it is -1 the helper wasn't found or couldn't be run for some reason. Otherwise it is the helper's process handle. (g_spawn_async_with_pipes): Pass the child_pid parameter on to do_spawn_with_pipes(). (do_spawn_with_pipes): Take also a child_pid parameter. If do_spawn() returned -1, fail immediately. Otherwise make the handle passed to us by the helper process into a handle valid in this process by calling DuplicateHandle(). 2002-11-17 Tor Lillqvist * glib/gspawn-win32.c (g_spawn_async_with_pipes): Ignore the G_SPAWN_DO_NOT_REAP_CHILD flag, can't be meaninfully implemented on Windows, at least not now. Always pass dont_wait as TRUE to do_spawn_with_pipes(). The semantics of the dont_wait parameter is very different from the semantics of the intermediate_child parameter to fork_exec_with_pipes() in the Unix version. This fixes a serious bug, g_spawn_async() in fact behaved synchronously. (do_spawn_with_pipes, do_spawn): Rename from fork_exec_with_pipes() and do_exec(), those names were from the Unix bersion, and misleading. (close_and_invalidate): Don't try to close invalid fds. * glib/gspawn.c (g_spawn_async_with_pipes): Add warning about Windows behaviour. There is no fork(), so the child_setup() function is in fact called in the parent. * glib/gspawn-win32-helper.c (WinMain): Insert spaces in argv debugging output. * tests/spawn-test-win32-gui.c: New file. Test program to be linked as a GUI application. Behaves differently depending on how invoked (by spawn-test). * tests/spawn-test.c (run_tests): On Win32, run the spawn-test-win32-gui program, too, in several ways, synchronously and asynchronously. * tests/Makefile.am: Corresponding change. Fri Nov 8 19:44:20 2002 Soeren Sandmann * docs/reference/glib/tmpl/arrays.sgml: * docs/reference/glib/tmpl/arrays_byte.sgml: * docs/reference/glib/tmpl/arrays_pointer.sgml: * docs/reference/glib/tmpl/date.sgml: * docs/reference/glib/tmpl/linked_lists_double.sgml: * docs/reference/glib/tmpl/linked_lists_single.sgml: * docs/reference/glib/tmpl/main.sgml: * docs/reference/glib/tmpl/queue.sgml: * docs/reference/glib/tmpl/random_numbers.sgml: * docs/reference/glib/tmpl/relations.sgml: * docs/reference/glib/tmpl/scanner.sgml: * docs/reference/gobject/tmpl/gtype.sgml: * docs/reference/gobject/tmpl/value_arrays.sgml glib/garray.h: * glib/gdate.h glib/giochannel.h glib/glist.h glib/gmain.c: * glib/gmain.h glib/gqueue.c glib/gqueue.h glib/grand.c glib/grand.h: * glib/grel.h glib/gslist.h glib/gtimer.h gobject/gvaluearray.h: Trivial s/foo/foo_/ fixes to make includable with -Wshadow without warnings (#91680) Thu Nov 7 19:32:26 2002 Owen Taylor * glib/gutils.[ch] (g_set/get_application_name): Patch from Havoc Pennington to add functions for setting and getting a human readable application name. * configure.in: Up to version 2.1.3, since we'll need to depend on last addition for GTK+. 2002-11-06 Tor Lillqvist * glib/glib.def: Add g_main_thread_init. 2002-11-06 Matthias Clasen * glib/gstrfuncs.c (g_str_has_suffix): (g_str_has_prefix): Minor doc markup fix. Mon Nov 4 10:45:48 2002 Owen Taylor * configure.in: Add -DG_DISABLE_CAST_CHECKS for everything but --enable-debug. * configure.in: Require pkg-config 0.14. (#97553) Mon Nov 4 14:41:48 2002 Owen Taylor * glib/gbsearcharray.c: Include config.h so DISABLE_MEMPOOLS actually has an effect. (#96437, Morten Welinder) * tests/uri-test.c: Include 2002-11-03 Dmitry G. Mastrukov * configure.in: Added Belarusian to ALL_LINGUAS 2002-11-02 Daniel Elstner * glib/giochannel.c (g_io_channel_write_chars): Fix left_len calculation in the from UTF-8 to UTF-8 case: left_len should be the number of bytes left in the input buffer rather than channel->write_buf. (#96373) 2002-10-27 Tor Lillqvist * configure.in (G_MODULE_LDFLAGS): Don't set on Win32, only causes trouble. * glib/gmain.c (g_poll): Fix for bug reported by Herman Bloggs (http://mail.gnome.org/archives/gtk-devel-list/2002-October/msg00101.html) and others. We waited for events only for GPollFDs whose events field had G_IO_IN set. We need to wait also for events for GPollFDs that have just G_IO_OUT set. Non-blocking sockets in the process of being connect()ed are one such case. Also silence a couple of gcc warnings. Fri Oct 18 13:41:30 2002 Manish Singh * glib/giochannel.c (g_io_channel_read_line_backend): avoid creating negative values out of unsigned values using MAX, check to see if the result would be positive before doing the calculation. Tue Oct 15 15:28:47 2002 Manish Singh * tests/iochannel-test.c: use gsize instead of int where appropriate (64-bit cleanliness fix). Removed leftover line_term cruft. Tue Oct 15 15:07:45 2002 Manish Singh * gmodule/Makefile.am gobject/Makefile.am gthread/Makefile.am: add -DG_DISABLED_DEPRECATED * tests/gio-test.c tests/mainloop-test.c tests/string-test.c tests/testglib.c test/tree-test.c tests/unicode-collate.c tests/unicode-normalize.c: Deprecation cleanup Mon Oct 14 15:51:05 2002 Owen Taylor * glib/gdate.c (g_date_fill_parse_tokens): Fix a memory leak. (#94550, Sebastian Rittau) Mon Oct 14 15:36:11 2002 Owen Taylor * glib/gcompletion.[ch] (g_completion_complete): Make prefix argument const. (#91662, Gustavo Carneiro) Mon Oct 14 15:32:14 2002 Owen Taylor * tests/mainloop-test.c (adder_response): Fix a minor memory leak. Sat Oct 12 21:30:41 2002 Tim Janik * merged up from glib-2-0: * glib/gstrfuncs.c (g_ascii_strtod): fix comment. (g_ascii_strtoull): new function, acting like strtoull(3) in the C locale. * glib/gscanner.[hc]: fix 32bit issues with integer parsing and support storing 64bit values in GTokenValue by using g_ascii_strtoull(). Sat Oct 12 12:34:22 2002 Soeren Sandmann * glib/gtree.c (g_tree_search), glib/gspawn.c (g_spawn_async_with_pipes): Documentation fixes: #71778, Owen Taylor; #85095, Bill Janssen, Owen Taylor. Thu Oct 10 23:27:02 2002 Tim Janik * glib/gscanner.c (g_scanner_msg_handler): if input_name is NULL, print out "" instead of completely skipping input specification and thusly loosing error line information. Sun Sep 29 12:15:44 2002 Manish Singh * tests/mainloop-test.c: use gsize instead of int where appropriate (64-bit cleanliness fix) 2002-09-29 Tor Lillqvist * configure.in: Instead of forcing -fnative-struct into CFLAGS when using gcc for Win32, check for gcc version 3.x which uses -mms-bitfields instead. Also check if either of these switches is actually available at all, and warn if not. Thanks to Soren Andersen for the inspiration. * HACKING: Say we require autoconf 2.52 as that is what configure.in does. 2002-09-23 Arvind Samptur * glib/gspawn.c (fork_exec_with_pipes) : when the child fails we need to reap it to avoid a zombie. This would happen in case of g_spawn_sync. Fixes #92658 2002-09-20 Matthias Clasen * glib/gscanner.c (g_scanner_msg_handler): Don't print scanner->input_name when it is NULL. (#93752) 2002-09-06 Havoc Pennington * autogen.sh: automake 1.4 2002-09-01 Soeren Sandmann * docs/reference/glib/tmpl/datalist.sgml, glib/gmain.c: Documentation fixes: (#75255, Martin Schulze; #76104, Daryll Strauss) 2002-08-26 Tor Lillqvist * configure.in (G_LIBS_EXTRA): Don't link with -lwsock32 on Cygwin (#91696, Masahiro Sakai). Tue Aug 20 16:01:03 2002 HideToshi Tajima * glib/gconvert.c (strdup_len): validate 'len' argument properly for the case that input string is not null-terminated. (#91222) 2002-08-10 Gustavo Noronha Silva * configure.in: added pt_BR to ALL_LINGUAS 2002-08-07 Matthias Clasen * glib/gmarkup.c (g_markup_parse_context_get_element): Use g_return_val_if_fail, no g_return_if_fail. 2002-08-06 Sebastian Wilhelmi * glib/gthread.c: Set the normal PID surrogate priority according to getpid() to avoid errors for niced processes. (#86116) * gthread/gthread-impl.c, gthread/gthread-posix.c, gthread/gthread-solaris.c: Do the same for the posix/dce implementation. Solaris still needs to set priority of the main thread, because all unbound threads will schedule according to that value and it defaults to 0 (the minimal value). * glib/gmain.c: Factor out g_main_context_init_pipe from g_main_context_new to initialize the wakeup pipe of a context. Call that function from g_main_context_new if threads are initialized and for all contexts when threads are initialized in g_main_thread_init. (#86872) * gthread/gthread-impl.c: Call g_main_thread_init. (#86872) Thu Jul 25 14:23:15 2002 Owen Taylor * glib/gfileutils.c: Clarify the behavior of g_build_path() for empty elements and for leading and trailing copies of the separator in the docs. * glib/gfileutils.c: Fix problems with leading elements consisting only of "/" characters. (#85928, Guillaume Chazarain) * tests/strfunc-test.c (main): Add more test cases for g_build_filename(). 2002-07-26 Matthias Clasen * glib/gunicode.h: * glib/gutf8.c (g_utf8_strreverse): New function to revert a utf8 string. * glib/gpattern.c (g_utf8_reverse): Gone, replaced by g_utf8_strreverse. (#87725) Thu Jul 25 20:57:20 2002 Owen Taylor * glib/giochannel.c (g_io_channel_read_line): Fix docs for @str_return to conform to the main docs and the implementation as to whether the terminator is included. (#87964, Jacob Berkman) Thu Jul 25 19:52:41 2002 Owen Taylor * glib/guniprop.c (real_tolower): Handle the end of the string properly when max_len is set. (#88545, Morten Welinder.) Rename the next_t variable to next_type to make cc-mode happy. * glib/gconvert.c (g_iconv_open): Fix missing label from previous commit. Thu Jul 25 19:41:03 2002 Owen Taylor * glib/giochannel.c (g_io_channel_get_flags): Fix incorrect return value in g_return_val_if_fail (#85545, David L. Cooper II) Thu Jul 25 19:12:43 2002 Owen Taylor * glib/giochannel.c (g_io_channel_set_encoding): Clarify that only one of the conditions listed in the docs need to be true, not all of them. (#87176, Sebastian Rittau) * glib/giochannel.c (g_io_channel_read_line): Fix description of the return value. (#87754, Manuel Clos) Thu Jul 25 19:02:53 2002 Owen Taylor * glib/gmain.c (g_timeout_add): Remove reference in the docs to @notify parameter. (#87768, Manuel Clos) Thu Jul 25 17:57:07 2002 Owen Taylor * glib/gconvert.c (g_iconv_open): Document the (GIConv)-1 return value on failure. (#87559, Jarek Dukat) * glib/gconvert.c (g_iconv_open): Fix potential problems with the assumption that (GIConv)(iconv_t)-1 is the same as (GIConv)-1. 2002-07-15 Matthias Clasen * glib/gmarkup.h: * glib/gmarkup.c (g_markup_parse_context_get_element): New function to get the currently open element. (#70448) 2002-07-04 Sebastian Wilhelmi * tests/*.c: Added #undef G_DISABLE_ASSERT and #undef G_LOG_DOMAIN throughout the files, which didn't already have them. (#87312) 2002-07-03 Sebastian Wilhelmi * configure.in: Made the thread flags determination tests first check for the canonical form -pthread[s], then for other possibilities. Also recognize some more platforms. Modeled after patch from Miroslaw Dobrzanski-Neumann (#77981). * configure.in: Fixed bugs in posix thread priority resolution. Also added AIX priorities. Fix from Laurent Vivier . (#82599) * gthread/gthread-solaris.c: Use thr_min_stack() instead of sysconf (_SC_THREAD_STACK_MIN). if stack_size is 0 on entry to g_thread_create_solaris_impl, also pass 0 to thr_create. Otherwise the stack might be to small for any nontrivial thread. Discovered on intel-solaris by Rajkumar Sivasamy . 2002-07-03 Anders Carlsson * configure.in: Add a forgotten trailing ` in the GLIB_BINARY_AGE expression. Also fixup LT_CURRENT. 2002-07-02 Sebastian Wilhelmi * configure.in: Set binary age to 0 to make it compile. * configure.in: Improve checks for dce/posix threads to also do the right thing, if the thread functions are not declared in pthread.h. Idea from Miroslaw Dobrzanski-Neumann in #77981. 2002-07-01 Anders Carlsson * configure.in: Up version to 2.1.0. 2002-07-01 Sebastian Wilhelmi * glib/garray.h: Add parenthesis to protect macro argument. Spotted by Sam Couter . (#86826) 2002-06-28 Sebastian Wilhelmi * glib/gmessages.h (g_assert, g_assert_not_reached, g_return_if_fail, g_return_val_if_fail): In case of G_DISABLE_ASSERT replace "G_STMT_START{ }G_STMT_END" with "G_STMT_START{ (void)0; }G_STMT_END", because the former chokes gcc prior to 3.0. (#86664) 2002-06-26 Yanko Kaneti * configure.in: (ALL_LINGUAS) Added Bulgarian (bg). Thu Jun 13 16:12:04 2002 Owen Taylor * glib/gmain.c (struct _GTimeoutSource): Make interval unsigned to match g_timeout_source_new(). (#82624, Tim Janik.) * glib/gmain.c (g_timeout_prepare): Add some extra gymnastics to avoid signed/unisgned integer overflows. Thu Jun 13 15:57:46 2002 Owen Taylor * INSTALL.in: Add a note about the deficiency of Tru64 iconv. (#81699, Manuel Op de Coul) Tue Jun 11 17:03:39 2002 Owen Taylor * tests/patterntest.c (test_compilation) * glib/gmem.c (profiler_try_realloc): A couple of 64-bit printf format fix from George Lebl. (#82817) * glib/gconvert.c (open_converter): Fix gsize/gint mixup for g_iconv() arguments. (#83270, David L. Cooper II) 2002-06-03 Matthias Clasen * glib/gwin32.c (g_win32_get_package_installation_directory): Replace homegrown "hash" entity by standard ISO entity "num". 2002-05-26 Matthias Clasen * glib/gmain.c: Remove references to nonexisting functions g_source_set_callback_closure(), g_source_poll(), g_source_add() from docs. * glib/gdir.c (g_dir_open): Typo fix in docs. * glib/gasyncqueue.c (g_async_queue_lock): (g_async_queue_unref_and_unlock): Fix markup to avoid erroneous s in docs. * glib/gwin32.c: Escape #'s leading to erroneous s in docs. * glib/gtree.c: Replace some occurances of Gtree by GTree in docs. * glib/gstring.c (g_string_insert_unichar): Typo fix in docs. 2002-05-23 Havoc Pennington * glib/gspawn.c (fork_exec_with_pipes): on success, close the pipes from the child. Fix from Tim. 2002-05-22 jacob berkman * m4macros/glib-gettext.m4 (AM_GLIB_WITH_NLS): fix tyop Wed May 22 15:40:47 2002 Owen Taylor * README.in: Remove notes about now-fixed-bugs. * m4macros/glib-gettext.m4 acinclude.m4: Get rid of AC_MSG_NOTICE() usage, since some broken systems (Hi Debian!) might not be using autoconf-2.5x for downstream packages even though we require it for glib itself. * INSTALL.in: Add a note about installing extra converters for Solaris. * glib/gutils.h (g_bit_nth_msf): Fix termination condition. (#82582, Paolo Molaro) Tue May 21 15:51:17 2002 Owen Taylor * configure.in: $with_libiconv, not $with_iconv. Mon May 20 18:02:46 2002 Owen Taylor * configure.in: Move iconv tests before gettext checks. (#81999) * m4macros/glib-gettext.m4 acinclude.m4: If we can't link to gettext, try adding in -liconv. (#80076, Boyd Lynn Gerber) * m4macros/glib-gettext.m4 acinclude.m4: Suppress warnings about xgettext not being GNU gettext when libintl wasn't found at all. (#79016, Andrew P. Lentvorski, Jr.) 2002-05-21 Matthias Clasen * glib/gmarkup.c (g_markup_parse_context_parse): Added proper support for CDATA sections. 2002-05-20 jacob berkman * glib/gdir.c: include sys/types.h before dirent.h to build on darwin (fixes #72859) Mon May 20 15:35:59 2002 Owen Taylor * glib/gfileutils.c (get_contents_regfile): Fix double close of file descriptor on error. (#82139, Wayne Schuller) * glib/gspawn.c (close_and_invalidate): Don't close fd's that have already been closed. (Fix from Michael Meeks, #81959) * glib/giochannel.c (g_io_channel_close): If not flushing, dump the contents of the write buffers, so we won't try to write them to an invalid fd later. (Patch from Ron Steinke, fixing #78290, Andreas Persenius.) 2002-05-18 Matthias Clasen * tests/markups/fail-36.gmarkup: * tests/markups/fail-35.gmarkup: * tests/markups/valid-8.gmarkup: * tests/markups/valid-7.gmarkup: * tests/markups/valid-6.gmarkup: * tests/markups/valid-5.gmarkup: New testcases. * tests/markup-test.c (passthrough_handler): (text_handler): Don't ignore the text_len parameter. * glib/gmarkup.c (find_current_text_end): Don't hang on embedded nuls. (#81977) (g_markup_parse_context_parse): Fix passthrough handling to correctly skip processing instructions, comments, doctype declarations and CDATA marked sections. (#81977) Sat May 18 00:21:51 2002 Tim Janik [merged from stable] * glib/gscanner.c (g_scanner_unexp_token): fix missing cases for expected_token. 2002-05-17 Tor Lillqvist * config.h.win32.in: Match new additions in a configure-produced config.h. * glibconfig.h.win32.in: gssize and gsize as in a configure-produced glibconfig.h. * glib/glib.def: Add new functions. Thu May 16 12:24:00 2002 Owen Taylor * acinclude.m4 m4macros/glib-gettext.m4: Incorporate AM_LC_MESSAGES, AM_PATH_PROG_WITH_TEST as AM_GLIB_* to avoid dependencies on gettext m4 files. (#81885, Hidetoshi Tajima.) 2002-05-14 Alex Larsson * glib/gstrfuncs.c: * glib/gstrfuncs.h: New functions g_str_has_suffix and g_str_has_prefix. * tests/string-test.c: (main): Test the new functions. Mon May 13 23:20:00 2002 Owen Taylor * autogen.sh (have_gettext): Add a check for GNU gettext. (Pointed out by Dan Winship in #59386.) Mon May 13 11:55:33 2002 Owen Taylor * configure.in acglib.m4: If sizeof(int) == sizeof(long) run compilation tests to determine which way gsize should be defined. (#74413, reported by Miroslaw Dobrzanski-Neumann) Mon May 13 11:42:23 2002 Owen Taylor * glib/libcharset/*: Update from libcharset CVS. Includes additional encodings for Solaris (#80396, Qingjiang Yuan) * configure.in: Add getc_unlocked to CHECK_FUNCS(). * glib/gmessages.c (strdup_convert): If g_convert_with_fallback() fails, print the error message to stderr the first time, then return the original string. (#78197) 2002-05-10 Naba Kumar * configure.in: Added "hi" to ALL_LINGUAS. 2002-05-08 Michael Natterer * configure.in: fixed yesterdays fix for cross compiling: simply check the variable "cross_compiling" which gets set by autoconf. 2002-05-07 Matthias Clasen * glib/gmarkup.c (unescape_text): Report unfinished entity references as errors rather than running into an assert. (#80441) 2002-05-07 Michael Natterer * configure.in: added a new conditional CROSS_COMPILING which indicates ($build != $host). If it is set, look for glib-genmarshal in PATH. Error out if it was not found. Tue May 7 11:24:22 2002 Owen Taylor Fixes for #79347, Ron Arts. * glib/gqsort.c (g_qsort_with_data): Handle 0 elements, don't g_return_if_fail(). * tests/qsort-test.c (main): Add a 0 element test. * glib/garray.c (g_[ptr_]array_sort_with[_data]): Remove invalid assertions that array->pdata != NULL .. it's NULL for 0 elements which is a valid case. Mon May 6 16:00:41 2002 Owen Taylor * glib/gbacktrace.h: Exclude OSF from alpha definition of G_BREAKPOINT(), since the assembler apparently doesn't support bpt. (#77852, Gareth Pierce) [from stable] Mon May 6 11:48:08 2002 Owen Taylor [ merged from stable ] * Makefile.am (EXTRA_DIST): Add ChangeLog.pre-2-0 (#78641) * m4macros/glib-2.0.m4: save CFLAGS/LIBS properly when compiling "what went wrong" test case. (#79330) * m4macros/glib-2.0.m4: Remove reference to editing pkg-config script. (From Jim Gettys) * configure.in: (Look for dyld interfaces before dlopen() since OS X can have both. Patch from Jacob Berkman, #80438) 2002-05-01 jacob berkman * configure.in: fix typo on 64-bit printf formatting string configure message (fixes #80389) 2002-04-29 Pablo Saratxaga * configure.in: Added Vietnamese (vi) to ALL_LINGUAS 2002-04-19 Tor Lillqvist * glib/gspawn.c (g_spawn_command_line_sync): Add Windows-specific note to the gtk-doc comment. * glib/gspawn-win32.c: Remove the copy-pasted gtk-doc comment blocks. It's enough to have them in gspawn.c. 2002-04-18 Sebastian Wilhelmi * gthread/gthread-impl.c (g_thread_init): Fixed typo. (#78985) 2002-04-13 Sebastian Wilhelmi * glib/gthreadpool.c (g_thread_pool_thread_proxy): Unlock the pool for all threads leaving it. (#78348) 2002-04-11 Matthias Clasen * tests/patterntest.c: Remove manual UTF-8 -> Latin1 conversion for stuff fed to g_print. 2002-04-08 Sebastian Wilhelmi * tests/gio-test.c, tests/markup-test.c: Use gsize instead of gint. From Miroslaw Dobrzanski-Neumann . (#77982) 2002-04-08 Stanislav Brabec * cs.po: Added Czech (cs) to ALL_LINGUAS. 2002-03-31 Hasbullah Bin Pit * configure.in: Added Malay (ms)to ALL_LINGUAS. 2002-03-29 Tor Lillqvist * glib/glib.def: Add g_convert_init. Thu Mar 28 18:25:14 2002 Owen Taylor * Released 2.0.1 * configure.in: Version 2.0.1, interface, binary age 1. Thu Mar 28 18:22:53 2002 Owen Taylor * README: Remove warning about g_print, etc, encoding. * NEWS: Updates. * glib/gmessages.c (g_log_default_handler): Use %lu (plus a cast) when printing out pid_t arguments. (#76770, Morten Welinder) * glib/gstrfuncs.c (g_strdup_vprintf): Check the result of vasprintf(), return NULL on failure. (#76802, Akira Tagoh) * tests/testglib.c (TEST): Supress a warning with some GCC versions. Thu Mar 28 20:31:51 2002 Tim Janik * glib/gmessages.c: (g_print): (g_printerr): convert prtinf() strings to local charset when writing them to stdout or stderr. Wed Mar 27 18:42:22 2002 Tim Janik * gmessages.[hc]: major cleanups. introduced _g_log_fallback_handler() to handle recursive messages which really doesn't call any GLib functions. this allowes the default handler to use normal GLib functions and also fixes user supplied log level handlers. fixed locking issues, based on a patch from Sebastian Willhelmi, attached to #74356. translate log messages from UTF-8, based on the same patch. save fatal and recursion flags across flag loop. use new integer format code from above patch. move GLib functions out of locked mutex state to avoid deadlocks. move the level prefix and filedescriptor logic into mklevel_prefix(). move _g_debug_init() into a place where we can figure and handle recursion. Mon Mar 25 18:13:06 2002 Owen Taylor * glib/gtypes.h (GUINT*_SWAP_LE_BE_X86): Remove __const__ qualifier from __asm__ statements... GCC since at least 2.96 has assumed no side effects automaticaly, and gcc-3.1 will warn about this usage. (#73308, Cody Russell) Fri Mar 22 17:59:27 2002 Owen Taylor * glib/gmem.c (g_mem_chunk_reset): Fix problem where if g_mem_chunk_reset() is called on an alloc-only memchunk, then a useles GTree was created. Wed Mar 20 18:20:21 2002 Owen Taylor * glib/gconvert.c (open_converter): Try to work around segfaults on Solaris if NULL is passed for outbuf... supposedly gchar *outbuf = NULL... &outbuf works. (#74336, Lauri Alanko) Wed Mar 20 11:17:32 2002 Owen Taylor * glib/gfileutils.c (get_contents_regfile): Close the file descriptor. (#75507, Matthias Clasen) Wed Mar 20 11:00:59 2002 Owen Taylor * configure.in: Use $PKG_CONFIG, not pkg-config. (LEE Sau Dan, #75572) 2002-03-20 Sven Neumann * glib/ghash.c (g_hash_table_resize): avoid repeated call of g_spaced_primes_closest() by moving it out of the CLAMP macro (spotted by Salmaso Raffaele). 2002-03-17 Tor Lillqvist * README.win32: Add MSVC-specific text by Hans Breuer. 2002-03-16 Tor Lillqvist * glib/giowin32.c: Some debugging output formatting changes. The following changes fix a problem with buffered GIOChannels, noticed with the help of Owen's test program, thanks! (#59969) (g_io_win32_prepare): Return value that takes the buffer condition into account, like g_io_unix_prepare() does. (g_io_win32_check): Ditto, like g_io_unix_check(). (g_io_win32_dispatch): Ditto, like g_io_unix_dispatch(). Thu Mar 14 17:37:45 2002 Owen Taylor * glib/giochannel.c (g_io_channel_write_chars): Fix some gsize/gint mismatches. (#74422, Miroslaw Dobrzanski-Neumann) 2002-03-14 Sebastian Wilhelmi * glib/gmessages.c: Fixed threading issues brought up by #74577. Make g_log_find_domain, g_log_domain_new, g_log_domain_check_free and g_log_domain_get_handler require being called with g_messages_lock held and remove all internal locking in them. Then added proper locking to g_log_set_handler, g_log_remove_handler and g_logv. Problem spotted by Miroslaw Dobrzanski-Neumann . (#74577) 2002-03-13 Erwann Chenede * glib/gconvert.c glib/gen-unicode-tables.pl glib/gunidecomp.h : fixed cast/type problems to avoid warnings (with forte compiler) (#73898) 2002-03-12 Alexander Larsson * glib/gconvert.c: Cache getenv("G_BROKEN_FILENAMES") in have_broken_filenames() and use instead. Add g_convert_init() that calls have_broken_filenames() * gthread/gthread-impl.c: Have g_thread_init call g_convert_init. 2002-03-11 Matthias Clasen * glib/gstrfuncs.c (g_strtod): (g_ascii_strtod): (g_ascii_dtostr): (g_ascii_formatd): Doc formatting fixes.