Release the main_loop lock around calls to prepare() and check() so that
[platform/upstream/glib.git] / ChangeLog.pre-2-8
index 89e13cb..5bb284c 100644 (file)
@@ -1,3 +1,730 @@
+Mon Feb  1 19:04:28 1999  Owen Taylor  <otaylor@redhat.com>
+
+       * gmain.c (g_main_iterate): Release the main_loop
+        lock around calls to prepare() and check() so
+        that we are not holding the main loop lock
+        over user code.
+
+1999-01-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * configure.in: Moved the check for MT safe function variants
+       after the determination of the MT cflags and use them there.
+
+1999-01-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * configure.in: Fixed typo. Now HPUX 11 thread system detection
+       should work.
+
+       * gutils.c (g_get_any_init): Changed initial bufsize to 64. Should
+       solve some problems out there.
+
+Wed Jan 27 23:21:50 CST 1999 Shawn T. Amundson <amundson@gtk.org>
+
+       * INSTALL
+         NEWS
+         README
+         configure.in
+         glib.spec
+         docs/glib-config.1: version=1.1.14
+
+       * Released GLib 1.1.14
+
+1999-01-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * configure.in: Simplified configure.in test for posix threads,
+       systems, that provide /usr/include/pthread.h should also have the
+       posix thread library. This is to avoid writing down all the tests
+       twice. New test for thread system on HPUX 11. Info from Matt
+       Nottingham <matt@sar.dera.gov.uk>.
+
+Wed Jan 27 20:39:49 PST 1999 Manish Singh <yosh@gimp.org>
+
+       * acinclude.m4: Xsed isn't valid here, don't use it
+
+       * ltmain.sh
+       * ltconfig: better file magic regexp for Linux libs
+
+       * gmodule/Makefile.am: arg, noinst_LTLIBRARIES doesn't make shared
+       libs, revert my previous change to this file
+
+       * docs/texinfo.tex: add it so automake doesn't whine
+
+Wed Jan 27 01:57:19 1999  Tim Janik  <timj@gtk.org>
+
+       * configure.in (G_MODULE_HAVE_DLERROR): applied patch from Andrej
+       Borsenkow <borsenkow.msk@sni.de> to also check for dlsym() in system
+       libraries and -ldl, to catch systems that provide dlopen() in libc
+       and dlsym() in libdl. this is at least the case for Reliant UNIX
+       5.44 (labeling itself as SINIX).
+
+Tue Jan 26 13:39:22 PST 1999 Manish Singh <yosh@gimp.org>
+
+       * configure.in: don't use backquotes in warning text
+
+1999-01-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * gdate.c (g_date_set_time): Removed the #warning about MT
+       unsafety without localtime_r.
+
+       * configure.in: Moved it here.
+
+Mon Jan 25 10:07:53 1999  Raph Levien  <raph@gimp.org>
+
+       * configure.in: (#define G_THREADS_IMPL...) Changed the #define,
+       adding the G_THREADS_IMPL_ prefix to $g_threads_impl_def because
+       it looked wrong to me and was breaking gimp compile.
+
+Mon Jan 25 15:34:43 1999  Timur Bakeyev <mc@bat.ru>
+
+       * configure.in, gstrfuncs.c: Inverted logic of NO_SYS_SYGLIST_DECL -
+       now it's normal (see 1999-01-19 Josh MacDonald). Also, remove from
+       #include <signal.h> wrapper NO_SYS_SYGLIST - *sys_syglist[] declara-
+       tion hides there.
+
+1999-01-25  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * configure.in: Do not use the thread libs, when searching for
+       some functions, as this might require glib to always be linked
+       with the thread libs on some platforms.
+
+       * gutils.c (g_get_any_init): Don't set errno to zero and use it
+       only as the error code, if the function returned a value less
+       0. It might happen, that the call succeeds, even though the errno
+       is set during the call (i.e. it first looks for a passwd file,
+       which is not found). Submitted by Michael Natterer
+       <mitschel@cs.tu-berlin.de>. BTW: Sorry for all the mess with that
+       `getpwuid_r' change, but it had to be done once.
+
+Sun Jan 24 10:33:30 1999  Tim Janik  <timj@gtk.org>
+
+       * gutils.c (g_get_any_init): reverted raja's changes, since they leaked
+       a struct passwd contents buffer and for the rest mostly substituted a
+       while loop with a bunch of gotos.
+       restored the getpwuid() code to what we had after my recent clean ups
+       ("Sat Jan 23 02:14:28 1999 Tim Janik"), module yosh's recent changes.
+       to feature solaris behaviour of directly returning errno, we don't
+       modify error anymore if it's > 0 and simply reset errno.
+       don't reset g_home_dir for !NATIVE_WIN32 && !NATIVE_WIN32.
+
+1999-01-24  Raja R Harinath  <harinath@cs.umn.edu>
+
+       * gutils.c 
+       (g_get_any_init) [HAVE_GETPWUID_R && HAVE_GETPWUID_R_POSIX]: 
+       Hopefully got the error handling for `getpwuid_r' right.
+       (g_get_any_init) [HAVE_GETPWUID_R && !HAVE_GETPWUID_R_POSIX]:
+       Fix typo (change `pw == NULL' to `pw != NULL').
+       
+Sun Jan 24 00:36:22 EST 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * ghash.c:
+       - Revert previous "fix" (which really just did things a
+         different way).
+       - (g_hash_table_remove): Don't need to support multiple values
+         for a single key.
+
+       * tests/hash-test.c:
+       Add test where hash function always returns a single value.
+       Add beginnings of tests for g_hash_table_foreach[_remove] and
+       g_hash_table_remove.
+
+Sat Jan 23 20:40:06 PST 1999 Manish Singh <yosh@gimp.org>
+
+       * gutils.c: removed the #warning about MT without getpwuid_r
+
+       * configure.in: and moved it here
+
+Sat Jan 23 22:45:59 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * ghash.c (g_hash_table_lookup_node, g_hash_table_lookup,
+                  g_hash_table_insert, g_hash_table_remove,
+                  g_hash_table_lookup_extended):
+         - Fixed bug that overwrote nodes in hash buckets instead of
+           adding them to the hash bucket node list.
+           Hash tables now work as advertised.
+
+       (g_hash_table_resize):
+         - Use g_new0 instead of manual init.
+         - Space out code a bit for readability.
+
+       (g_hash_nodes_destroy):
+         - Replaced "if (!hash_node) return;" with
+           "if (hash_node) {do stuff}".
+           Testing takes up less code space than explicit call to
+           'return' before end of function.  (look at gcc -S)
+
+       Updated module header copyright to 1999.
+       New module macro G_HASH_BUCKET for (table,key)->bucket lookups.
+
+       * tests/hash-test.c:
+       - Add two new tests, one with strings as the keys and values, and
+         one with ints as the keys and values.  Tests indirect (strings)
+         and direct (ints) hashing.
+       - Cleanup unused junk left over from testglib.c.
+       - Converted a g_print call to g_assert_not_reached.
+       - Updated copyright to 1999.
+
+       * testglib.c, tests/string-test.c:
+       - Init 'tmp_string' var to NULL, silencing uninit-var warning.
+
+1999-01-23  Raja R Harinath  <harinath@cs.umn.edu>
+
+       * gutils.c (g_get_any_init) [HAVE_GETPWUID_R]:
+       Rewrite not to look at `errno' if library call succeeds, since
+       `errno' is not reset to 0.
+       
+Sat Jan 23 16:17:04 1999  Tor Lillqvist  <tml@iki.fi>
+
+       * glibconfig.h.win32: Update the magic values for
+       pthread_mutex_t size and initializer bytes to match the
+       latest version of pthreads for Win32.
+
+Sat Jan 23 02:14:28 1999  Tim Janik  <timj@gtk.org>
+
+       * gutils.c (g_get_any_init): cleaned up the errno mess for
+       GETPWUID. we especially don't want to g_error() out here!
+       the warning for G_THREADS_ENABLED and !HAVE_GETPWUID_R isn't
+       gcc related.
+       if !HAVE_PWD_H and !NATIVE_WIN32, g_free the home dir before
+       resetting it to NULL, why are we doing this anyways?
+       reordered code a bit so we always provide defaults (except
+       for g_home_dir).
+
+Thu Jan 21 12:40:11 EST 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * tests/{Makefile.am, string-test.c, strfunc-test.c}:
+       Separate string and strfunc tests, working towards goal of
+       having separate test for each of the GLib modules.
+       Add a couple GString length tests.
+
+Thu Jan 21 09:36:05 EST 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * configure.in:
+       Use AC_PREREQ not AC_REQUIRE for autoconf version test.
+
+1999-01-21  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * gutils.c (g_get_any_init): Changed error handling again, as the
+       error is not always set in errno, it is the return value on some
+       systems. What an evil world.
+
+Thu Jan 21 05:35:20 1999  Tor Lillqvist  <tml@iki.fi>
+
+       * gstrfuncs.c: Include signal.h only when the signal names will be
+       needed.
+
+Wed Jan 20 22:09:59 EST 1999 Mandrake <mandrake@mandrake.net>
+
+       * configure.in / Makefile.am : made some adjustments for automake 1.4
+       and autoconf 2.13 (per suggestions made by  Raja R Harinath
+       <harinath@cs.umn.edu>)
+
+Wed Jan 20 20:33:14 EST 1999 Mandrake <mandrake@mandrake.net>
+
+       * autogen.sh: automake 1.4 and libtool 1.2d notices.
+       (maybe I'll write an actual test for automake 1.4 later)
+
+Wed Jan 20 15:05:25 PST 1999 Manish Singh <yosh@gimp.org>
+
+       * HACKING: new file
+
+       * Makefile.am: since we require automake 1.4 now, ditch the build
+       top-level first and just use SUBDIRS
+
+       * gmodule/Makefile.am: use noinst_LTLIBRARIES instead of overriding
+       the install rule
+
+Wed Jan 20 16:16:01 EST 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * gutils.c (g_get_any_init):
+       Revert previous patch, move error value set line down to proper
+       place.  Caught by Elliot Lee <sopwith@redhat.com>.
+
+Wed Jan 20 20:48:58 GMT 1999  Adam D. Moss  <adam@gimp.org>
+
+       * gutils.c (g_get_any_init): All gtk apps were broken
+       here on my setup.  I changed the error to a warning to at
+       least get things limping.
+
+1999-01-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * gutils.c (g_get_any_init): Use getpwuid_r with the right
+       signature, if available.
+
+       * configure.in, acconfig.h: Test for existance of getpwuid_r and
+       its signature.
+
+Tue Jan 19 20:52:43 1999  Tor Lillqvist  <tml@iki.fi>
+       
+       * Makefile.am (EXTRA_DIST): Add new Win32 files.
+
+       * README.win32: Describe the conditional compilation macros.
+
+       * makefile.lcc: Removed.
+
+1999-01-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * configure.in: Moved test for localtime_r and rand_r to a place
+       after the determination of the G_THREAD_LIBS and use them for
+       finding those functions, necessary on systems with a different C
+       library libc_r for threaded progs, like FreeBSD 2.2.x. Info from
+       Timur Bakeyev <mc@bat.ru>.
+
+Tue Jan 19 00:44:24 1999  Josh MacDonald  <jmacd@axis.hip.berkeley.edu>
+
+       * gstrfuncs.c (g_strsignal): The "extern char* sys_siglist"
+       declaration breaks systems with different declarations, like
+       mine (FreeBSD).  So, I added a configuration variable to decide
+       whether the declaration is neccesary.  Change also appears on
+       line 275 of configure.in.
+
+Sun Jan 17 17:13:54 CST 1999 Shawn T. Amundson <amundson@gtk.org>
+
+       * Released GLib 1.1.13
+
+       * README:
+         INSTALL:
+         docs/glib-config: ver=1.1.13
+
+Mon Jan 18 00:02:46 1999  Tim Janik  <timj@gtk.org>
+
+       * NEWS: updates for 1.1.13.
+
+Sun Jan 17 17:15:59 1999  Tim Janik  <timj@gtk.org>
+
+       * gtree.c (g_tree_traverse): removed assertion about rtree->root being
+       NULL, so this function can be applied to unpopulated trees as well, fix
+       provided by Simon Kagedal <sika8225@csd.uu.se>.
+
+Sun Jan 17 11:17:19 1999 Christopher Blizzard  <blizzard@appliedtheory.com>
+
+       * glib.spec: add packager address
+
+Sun Jan 17 11:10:05 1999 Christopher Blizzard  <blizzard@appliedtheory.com>
+
+       * glib.spec: increment version number to 1.1.13
+
+Sun Jan 17 16:14:03 1999  Tim Janik  <timj@gtk.org>
+
+       * glib.h (g_error): if !defined (G_LOG_DOMAIN) define G_LOG_DOMAIN as
+       ((gchar*) 0) instead of ((void*) 0) to silence egcs C++ mode, reported
+       by Seth Alves <alves@hungry.com>.
+
+Sun Jan 17 14:13:52 1999  Tim Janik  <timj@gtk.org>
+
+       * glib.h: added a define G_HOOK_DEFERRED_DESTROY, to substitute a noop
+       GHookList.hook_destroy function.
+
+       * ghook.c (g_hook_destroy_link): don't really call hook_destroy if it
+       is G_HOOK_DEFERRED_DESTROY. for the case where we invoke hook->destroy()
+       we now clean up the hook completely afterwards, i.e. data, func and
+       destroy are immediately set to NULL and hook_free can't play with that
+       values anymore.
+
+       * gmain.c (g_source_add): set hook_destroy to G_HOOK_DEFERRED_DESTROY,
+       instead of using an ugly _noop() hack, this is to avoid an uneccessary
+       function invokation. set hook_free to g_source_destroy_func, this way
+       we always invoke the destroy notifiers for user_data and source_data
+       after execution of dispatch(). thus, g_source_destroy_func() will always
+       be called within the main_loop lock (this wasn't really assured
+       before), and can release and reaquire the look around destroy notifier
+       invokation.
+
+Sun Jan 17 11:01:40 1999  Tor Lillqvist  <tml@iki.fi>
+
+       * config.h.win32 glibconfig.h.win32: Increment version number here
+       also.
+
+Sun Jan 17 05:12:17 1999  Tim Janik  <timj@gtk.org>
+
+       * configure.in: incremented version number to 1.1.13, bin age 0,
+       interface age 0.
+
+       * glib.h: added hook_destroy member to struct _GHookList.
+
+       * ghook.c (g_hook_destroy_link): if the hook_list defines a hook_destroy
+       function, use that to marshal hook destruction notifiers.
+
+       * gmain.c: removed g_source_free_func and added g_source_destroy_func,
+       which marshalls the user_data and source_data destructors of sources
+       outside of the main_loop lock.
+       removed GIdleData struct since its sole member callback can be passed
+       as source_data directly.
+       added a gboolean return value to all g_source_remove* functions,
+       indicating whether the source could be removed, because these functions
+       don't issue warnings upon unseccessful removals themselves. this way at
+       least the caller gets a chance to warn upon failing removals.
+       (g_main_iterate): set in_check_or_prepare around calls to check() or
+       prepare().
+       (g_main_pending): simply return FALSE if called from within check() or
+       prepare().
+       (g_main_iteration): issue a warning if called from within check() or
+       prepare() and bail out with FALSE.
+       (g_main_run): likewise.
+       (g_source_remove_by_funcs_user_data): new function to remove sources by
+       user data and function table.
+       (g_idle_remove_by_data): new function to really remove idles only, since
+       g_source_remove_by_user_data would remove timeouts or other sources as
+       well.
+
+1999-01-16  Tor Lillqvist  <tml@iki.fi>
+
+       * Merge in current Win32 version:
+
+       * README.win32: More text.
+
+       * config.h.win32 glibconfig.h.win32: Update to match the
+       corresponding generated files on Unix.
+
+       * makefile.msc: Update with new source files, and gthread
+       library. Use the compiler flag -MD instead of using -D_DLL and
+       /nodefaultlib:libc msvcrt.lib in the link phase.
+
+       * glib.def: Update to include new functions, drop removed ones.
+
+       * glib.h: Add comments about main loop and polling on Win32. (In
+       general, it's only for the GIMP's use.) Add Win32 IO Channel
+       functions. Remove the obsoleted old IO Channel stuff (which was
+       in #if 0 already).
+
+       * giowin32.c: New file.
+
+       * gmain.c: Include config.h, conditionalize <sys/time.h>
+       inclusion.  Add g_poll implementation for Win32 (only for the
+       GIMP's needs for now, it's hard or even impossible to be as clean
+       and generic as on Unix). Implement g_get_current_time on Win32. If
+       threads aren't supported, don't try to wake up main thread's
+       loop. On Win32, use a semaphore and not a pipe to wake up the main
+       loop.
+
+       * gmessages.c: On Win32, allocate a console window if the standard
+       output handle is invalid before writing to stdout, and reopen stdout
+       to that console window.
+
+       * giochannel.c: Conditionalize unistd.h inclusion. Some indentation
+       cleanup.
+
+       * gstrfuncs.c: Include <signal.h>.
+
+       * gutils.c: On Win32, also check the HOMEDRIVE and HOMEPATH
+       environment variables.
+
+Sun Jan 17 01:06:38 1999 Timur Bakeyev <mc@bat.ru>
+
+       * configure.in: Add support for FreeBSD 2.2.x macro _THREAD_SAFE.
+
+Wed Jan 13 11:27:24 PST 1999 Manish Singh <yosh@gimp.org>
+
+       * glib.h: don't use inline for !__GNUC__ case with g_warning,
+       g_error, and g_message wrappers since some compilers throw
+       away arguments in this case
+
+Tue Jan 12 21:59:14 PST 1999 Manish Singh <yosh@gimp.org>
+
+       * acinclude.m4
+       * ltconfig
+       * ltmain.sh: upgrade to libtool 1.2d (with fixes for irix6 and osf)
+
+       * testglib.c: removed unused cruft
+
+Tue Jan 12 09:57:06 PST 1999 Manish Singh <yosh@gimp.org>
+
+       * gdate.c: #warning isn't portable, check for gcc
+
+1999-01-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+        * gdate.c: Include config.h to get HAVE_LOCALTIME_R macro.
+
+        * configure.in: Moved function check back to the place, they've
+        been before.
+
+1999-01-11  Jeff Garzik  <jgarzik@pobox.com>
+
+       * gstrfuncs.c:
+       Do not use vasprintf.
+
+       * configure.in, glib.h, testglib.c, tests/.cvsignore,
+         tests/Makefile.am, tests/alloca-test.c:
+       Do not use alloca.
+
+1999-01-11  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * configure.in: Test for localtime_r only after including the
+       right MT enabling CFLAGS (i.e. -D_REENTRANT on most systems).
+
+       * configure.in: Find right thread system on DG/UX. Thanks to Marc
+       J. Fraioli <fraioli@dg-rtp.dg.com> for hint. Finally removed the
+       stuff for -fstack-check, that didnt work anyway.
+
+       * gdate.c (g_date_set_time): Emit warning, if no localtime_r
+       function is available on thread enabled systems. Define ptm only,
+       if really needed, and assert on it.
+
+Sat Jan  9 15:08:44 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * testglib.c:
+       Make all aux functions static.
+
+       * tests/Makefile.am, tests/dirname-test.c, tests/type-test.c:
+       New tests dirname-test and type-test, from testglib.
+
+Sat Jan  9 13:53:00 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * configure.in:
+       Add checks for vasprintf, localtime_r.
+
+       * gdate.c (g_date_set_time):
+       Use localtime if localtime_r is not available.
+
+       * gstrfuncs.c (g_strdup_vprintf):
+       Use glibc vasprintf if possible; it's a bit faster than using
+       GLib routines, and makes output code a bit smaller.
+
+       * acconfig.h:
+       Remove HAVE_VSNPRINTF and HAVE_VPRINTF.  autoheader picks these
+       up automatically and puts them in config.h.in.
+
+Thu Jan  7 15:14:08 1999  Owen Taylor  <otaylor@redhat.com>
+
+       * gmain.c (g_source_free_func): Call the source-specific
+       free function when the hook is freed not when it
+       is destroyed; this fixes a bug where a timeout destroyed
+       from itself would access already freed data.
+
+1999-01-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * gutils.c (g_get_any_init): Here we must replace getpwuid by
+       getpwuid_r, but as I do not know how for now, I just made a FIXME
+       note ;-)
+
+       * gdate.c (g_date_set_time): localtime --> localtime_r to make it
+       thread safe.
+
+       * configure.in: We do not need to check for broken solaris mutex
+       intitializer any longer. Provide a macro to show the used thread
+       implementation. Not nice, but this is needed until thread support
+       is completed here inside glib.
+
+Tue Jan  5 12:23:52 PST 1999 Manish Singh <yosh@gimp.org>
+
+       * configure.in: ditch whitespace before GLIB_SYSDEFS #includes,
+       the # needs to be in column 1
+
+       * gthread/testgthread.c: cleanups
+
+       * tests/node-test.c: #include unistd.h for exit()
+
+1999-01-04  Andrew T. Veliath  <andrewtv@usa.net>
+
+       * glib.h (g_array_insert_val): fix macro to be shorthand of
+       g_array_insert_vals.
+
+Mon Jan  4 15:35:29 PST 1999 Manish Singh <yosh@gimp.org>
+
+       * acglib.m4: some echos interpret \n's and some don't. Deal with
+       accordingly.
+
+Mon Jan  4 20:58:50 1999  Tim Janik  <timj@gtk.org>
+
+       * gscanner.c: eliminated extraneous "register" qualifiers in variable
+       declarations.
+
+       * gmain.c: #undef events and revents which may have been defined in
+       sys/poll.h for SVR3,4 compatibility on some AIX systems. fix been
+       provided by Philippe Defert <Philippe.Defert@cern.ch>.
+
+Mon Jan  4 14:38:11 1999  Tim Janik  <timj@gtk.org>
+
+       * glib.h: adjusted the g_strdup_a, g_strndup_a and g_strconcat3_a macros
+       so their arguments get only evaluated once. changed g_strconcat3_a to
+       have the same semantics as g_strconcat, i.e. if a certain argument is
+       NULL, the rest of the parameter list is skipped.
+
+       * tests/alloca-test.c: removed #if/#endif G_HAVE_ALLOCA, we need to be
+       able to compile on all systems. added test for g_strconcat() semantics.
+
+       * we need a alloca() replacement for !G_HAVE_ALLOCA rsn!
+
+Mon Jan  4 02:58:13 CST 1999 Shawn T. Amundson <amundson@gtk.org>
+
+        * Released GLib 1.1.12
+
+        * INSTALL:
+          NEWS:
+          README:
+          configure.in:
+         glib.spec:
+          docs/glib-config.1: version=1.1.12
+
+       * tests/Makefile.am: fixed so it works properly with
+         builddir and srcdir.
+
+Sun Jan  3 01:38:14 EST 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * tests/Makefile.am:
+       add array-test.c, tree-test.c
+
+       * tests/array-test.c, tests/tree-test.c:
+       New module, tests array family
+
+       * tests/hash-test.c, tests/list-test.c, tests/slist-test.c,
+         tests/string-test.c, tests/node-test.c:
+       Clean out cruft left over from testglib.
+
+Sat Jan  2 22:42:25 EST 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * Makefile.am, configure.in, tests/*:
+       Added 'make check' tests, based on testglib code.
+
+Sat Jan  2 19:52:45 EST 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * glib.h, testglib.c:
+       Added g_alloca, g_new_a, g_new0_a macros.
+
+Sat Jan  2 16:45:44 EST 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * testglib.c: Added g_strdup_printf check.
+
+Fri Jan  1 21:58:40 EST 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * glib.h:
+       (g_strdup_a, g_strndup_a): Handle NULL strings like g_strdup.
+       s/g_strconcat_a/g_strconcat3_a/ to reflect fixed number of args
+
+       * testglib.c:
+       Added g_strdup, g_strconcat checks.
+       Added str==NULL checks for alloca string macros.
+       s/g_strconcat_a/g_strconcat3_a/
+
+Fri Jan  1 18:30:41 PST 1999 Manish Singh <yosh@gimp.org>
+
+       * testglib.c: made the alloca tests follow the testglib style
+
+       * Makefile.am: minor cleanups, mostly cosmetic
+
+Fri Jan  1 20:43:19 EST 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * glib.h: added g_strndup_a macro
+
+       * testglib.c:
+       Added tests for new alloca-based string routines.
+       Reformatted a couple strings.
+
+Sat Jan  2 02:20:59 1999  Tim Janik  <timj@gtk.org>
+
+       * ghook.c:
+       (g_hook_list_invoke):
+       (g_hook_list_invoke_check):
+       (g_hook_list_marshal_check):
+       (g_hook_list_marshal): avoid unneccessary extra hook referencing (the
+       explicit hook referencing became unneccessarry with my changes from
+       Mon Dec 21 21:48:29 1998).
+
+       * gmain.c (g_main_iterate): fixed reference counting leaks with
+       premature loop aborts.
+
+Fri Jan  1 22:47:44 1999  Tim Janik  <timj@gtk.org>
+
+       * gscanner.c (g_scanner_unexp_token): handle G_TOKEN_IDENTIFIER_NULL
+       as G_TOKEN_IDENTIFIER.
+
+Fri Jan  1 17:09:19 EST 1999  Jeff Garzik  <jgarzik@pobox.com>
+
+       * configure.in, glib.h:
+       Added two new alloca-based function macros, g_strdup_a and
+       g_strconcat_a.  These are stack-based and much faster than
+       their g_malloc-based counterparts.  Kudos to Ulrich Drepper
+       for help on this one.
+
+Wed Dec 30 18:24:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
+
+        * Released GLib 1.1.11
+
+        * INSTALL:
+          NEWS:
+          README:
+          configure.in:
+          docs/glib-config.1: version=1.1.11
+
+1998-12-30  Raja R Harinath  <harinath@cs.umn.edu>
+
+       * glib.h (G[U]INT64_FROM_{LE,BE}):
+       Define to G[U]INT64_TO_{LE,BE}, not G[U]INT32_TO_{LE,BE}.
+
+Fri Dec 25 19:56:33 PST 1998 Manish Singh <yosh@gimp.org>
+
+       * acglib.m4
+       * configure.in: provide defaults for POLL sysdefs, simple enums
+       don't work with bitwise logic. Reported by Daniel Skarda
+       <0rfelyus@atrey.karlin.mff.cuni.cz>
+
+Wed Dec 23 00:43:25 CST 1998 Shawn T. Amundson <amundson@gtk.org>
+
+       * INSTALL:
+         NEWS:
+         README:
+         configure.in:
+         docs/glib-config.1: version=1.1.10
+
+Wed Dec 23 04:18:11 1998  George Lebl  <jirka@5z.com>
+
+       * gmain.c: (g_get_current_time) don't cast to timeval since
+         timeval is for some reason not always a struct of longs, weird
+
+Tue Dec 22 10:32:11 1998  Tim Janik  <timj@gtk.org>
+
+       * ghook.c (g_hook_first_valid): fixed buglet that could cause bogus
+       warnings.
+
+Mon Dec 21 21:48:29 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.h:
+       * gmain.c: there was a reference count race for hooks during invocation
+       loops. since all (known) hook loop implementations, do currently start
+       out with g_hook_first_valid() and iterate with g_hook_next_valid(),
+       g_hook_first_valid() will now return a referenced hook, and
+       g_hook_next_valid() will "eat" that, and eventually transfer it to
+       the next hook. <sigh> unfortunately this requires g_hook_next_valid()
+       to take the hook_list as additional argument.
+
+       * gmain.c (g_main_iterate): adjusted callers of g_hook_next_valid().
+
+Mon Dec 21 03:48:04 1998  Tim Janik  <timj@gtk.org>
+
+       * gmain.c (g_main_iterate): default initialize source_timeout with -1
+       so we have a sane timeout value if (*prpare) doesn't set it.
+
+Sat Dec 19 16:56:02 1998  Owen Taylor  <otaylor@redhat.com>
+
+       * glib.h gmain.c (G_PRIORITY_LOW): Add #defines defining
+       scale of priorities.
+
+Sat Dec 19 16:56:02 1998  Owen Taylor  <otaylor@redhat.com>
+
+       * gmain.c (g_main_poll): Allocate space for pollfd's
+       _after_ adding poll wake-up-pipe record.
+
+       * gmain.c (g_main_add_poll): Changed name
+       of internal function g_main_add_poll_unlocked()
+       back from the non-sensical g_main_add_unlocking_poll().
+
+Sat Dec 19 06:25:55 1998  Tim Janik  <timj@gtk.org>
+
+       * glib.m4: fixed a minor bug that would let configures bail out
+       if the MODULES argument contained newlines.
+
+       * acglib.m4: new file to be included by configure.in. it holds
+       special GLIB_ autoconfiguration macros, eventually some of the
+       easier ones should be moved into glib.m4, e.g. GLIB_IF_VAR_EQ,
+       GLIB_STR_CONTAINS or GLIB_ADD_TO_VAR.
+
+Sat Dec 19 04:27:17 1998  Tim Janik  <timj@gtk.org>
+
+       * fixed up sys/poll.h and sys/types.h inclusions.
+
+Sat Dec 19 03:10:50 1998  Tim Janik  <timj@gtk.org>
+
+       * fixed up gthread includes, cleaned up glibconfig.h a little bit.
+
 Fri Dec 18 12:51:39 1998  Owen Taylor  <otaylor@redhat.com>
 
        * gmain.c: Fix errors in computation of timeout
@@ -10,7 +737,7 @@ Fri Dec 18 12:51:39 1998  Owen Taylor  <otaylor@redhat.com>
 
 Fri Dec 18 00:03:17 1998  Tim Janik  <timj@gtk.org>
 
-       * glib.h: 
+       * glib.h:
        * gmain.c:
        (g_main_is_running): new function to check whether a main loop has been
        quitted.
@@ -38,11 +765,11 @@ Thu Dec 17 23:43:47 1998  Tim Janik  <timj@gtk.org>
        * garray.c (g_ptr_array_remove_index): Fixed size in g_memmove,
        reported by Alexander Larsson <alla@lysator.liu.se>.
 
-       * gmem.c: Fixed bug, that made compile fail for -DENABLE_MEM_PROFILE. 
+       * gmem.c: Fixed bug, that made compile fail for -DENABLE_MEM_PROFILE.
 
 Wed Dec 16 23:04:26 CST 1998 Shawn T. Amundson <amundson@gtk.org>
 
-       * Released GLib 1.1.9 
+       * Released GLib 1.1.9
 
        * INSTALL:
          NEWS:
@@ -138,7 +865,7 @@ Tue Dec 15 23:16:05 CST 1998 Shawn T. Amundson <amundson@gtk.org>
 
        * INSTALL:
          NEWS:
-         README 
+         README
          configure.in:
          glib.spec:
          docs/glib-config.1: Incremented version
@@ -162,7 +889,7 @@ Tue Dec 15 17:17:46 1998  Owen Taylor  <otaylor@redhat.com>
 1998-12-15  Havoc Pennington  <hp@pobox.com>
 
        * gdate.c (g_date_prepare_to_parse): Solaris has a broken strftime
-       that produced garbage output for the test date I was using to 
+       that produced garbage output for the test date I was using to
        set up the parser. So use a different date that Solaris seems
        to like.
 
@@ -244,7 +971,7 @@ Tue Dec 15 10:40:09 1998  Owen Taylor  <otaylor@redhat.com>
 
        * gmain.c (g_main_poll_add_unlocked): first take a new poll record
        form the poll_free_list.
-               
+
        * gmem.c, gstrfuncs.c, gutils.c: Made it MT safe.
 
        * gthraed/*.c: Added copyright headers.
@@ -256,7 +983,7 @@ Tue Dec 15 10:40:09 1998  Owen Taylor  <otaylor@redhat.com>
        * gthread/gthread.c (g_thread_try_init): Call g_mutex_init().
 
        * gthread/testgthread.c: updated test program.
-       
+
 Tue Dec  8 18:49:56 1998  Owen Taylor  <otaylor@redhat.com>
 
        * Start at adding thread-safety. (mostly work
@@ -314,7 +1041,7 @@ Mon Dec  7 23:10:41 PST 1998 Manish Singh <yosh@gimp.org>
 
 1998-12-02  Havoc Pennington  <hp@pobox.com>
 
-       * gdate.c (g_date_set_month): If Julian is valid, we have to 
+       * gdate.c (g_date_set_month): If Julian is valid, we have to
        update the dmy representation before setting the components
        of it.
        (g_date_set_day): Same.
@@ -322,13 +1049,13 @@ Mon Dec  7 23:10:41 PST 1998 Manish Singh <yosh@gimp.org>
 
 1998-12-02  Havoc Pennington  <hp@pobox.com>
 
-       * testgdate.c, testgdateparser.c: Two new files. This is kind of 
-       ugly code, but I want to go ahead and make the tests available. 
-       It isn't contaminating any other code. :-) Since one of these 
-       is interactive and the other takes a while to run, I've kept 
+       * testgdate.c, testgdateparser.c: Two new files. This is kind of
+       ugly code, but I want to go ahead and make the tests available.
+       It isn't contaminating any other code. :-) Since one of these
+       is interactive and the other takes a while to run, I've kept
        them separate from testglib for now.
        * Makefile.am: Build gdate test programs.
-       
+
 1998-12-02  Havoc Pennington  <hp@pobox.com>
 
        * gdate.c (g_date_valid): Rely on GDate::dmy and GDate::Julian
@@ -351,7 +1078,7 @@ Sat Nov 28 12:53:47 1998  Owen Taylor  <otaylor@redhat.com>
 
 1998-12-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
 
-       * glib.h: 
+       * glib.h:
        * gdate.c: changed `gpointer struct_tm_p' parameter of
        g_date_to_struct_tm back to `struct tm *tm' and forward declared
        `struct tm' in glib.h; yes, this is nice, we still need not
@@ -364,7 +1091,7 @@ Tue Dec  1 23:01:44 CST 1998 Shawn T. Amundson <amundson@gtk.org>
          README:
          glib.spec:
          docs/glib-config.1: Incremented versions to 1.1.6.
-       
+
 Wed Dec  2 02:10:59 1998  Tim Janik  <timj@gtk.org>
 
        * gdate.c: s/time_t/GTime/ and s/g_print/g_message/
@@ -374,13 +1101,13 @@ Wed Dec  2 02:10:59 1998  Tim Janik  <timj@gtk.org>
        g_date_set_time() to time_t, changed struct tm parameter of
        g_date_to_struct_tm to `gpointer struct_tm_p'. yes, this is not
        nice, but including time.h actually breaks a bunch of code.
-       
+
        * incremented GLib version to 1.1.6.
 
 1998-11-30  Havoc Pennington  <hp@pobox.com>
 
        * gdate.c: New file, implements calendrical calculations.
-       
+
        * glib.h: Added declarations for GDate module.
 
 Mon Nov 30 07:12:10 1998  Tim Janik  <timj@gtk.org>
@@ -405,7 +1132,7 @@ Sat Nov 28 01:23:25 1998  Tim Janik  <timj@gtk.org>
 
 Thu Nov 26 01:36:20 1998  Tim Janik  <timj@gtk.org>
 
-       * glib.h: 
+       * glib.h:
        * ghash.c: reverted the g_hash_table_set_key_freefunc() addition,
        since it's to specialized and needs to be resolved in a generic
        fashion.
@@ -441,7 +1168,7 @@ Tue Nov 24 14:05:47 EST 1998       Michael K. Johnson <johnsonm@redhat.com>
        * glib.h: added GFreeFunc and g_hash_table_set_key_freefunc()
        prototype.
        * ghash.c: added g_hash_table_set_key_freefunc() implementation.
-       Modified the prototypes of the functions g_hash_node_destroy() and 
+       Modified the prototypes of the functions g_hash_node_destroy() and
        g_hash_nodes_destroy(), and changed the functions that call them
        to match the new definitions.
        This changes no external interfaces, and should create no binary
@@ -559,7 +1286,7 @@ Wed Nov  4 15:06:44 PST 1998 Manish Singh <yosh@gimp.org>
 
 1998-11-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
 
-       * glib.h: 
+       * glib.h:
        * garray.c:
        (g_array_remove_index): new function for removing an entry from an
        array while preserving the order
@@ -592,7 +1319,7 @@ Sat Oct 31 20:14:22 PST 1998 Manish Singh <yosh@gimp.org>
 
        * gmessages.c
        * gscanner.c: #include <config.h> in here too, for HAVE_UNISTD_H
+
 1998-11-01 Tor Lillqvist <tml@iki.fi>
 
        * glib.def: Added the new functions.
@@ -611,7 +1338,7 @@ Sat Oct 31 20:14:22 PST 1998 Manish Singh <yosh@gimp.org>
 1998-10-31  Raja R Harinath  <harinath@cs.umn.edu>
 
        Land glib-rrh-19981025-0.patch.
-       * Makefile.am (glibconfig.h): New rule.  
+       * Makefile.am (glibconfig.h): New rule.
        (stamp-gc-h): New rule.  Generate `glibconfig.h'.
        * configure.in (AM_CONFIG_HEADER): It is now `config.h'.
        (HAVE_BROKEN_WCTYPE): On Solaris, look for iswalnum in -lw before
@@ -624,7 +1351,7 @@ Sat Oct 31 20:14:22 PST 1998 Manish Singh <yosh@gimp.org>
        * gmem.c: Likewise.
        * gstrfuncs.c: Likewise.
        * gutils.c: Likewise.
-       
+
 Sat Oct 31 05:08:26 1998  Tim Janik  <timj@gtk.org>
 
        * glib.h: removed old G_ENUM(), G_FLAGS(), G_NV() and G_SV() macros.
@@ -651,7 +1378,7 @@ Tue Oct 27 07:25:53 1998  Tim Janik  <timj@gtk.org>
        filedescriptor, which hooks onto the current scanning position.
        (this became neccessary with the implementation of buffered
        reads).
-       (g_scanner_input_file): 
+       (g_scanner_input_file):
        (g_scanner_input_text): automatically blow the read ahead buffer.
        (g_scanner_get_char): blow the read ahead buffer when the end of
        input is reached, i.e. a '\000' char is read.
@@ -708,7 +1435,7 @@ Tue Oct 27 03:00:50 1998  Tim Janik  <timj@gtk.org>
 
        * glib.h (struct dirent): use lower case structure members.
 
-       * glib.h: 
+       * glib.h:
        * makefile.lcc:
        * makefile.msc:
        s/COMPILING_GLIB/GLIB_COMPILATION/
@@ -772,7 +1499,7 @@ Tue Oct 27 03:00:50 1998  Tim Janik  <timj@gtk.org>
        Conditionalized inclusion of unistd.h. Added changes for
        Microsoft C. Added CR to the skipped character set. Added small
        workaround for MSC compiler bug in g_scanner_cur_value.
-       
+
        * gstrfuncs.c:
        Added the function g_strescape, which escapes the backslash
        character. Needed especially when printing Windows filenames.
@@ -792,19 +1519,19 @@ Tue Oct 27 03:00:50 1998  Tim Janik  <timj@gtk.org>
        * makefile.lcc makefile.msc:
        New files. Compiler-specific makefiles for LCC-Win32 and
        Microsoft C. Only Microsoft C is actually supported currently.
-       
+
        * testglib.c:
        Added pathname check cases for Windows. Added workaround for
        bug in the Microsoft runtime library. Improved some tests a bit.
-       
+
 Sun Oct 25 01:24:01 CST 1998 Shawn T. Amundson <amundson@gtk.org>
 
        * Released GLib 1.1.4
 
        * docs/Makefile.am:
        * docs/.cvsignore
-       * docs/glib-config.1: 
-       * docs/glib.texi: Moved docs from gtk and created glib-config.1 
+       * docs/glib-config.1:
+       * docs/glib.texi: Moved docs from gtk and created glib-config.1
        from gtk-config.1 in gtk
 
        * configure.in:
@@ -814,17 +1541,17 @@ Sun Oct 25 01:24:01 CST 1998 Shawn T. Amundson <amundson@gtk.org>
        distribution.  Added in a 'sanity' rule.
 
        * NEWS:
-       * README: 
+       * README:
        * INSTALL: Updated for the release
 
 Sun Oct 25 07:30:10 1998  Tim Janik  <timj@gtk.org>
 
        * gscanner.c:
-       (g_scanner_peek_next_char): 
+       (g_scanner_peek_next_char):
        (g_scanner_get_char): no more characters are available if read() returns
        anything less than 1, not only on 0 return.
 
-       * glib.h: 
+       * glib.h:
        * gstrfuncs.c: final API cleanup of string arrays to suit sopwith's
        argument order requirements.
        (g_strsplit): renamed from g_str_array_split().
@@ -852,7 +1579,7 @@ Wed Oct 21 19:22:58 1998  Tim Janik  <timj@gtk.org>
 
 Wed Oct 21 17:03:05 1998  Tim Janik  <timj@gtk.org>
 
-       * glib.h: 
+       * glib.h:
        * gstrfuncs.c: API cleanups of the new g_str* functions for consistency
        with the existing naming scheme for g_str* functions. grouped the g_str*
        functions that will return a newly allocated string seperatedly. all of
@@ -1004,7 +1731,7 @@ Sun Sep 20 02:09:44 1998  Josh MacDonald  <jmacd@axis.hip.berkeley.edu>
 
        * glib.h: New function g_hash_table_foreach_remove is similar to
        g_hash_table_foreach, but the callback's return value indicates
-       whether to remove the element (if TRUE) or not (if FALSE).  
+       whether to remove the element (if TRUE) or not (if FALSE).
        Returns the number of elements deleted.
 
 Fri Sep 18 11:31:50 PDT 1998 Manish Singh <yosh@gimp.org>
@@ -1080,7 +1807,7 @@ Mon Sep  7 07:53:21 1998  Tim Janik  <timj@gtk.org>
 
        * glib.h: inlining hassle. for compilers that don't allow the `inline'
        keyword, mostly because of strict ANSI C compliance or dumbness, we try
-       to fall back to either `__inline__' or `__inline'. 
+       to fall back to either `__inline__' or `__inline'.
        we define G_CAN_INLINE, if the compiler seems to be actually *capable*
        to do function inlining, in which case inline function bodys do make
        sense. we also define G_INLINE_FUNC to properly export the function
@@ -1118,7 +1845,7 @@ Sat Sep  5 18:03:36 1998  Tom Tromey  <tromey@cygnus.com>
 
 Sat Sep  5 04:40:02 1998  Tim Janik  <timj@gtk.org>
 
-       * glib.h: 
+       * glib.h:
        (g_chunk_new0): use g_mem_chunk_alloc0() to allocate the memchunk,
        so the correct size of the memchunk is allocated with 0's and not
        a memory portion of the size of the desired type.