diff options
author | Jeff Garzik <jgarzik@src.gnome.org> | 1999-03-07 01:44:10 +0000 |
---|---|---|
committer | Jeff Garzik <jgarzik@src.gnome.org> | 1999-03-07 01:44:10 +0000 |
commit | a6ab9d0a6b6a2cfbf7fd2052cff6be7bc961b786 (patch) | |
tree | b467388c0d5053a9f0f1541771580339948564b4 | |
parent | 975c085b1e78d55c579342c2cf71e9aa9475e067 (diff) | |
download | glib-GLIB_1_3_HACKS.tar.gz |
merge from HEADGLIB_1_3_HACKS
110 files changed, 4155 insertions, 22905 deletions
diff --git a/.cvsignore b/.cvsignore index eb307c7ed..02f97e634 100644 --- a/.cvsignore +++ b/.cvsignore @@ -23,3 +23,5 @@ stamp-gc-h testgdate testgdateparser glibconfig-sysdefs.h +glib.spec +stamp-h.in @@ -1,24 +1,25 @@ Original Authors ---------------- -Peter Mattis <petm@xcf.berkeley.edu> -Spencer Kimball <spencer@xcf.berkeley.edu> -Josh MacDonald <jmacd@xcf.berkeley.edu> +Peter Mattis <petm@xcf.berkeley.edu> +Spencer Kimball <spencer@xcf.berkeley.edu> +Josh MacDonald <jmacd@xcf.berkeley.edu> +Please do not mail the original authors asking questions about this +version of GLib. -Other people who made significant -improvements to GLIB (shamelessly -ripped from the ChangeLog, listed -in alphabetical order) ---------------------------------- -Raja R Harinath <harinath@cs.umn.edu> -Tim Janik <timj@gtk.org> -Paolo Molaro <lupus@debian.org> -Manish Singh <yosh@gimp.org> -Owen Taylor <otaylor@gtk.org> - - -Also, thanks to Shawn T. Amundson <amundson@gtk.org> -for doing releases of GLIB. +GLib Team +--------- +Shawn T. Amundson <amundson@gimp.org> +Jeff Garzik <jgarzik@pobox.com> +Raja R Harinath <harinath@cs.umn.edu> +Tim Janik <timj@gtk.org> +Elliot Lee <sopwith@redhat.com> +Tor Lillqvist <tml@iki.fi> +Paolo Molaro <lupus@debian.org> +Havoc Pennington <hp@pobox.com> +Manish Singh <yosh@gimp.org> +Owen Taylor <otaylor@gtk.org> +Sebastian Wilhelmi <wilhelmi@ira.uka.de> There are also many others who have contributed patches and fixes; we thank them, for helping us in advancing GLIB. @@ -1,2841 +1,23 @@ -Thu Feb 04 20:42:24 1999 Tor Lillqvist <tml@iki.fi> +Sat Mar 6 11:03:08 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) - * glibconfig.h.win32 config.h.win32: Update GLIB_MICRO_VERSION. + * gutils.c (g_get_any_init): add OS/2 changes. + change '\\' in HOME to '/'. -1999-02-04 Christopher Blizzard <blizzard@redhat.com> +1999-03-03 Josh MacDonald <jmacd@spin.dsl.pacbell.net> - * glib.spec (Packager): Change my email address + * glib.def: g_spaced_primes_closest was omitted here, so I + couldn't build Xdelta on Windows. -Thu Feb 4 01:45:01 PST 1999 Shawn T. Amundson <amundson@gtk.org> +1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - * ChangeLog - NEWS - README - configure.in - glib.spec - docs/glib-config.1: version=1.1.15 + * gutils.c (g_get_any_init): Fixed yet another bloody + implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche + <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure + test better than that, but have no idea, how to do that easily. - * Released GLib 1.1.15 +Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org> -Tue Feb 02 00:08:54 1999 Tor Lillqvist <tml@iki.fi> + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. - * gmessages.c (g_log_default_handler): (Win32:) Don't call - ensure_stdout_valid (which would open an unneeded console window) - if we're calling a logging function. Define ensure_stdout_valid - as an empty macro on Unix. - - * gutils.c (g_get_any_init): (Win32:) Trust HOME first if defined, - then try HOMEDRIVE and HOMEPATH. - -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). - -Fri Jan 22 16:51:44 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Added galloca.c. - - * galloca.c: - Compile even if G_NATIVE_ALLOCA is not defined. - Don't use g_free and g_malloc [yet?]. Code appears to depend on - internal malloc() alignment sizes. - - * tests/alloca-test.c: - Always test internal alloca replacement too, even if we have a - working alloca. - Make tests a little bit better by adding recursion - (more stack activity). - -Fri Jan 22 13:41:41 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * configure.in: - Add checks for alloca, defining G_NATIVE_ALLOCA if present. - - * galloca.c: - Import replacement alloca implementation from gettext 0.10.35. - Begin to convert to using GLib types and functions. - - * glib.h: - New macros g_alloca, g_alloca_gc, g_alloca_new, to perform - stack-based memory allocations. - - * tests/Makefile.am, tests/queue-test.c, tests/alloca-test.c: - New tests for g_alloca_*, GQueue ADT. - - * tests/stack-test.c: - Fix pointer casts, include config.h, and - call g_stack_free at end of run. - -Fri Jan 22 11:58:13 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Add gqueue.c. - - * glib.h: - Add GQueue struct and prototypes. - Remove g_stack_free macro. - - * gqueue.c - New file. Implementation of a queue ADT. - - * gstack.c: - Rename _g_stack_free back to g_stack_free. - - * tests/Makefile.am, tests/stack-test.c: - New test for GStack objects. - -Fri Jan 22 02:06:10 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * gstack.c: - New stack ADT implementation. - - * glib.h: - Add g_stack function prototypes and macros. - -Thu Jan 21 23:55:54 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * TODO: - New file. Short notes on what has been said in e-mail, plus a - couple other new items. - - * glib.h, glist.c: - New function g_list_delete(). Removes a node from the list, - then frees it. - -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 - expiration times > 1sec. - -1998-12-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in (have_threads): Changed the last pthread_cond_init - to pthread_attr_init. - -Fri Dec 18 00:03:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmain.c: - (g_main_is_running): new function to check whether a main loop has been - quitted. - (g_main_new): added a gboolean argument to determine whether the loop - should be considered initially running or not. however, g_main_run () - will still reset the main loops running state to TRUE upon initial - entrance. - - * gmain.c: - (g_main_iterate): documented this function's purpose in 5 steps. - for step 2), flag sources as G_SOURCE_READY even if !dispatch and - check G_SOURCE_READY prior to (*prepare), so we don't call (*prepare) - on them multiple times. - -Thu Dec 17 23:43:47 1998 Tim Janik <timj@gtk.org> - - * gmain.c (g_main_add_poll): reordered arguments, so GPollFD* comes - first, <sigh> (sorry Snorfle, i should have let you know in the first - place). - (g_main_dispatch): stack G_HOOK_FLAG_IN_CALL flags. call source's - destructor when destroying a source. - -1998-12-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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. - -Wed Dec 16 23:04:26 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.9 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: version=1.1.9 - -Wed Dec 16 22:32:13 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * glib.h: - giounix.c: s/g_main_poll_add/g_main_remove_add/g - s/g_main_poll_remove/g_main_remove_poll/g - s/g_main_poll_add_unlocking/g_main_add_unlocking_poll/g - (from Tim Janik) - -Wed Dec 16 20:04:10 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: check for pthread_attr_init in all cases, du4 - needs this since most of the other functions are just #defines - -Thu Dec 17 04:10:49 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_LOCK_DECLARE_*): if !G_THREADS_ENABLED, eat the - trailing semicolon with a bogus function declaration, instead - of with a bogus variable declarations, so we avoid unused - variable warnings. - -Wed Dec 16 07:49:16 PST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.8 (CVS tag is GLIB_1_1_8a) - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * giounix.c (g_io_channel_unix_get_fd): Fixed small bug. - -1998-12-16 Joel Becker <jlbec@ocala.cs.miami.edu> - - * glib.h, gscanner.c: changed func_data to user_data in - g_scanner_scope_symbol_foreach and associated friends, because - AIX headers #define func_data. - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Fixed stupid bug, that made - g_static_mutex_lock(*mutex) not work as expected. - - * docs/glib-config.1: Updated to reflect the existence of gthread. - - * gmain.c (g_main_poll_add_unlocking): Changed - g_main_poll_add_unlocked to g_main_poll_add_unlocking to match - semantic, (indeed, main_loop must be locked, when calling this - function). Removed the unlocking from the end of that function, as - that is not right. Made a 'HOLDS' comment above the function. - -Wed Dec 16 03:16:58 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.8, binary age 0, interface age 0. - - * glib.h: changed g_lock() to G_LOCK(), g_unlock() to G_UNLOCK() and - g_trylock() to G_TRYLOCK(), since these are macros that expand to - nothing with --disable-threads. - changed G_LOCK_DEFINE() to G_LOCK_DECLARE() and introduced - G_LOCK_DECLARE_STATIC() to achive the results of static G_LOCK_DECLARE(). - changed semantics of g_thread_supported to g_thread_supported() so it - can be used as a function like g_module_supported(). the actuall - definition is still a macro that expands into a variable for - performance reasons though. - various indentation and coding style cleanups. - - * configure.in: added --enable-threads that defaults to yes. - - * gmutex.c: changed tests g_thread_supported to g_thread_supported (), - changed variable settings of g_thread_supported - to g_threads_got_initialized. - - garray.c: - gcache.c: - gdataset.c: - gdate.c: - ghash.c: - glist.c: - gmain.c: - gnode.c: - gslist.c: - gstring.c: - gtree.c: - gutils.c: - changed s/g_lock/G_LOCK/, s/g_unlock/G_UNLOCK/, - s/static G_LOCK_DEFINE/G_LOCK_DECLARE_STATIC/. - -Tue Dec 15 23:16:05 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README - configure.in: - glib.spec: - docs/glib-config.1: Incremented version - -Wed Dec 16 22:29:48 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * configure.in: fixed the AIX thread checking. - Just an error on the wildcard. BTW, -D_THREAD_SAFE - is correct for AIX. - -Wed Dec 16 02:02:48 1998 Tim Janik <timj@gtk.org> - - * glib-config.in (lib_glib): fixed library and flag ordering for - --libs - -Tue Dec 15 17:17:46 1998 Owen Taylor <otaylor@redhat.com> - - * glib.h giounix.c giochannel.c: Use an "inheritance" - scheme for IO channel memory allocation.h - -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 - set up the parser. So use a different date that Solaris seems - to like. - -1998-12-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Dont complain, if --without-threads or - --with-threads=none is supplied; Test for pthread_attr_init - instead of pthread_cond_init, if threads seems to be supported by - standard glib. (CFLAGS): Use G_THREAD_CFLAGS for compiling of glib - as well. - - * glib.h, gmutex.c: Changed private to private_key to avoid - problems when compiling with under C++. - -1998-12-15 Jeff Garzik <jgarzik@Pobox.com> - - * configure.in: - bugfixes, correctly support --without-threads and friends - - * gthread/testgthread.c: corrected 64-bitness problem - -Tue Dec 15 10:40:09 1998 Owen Taylor <otaylor@redhat.com> - - * gnode.c glist.c gslist.c: Make sure all - calls to g_node_validate_allocator are within - current_allocator lock, so we have consistency - on that point. (Should not really matter, - but this way we match the comments) - - * glist.c (g_list_free_1): Removed some lines - that should never have been committed. (For - debugging) - -1998-12-11 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/gthread-nspr.c, configure.in: Added new default thread - implementation on top of the mozilla nspr library. - - * gmem.c, gmessaged.c, gthread/gthread.c, gthread/gthread-*.c: - Changed GStaticMutex and GStaticPrivate in gmem.c and gmessages.c - into GMutex and GPrivate resp. to make error reporting and use of - gmem possible in most (not all, though) gthread functions. Also - initialized the modules via new init functions. - - * configure.in: Fixed syntax bug in definition of type - GStaticMutex. - - * gthread/testgthread.c: Updated to work with nspr, but see note - there for remaining problems. - -1998-12-10 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gmutex.c, glib.h: Now abort, if a mutex/cond/private is - allocated before the thread system is set up. - - * gthread/gthread.c (g_thread_init): Removed g_thread_try_init(), - as it is not necessary. Changed the error message. Corrected logic - for g_thread_use_default_impl. - - * gmutex.c (g_mutex_init): Keep the thread private data array - after calling g_thread_init(). - -1998-12-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/testgthread.c (new_thread): Now also working for posix - threads; (wait_thread): Now a better implementation, that does not - use 100% CPU. - - * Made the thread related code follow GNU coding standard. - - * Made a comment (HOLDS:) above each function, that expects the - given locks to be held. - - * Changed try_lock to trylock throughout. - - * glib.c: Eventually removed the #if 0'ed code for old GStaticMutex. - - * glib.c: Corrected g_trylock macro for G_DEBUG_LOCKS. - - * 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. - - * gthread/gthread-solaris.c: do not use g_log for errors, as g_log - uses these module and endless recursions might happen, just use a - plain fprintf(stderr,...). - - * 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 - of Sebastian Wilhelmi <wilhelmi@ira.uka.de>) - - - configure.in now looks for a system thread implementation. - Currently support is included for POSIX threads - and Solaris threads. The default support is built - into a separate library -lgthread. - - - The thread implementation can be modified by passing - a vector of functions g_thread_init(). - - - The default or supplied functions are used to - implement a small set of thread functions for - mutexes, condition variables, and thread-private - data. - - - GLib now uses these functions to provide thread - safety. (In the sense that all global static - data is locked... individual structures must still - be locked by the caller.) - -Sat Dec 12 19:08:59 1998 Tim Janik <timj@gtk.org> - - * configure.in: always define G_HAVE_INLINE if __cplusplus is - defined, reported by Wan-Teh Chang <wtc@netscape.com>. - -Thu Dec 10 21:49:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.7 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: Increased version to 1.1.7 - -Wed Dec 9 22:44:44 EST 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * Removed #define of G_COMPILED_WITH_DEBUGGING from glibconfig.h - It shouldn't be there, and it was causing a double #define. - (config.h defines it also) - -Tue Dec 8 12:18:38 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.6 - - * NEWS: updated - -Mon Dec 7 23:10:41 PST 1998 Manish Singh <yosh@gimp.org> - - * gmain.c: fixes to #undef HAVE_POLL case - -1998-12-02 Havoc Pennington <hp@pobox.com> - - * 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. - (g_date_set_year): Same. - -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 - 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 - flags, rather than re-checking the validity of the actual - values. This should be the correct behavior, the old way was - leftover cruft. - - * glib.h, gdate.c: Changed MDY to DMY throughout. - -Sat Nov 28 12:53:47 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am configure.in acconfig.h giochannel.c - glib.h glist.c gmain.c gutils.c: - - - Revised GIOChannel to provide a generic virtual-function - based interface. - - Added unix fd-based GIOChannel's - - Added generic main-loop abstraction - - Added timeouts and idle functions using main-loop abstraction. - -1998-12-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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 - include time.h. - -Tue Dec 1 23:01:44 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - 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/ - include time.h. - - * glib.h: removed #include <time.h>, changed time_t paramter of - 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> - - * glib.h: - * ghook.c: added g_hook_list_marshal_check() to eventually destroy - hooks after they got marshalled. - -Sun Nov 29 17:31:43 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * configure.in, Makefile.am, gmodule/Makefile.am: - Put -DFOO stuff into Makefile.am INCLUDES. - -Sun Nov 29 14:17:09 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: put debug -DFOO stuff into CPPFLAGS, not CFLAGS, - so CFLAGS can be overridden at make time properly - -Sat Nov 28 01:23:25 1998 Tim Janik <timj@gtk.org> - - * ghash.c: implemented incremental freezing facility. - -Thu Nov 26 01:36:20 1998 Tim Janik <timj@gtk.org> - - * 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. - -Tue Nov 24 18:57:59 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981120-0, change log appended below. - - * glibconfig.h.win32: passthrough 64-bit constants unchanged, VC++ - infers them - -Fri Nov 20 22:26:43 1998 Tor Lillqvist <tml@iki.fi> - - * glib.h: Moved MSC pragmas from glib.h to glibconfig.h.win32. - peer_offset field in WIN32 part of GIOChannel removed, need_wakeups - added. Added "extern" to __declspec(dllimport). - - * gutils.c: Initialise need_wakeups. - - * glibconfig.h.win32: Pragmas moved here. Define G_GINT64_CONSTANT. - - * gmodule/gmodule.def: Added g_module_build_path. - - * gscanner.c: (g_scanner_cur_value) Move initailisation of v - to before its use. - - * glib.def: Added g_(s)list_sort. - - * makefile.msc: A few more comments. - -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 - 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 - or source incompatibilities. It does add a member to the - GHashTable structure. - -Tue Nov 24 09:40:00 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed the GListAllocator type and its g_*_allocator_*() - function variants (which weren't working anyways) in favour of a - generic GAllocator type. new functions: - g_allocator_new, g_allocator_free, g_slist_push_allocator, - g_slist_pop_allocator, g_list_push_allocator, g_list_pop_allocator, - g_node_push_allocator and g_node_pop_allocator. - - * gstring.c: removed bogus slist allocator code. - * gtree.c: maintain own list of free tree nodes and don't waste - GSLists for that, removed bogus slist allocator code. - * glist.c: use GAllocators for node allocation. - * gslist.c: use GAllocators for node allocation. - * gnode.c: use GAllocators for node allocation. - - * gdataset.c: cleanups wrt automatic initialization. - -Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h garray.[ch]: added g_array_insert_vals() to - insert elements at an arbitrary index, and - g_array_insert_val() macro. - -Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gslist.c: new function g_slist_copy() to duplicate a list with all its - data pointers. - * glist.c: new function g_list_copy. - -Sat Nov 21 14:57:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: Updated to version 1.1.5 - - * Released GLib 1.1.5 - -Wed Nov 18 1998 Elliot Lee <sopwith@redhat.com> - - * gdataset.c: There was a code path into g_data_set_internal - through a function (g_datalist_id_set_full). Neither function - checked for g_dataset_init having been run, but - g_data_set_internal used the memchunk. I added - a check into g_data_set_internal so it will do the - initialization if needed. (There's probably a better way.) - -Mon Nov 16 07:48:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_bit_nth_msf): fixed off-by-one error, so we don't waste - a loop iteration if (-1) was passed, reported by Andreas Bombe - <andreas.bombe@munich.netsurf.de>. - -Fri Nov 13 15:17:34 1998 Owen Taylor <otaylor@redhat.com> - - * glist.c gslist.c glib.h: Added g_list_sort() and - g_slist_sort() to merge sort GLists and GSLists. - Submitted by Sven Over <sven.over@ob.kamp.net> - over a year ago! - - * testglib.c: Test the new sort functions. - -Wed Nov 11 23:23:22 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am : INCLUDES is the right way to add to CFLAGS, not - DEFS. Also there are bugs with '+=' in makefiles. - Got rid of DEFS line by moving G_LOG_DOMAIN setting into INCLUDES. - Removed redundant -I from INCLUDES. - -Wed Nov 11 18:11:24 EST 1998 Gregory McLean <gregm@comstar.net> - - * docs/*.sgml : Batch of new documentation that should be easier - to maintain and extend. Plus generate whatever sort of doc file - you would like. I didn't change the Makefile stuff as I'm not sure - what default doc type people want. Oh and this is all DocBook format. - Enjoy! - -Tue Nov 10 17:12:45 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: use __extension__ for long long on gcc >= 2.8 and - egcs, and provide a G_GINT64_CONSTANT wrapper so -ansi -pedantic - compiles clean. - - * glib.h: make the endian x86 asm __const__ so the compiler can do - better optimizations. Also remove the cc clobber, these shouldn't - be changing condition codes. Ditch some redundant casts. Add an - optimization for 64-bit endian conversions in x86. Use constant - wrapper for the generic method. - - * testglib.c: use constant wrappers for 64-bit constants - -1998-11-04 Phil Schwan <pschwan@cmu.edu> - - * configure.in: Added 'strncasecmp' to the list of functions to be - searched for. - * glib.h: Added a prototype for 'g_strncasecmp' - * gstrfuncs.c: (g_strncasecmp) new function modeled closely after - 'g_strcasecmp' - -Wed Nov 4 15:06:44 PST 1998 Manish Singh <yosh@gimp.org> - - * config.h.win32 (new file) - * glibconfig.h.win32 - * glib.def - * makefile.msc: applied glib-tml-981104, win32 sync - -1998-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * glib.h: - * garray.c: - (g_array_remove_index): new function for removing an entry from an - array while preserving the order - (g_array_remove_index_fast): new function for removing an entry - from an array. the order might be distorted - (g_ptr_array_remove_index_fast, g_ptr_array_remove_fast): new - functions; working similiar to the above. (they have the semantic - of the old g_ptr_array_remove[_index] functions) - (g_ptr_array_remove_index, g_ptr_array_remove): new semantic. now - the order of the elements in the array is not changed - (g_byte_array_remove_index, g_byte_array_remove_index_fast): new - functions; byte_array wrapper for g_array_remove_index[_fast] - -Sun Nov 1 23:00:18 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * configure.in: endian macros defined using the glibconfig.h - mechanism now - - * ghook.c: casts for GHookFunc and GHookCheckFunc to avoid warnings - -Sat Oct 31 20:14:22 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981101-1 patch from Tor Lillqvist (ChangeLog - entry appended below) - - * testglib.c - * gstrfuncs.c - * glib.h: use G_HAVE_GINT64, since HAVE_GINT64 is gone - - * 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. - - * gutils.c: - (g_getenv): Better implementation on Win32. No loop necessary. - (g_get_any_init): Use P_tmpdir if defined as tmp directory. Don't - set home dir always to NULL on Win32. Don't use tmp directory as - last resort home directory, but return NULL if no home - directory is known (application must check). - - * makefile.msc: Better touch command, just COPYing a single file - sets the timestamp from that file, which isn't what touching should - do. - -1998-10-31 Raja R Harinath <harinath@cs.umn.edu> - - Land glib-rrh-19981025-0.patch. - * 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 - concluding "broken wctype". - (glibconfig.h): Use AC_OUTPUT_COMMANDS to put generation code into - config.status. - * glib.h: Remove a lot of tests and defines. All these have been - moved to `configure.in (glibconfig.h)'. - * gerror.c: Include <config.h>. - * 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. - added macros G_STRUCT_OFFSET(), G_STRUCT_MEMBER_P() and - G_STRUCT_MEMBER() for handling structure fields through their offsets. - (struct _GHookList): added a hook_free function member, that can be used - to free additional fields in derived hook structures. - g_hook_free(): if hook_list->hook_free != NULL, call this function prior - to freeing the hook. (this functionality should have been there in the - first place, it just got forgotten as an implementation detail). - -Wed Oct 28 00:49:32 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: G_BREAKPOINT for alpha from Robert Wilhelm - <robert@physiol.med.tu-muenchen.de> - -Tue Oct 27 07:25:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: - (g_scanner_sync_file_offset): new function for file input. - rewind the filedescriptor to the current buffer position and blow - the file read ahead buffer. usefull for third party uses of our - filedescriptor, which hooks onto the current scanning position. - (this became neccessary with the implementation of buffered - reads). - (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. - -Tue Oct 27 00:27:31 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: get rid of duplicate #g_htonl and friends in the - NATIVE_WIN32 part - -Mon Oct 26 22:42:01 PST 1998 Manish Singh <yosh@gimp.org> - - * glibconfig.h.win32 - * gutils.c - * makefile.msc: win32 patch from Tor Lillqvist (glib-tml-981027-0), - fixes some minor win32 buglets - -Mon Oct 26 22:12:03 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: reimplemented the endian stuff, using inline asm - for x86. #define g_htonl and friends. - - * testglib.c: new tests for the endian stuff - - * configure.in: care for AIX in gmodule linker flags test (from - Joel Becker <jlbec@raleigh.ibm.com>). Check $host_os for linux - instead of existance of /usr/include/linux - - * gutils.c: buh-bye evil warning. Thou hast been #ifdef'd out - of thine existance! - -Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed dummy structure definitions for struct _GCache, - _GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk. - - * gutils.c: implement glib's inline functions _after_ all include - statements have been processed. - removed Tor's MAXPATHLEN check since there already was one supplied - further down in this file. - (LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32, - since lcc maybe used on other platforms as well. why in hell is this - stuff required? - (g_get_any_init): for windows, if the user name is supplied, use it as - realname also. - in general, if there is no homedir specified, use the tmpdir that - we already figured. - - * gtimer.c (g_timer_elapsed): changed a g_assert() statement to - g_return_if_fail(). - - * applied glib-tml-981020-0.patch for WIN32 portability, added some - comments and g_return_if_fail() statements, minor indentation fixes. - ChangeLog entry from Tor Lillqvist is appended. - - * glib.h (struct dirent): use lower case structure members. - - * glib.h: - * makefile.lcc: - * makefile.msc: - s/COMPILING_GLIB/GLIB_COMPILATION/ - -1998-10-20: Tor Lillqvist <tml@iki.fi> - - * README.win32 glib.def gmodule.def - * glibconfig.h.win32 gmodule/gmoduleconf.h.win32: - New files for the Windows port. The .def files list exported - symbols for the Microsoft linker and compatibles. - - * configure.in: - Added checks for some platform-dependent headers: pwd.h sys/param.h - sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat. - - * gerror.c: - Conditionalized inclusion of system-dependent headers. Changes - for Windows: no gdb to do a stack trace. Just call abort(). - - * glib.h: - Changes for Windows: - - Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for - platform-dependent file name syntax elements. Added macros - G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for - platform-dependent search path syntax conventions. - - Added pragmas for Microsoft C to make it more pedantic. - - Marked GLib's global variables for export from DLL. - - Added the function g_strescape that escapes backslashes. - - Added functions g_path_is_absolute and g_path_skip_root to - handle platform-dependent file name syntax. - - Added the function g_getenv that expands environment variables - that contain references to other environment variables, as is - typical on Windows NT. - - Added the GIOChannel structure which is used to encapsulate the - IPC mechanism used by the GIMP's plug-ins, and possibly other - things later. On Unix a GIOChannel encapsulates just a file - descriptor. On Windows it contains a file handle from _pipe() and a - few other things related to the implementation of gdk_input_add - and GIMP plug-in communication. Subject to change. - - Removed duplicate declarations of the version variables. - - For the Microsoft compiler, declare own implementation of - ftruncate and the <dirent.h> functions. - - * gmem.c: - Define a symbolic name for the profiling table size. - - * gmessages.c: - Conditionalized inclusion of unistd.h. On Windows, output using - stdio to stdout. - - * gscanner.c: - 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. - - * gtimer.c: - Conditionalized inclusion of unistd.h and sys/time.h. Added - implementations for Windows. - - * gutils.c: - Conditionalized inclusion of platform-dependent headers. Use - the platform-independent file name syntax macros. - Conditionalize code on platform-dependent features. Added the - functions g_path_is_absolute g_path_skip_root and g_getenv. - Added the GIOChannel-related functions. Added - compiler-dependent Unix compatibility functions for Windows. - - * 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 - from gtk-config.1 in gtk - - * configure.in: - * Makefile.am: - * sanity_check: added in docs directory, change rule 'release' - to 'snapshot' and created a new 'release' rule for doing the - distribution. Added in a 'sanity' rule. - - * NEWS: - * 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_get_char): no more characters are available if read() returns - anything less than 1, not only on 0 return. - - * 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(). - (g_strjoinv): renamed from g_str_array_joinv(), string array is - now passed as last parameter. removed `const' qualifier from string - array pointer (again). - (g_strjoin): new function from sopwith to concatenate strings with - an additional seperator. - (g_strfreev): renamed from g_str_array_free. - -Sat Oct 24 22:23:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * gnode.c: small fix to g_node_children_foreach to make it work right. - From Paco Moya <paco@cadnotebk17.eecs.berkeley.edu> - -Wed Oct 21 19:22:58 1998 Tim Janik <timj@gtk.org> - - * configure.in (G_MODULE_HAVE_DLERROR): reverted part of the changes - from Sebastian Wilhelmi (1998-10-20). don't specify a specific loading - behaviour (i.e. RTLD_NOW) when we are not sure whether it is supplied. - changed the return value from (!f2 && f1) to (!f2 || f1) so we default - to not needing an underscore. reverted the extra plugin.c building, - because .lo files are not ELF libraries, this can't work. This needs - further investigation on Solaris... - -Wed Oct 21 17:03:05 1998 Tim Janik <timj@gtk.org> - - * 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 - the in_place arguments were skipped, the caller is supposed to pass a - g_strdup()ed string if he wants to retrive a new copy. indentation and - coding style fixups. added some g_return_if_fail() statements. - string array functions are prefixed with g_str_array_. - (g_strdelimit): return the modified string like all other g_str* - functions, that operate in place. - (g_strchug): renamed from g_str_chug(), removed in_place argument. - (g_strchomp): renamed from g_str_chomp(), removed in_place argument. - (g_strstrip): renamed from g_str_strip(), removed in_place argument. - (g_str_array_join): renamed from g_strconcatv(), since it actually - operates on a string array and has totaly different semantics from - g_strconcat(). check for separator != NULL, don't segfault if the first - string is NULL. removed the `const' from the string array that's passed, - so users can operate on gchar** string arrays. - (g_str_array_split): renamed from g_str_split() because we actually - produce a string array. reimplemented this function for efficiency. - removed macro aliases g_str_joinv and g_str_join. - -1998-10-20 Elliot Lee <sopwith@redhat.com> - - * glib.h, gstrfuncs.c: Move string join/split/free routines from - libgnome/gnome-string, rename, and add g_str_chug. - -1998-10-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: made the check for needed _ in module's func-names - work on solaris. (G_MODULE_NEED_USCORE must be set outside - AC_CACHE_VAL, dlopen(0,0) refused to work on solaris). - -Tue Oct 20 03:32:58 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in - * acconfig.h: added test for endianness - - * glib.h: #define endian macros for system and some conversions - between byte order - -Thu Oct 8 06:47:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: removed functions g_dataset_id_set_destroy and - g_datalist_id_set_destroy and macros g_dataset_set_destroy and - g_datalist_set_destroy. - added new functions g_dataset_id_remove_no_notify and - g_datalist_id_remove_no_notify plus associated macros - g_dataset_remove_no_notify and g_datalist_remove_no_notify, which - will remove a certain data portion without invokation of its destroy - notifier, this should only be used in very controled circumstances. - -Wed Oct 7 05:31:24 1998 Tim Janik <timj@gtk.org> - - * glib.h: - removed the #pragma } statement after extern "C" {. use - (c-set-offset 'inextern-lang 0) to fixup emacs cc-mode indentation. - - * glib.h: - * ghook.c: API and code cleanups. changed the G_HOOK_ACTIVE and - G_HOOK_IN_CALL enum vals to G_HOOK_FLAG_ACTIVE and G_HOOK_FLAG_IN_CALL. - changed the G_HOOK_IS_ACTIVE() and G_HOOK_IS_IN_CALL() macros to - G_HOOK_ACTIVE() and G_HOOK_IN_CALL(). - fixed the g_hook_find* functions, so they iterate over non-active - hooks as well. - (g_hook_first_valid): - (g_hook_next_valid): added an extra argument gboolean may_be_in_call, - which indicates whether G_HOOK_IN_CALL() hooks are considered valid - or not. these two functions are meant as iterators for the hook list - invocation, so they need to a) provide functionality to implement - may_recurse bahaviour and b) only walk active hooks. - -Tue Oct 6 14:29:47 1998 Tim Janik <timj@gtk.org> - - * gmem.c (g_malloc0): fixed memory offsett when ENABLE_MEM_CHECK is - defined and ENABLE_MEM_PROFILE is not (patch from Martin Pool - <mbp@wistful.humbug.org.au>). - -Sat Oct 3 01:18:10 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: - (g_hook_list_invoke): - (g_hook_list_invoke): - (g_hook_list_marshal): properly handle the first valid hook to call, - it maybe IN_CALL already. - (g_hook_list_marshal): minor name change. - -Fri Oct 2 23:21:21 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: renamed GHook.id to GHook.hook_id so we don't get troubles - with ObjC which reserves "id" as a keyword (Raja R Harinath - <harinath@cs.umn.edu>). - -Wed Sep 30 10:53:03 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: added ghook.c. - - * glib.h: - * ghook.c: generic callback maintenance functions. - - * glib.h: define G_GNUC_UNUSED. - -Fri Sep 25 00:04:37 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.4, binary age 0, interface age 0. - - * glib.h (struct _GScanner): dumped peeked_char and text_len in favour - of *text_end and *buffer for buffered read()s. - - * gscanner.c: changed peeking and retrival of next character so we - have buffered reads. fixed minor bug with number parsing error - reporting. made some static!!! variables local ones (why did we use - static temporary variables in the lowlevel tokenization code anyways?). - -Mon Sep 21 23:23:10 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.3 - -Mon Sep 21 07:43:13 1998 Tim Janik <timj@gtk.org> - - * glib.h: added g_renew() which works as g_new() for g_realloc(). - -Mon Sep 21 02:22:12 1998 Tim Janik <timj@gtk.org> - - * NEWS file update for upcoming release of GLib + GModule - version 1.1.3, binary age 0, interface age 0. (GModule uses - the same version numbers as GLib.) - - * glib.h: swap the inclusion of of float.h and limits.h to work - around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by - Per Abrahamsen <abraham@dina.kvl.dk>). - - * glib.h: - * gscanner.c: renamed the GValue union to GTokenValue, this should - not affect source compatibility in most cases. - - * ghash.c: added some g_return_if_fail() statements. make - g_hash_table_lookup_node() an inline function so we save an extra - function invokation on lookups. - -Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com> - - * ltmain.sh: Patch to libtool-1.2b to make --disable-static - work. - -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). - Returns the number of elements deleted. - -Fri Sep 18 11:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_memdup implementation - -Fri Sep 18 18:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: make the datalists a safe type (not using a generic - gpointer) by expecting a GData* argument in the g_datalist functions. - provide g_dataset_foreach() and g_datalist_foreach() functions that - allow a GDataForeachFunc function to walk the data lists. - (g_dataset_destroy_internal): made this function truely reentrant (i.e. - can be called from within destroy notifiers as well). - the *_foreach functions are _not_ reentrant (unless all the other - dataset and datalist functions). - -Fri Sep 18 03:41:20 1998 Tim Janik <timj@gtk.org> - - * gtree.c (g_tree_new): check for key_compare_func != NULL (reported - by Michal Kara). - -Thu Sep 17 18:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * config.h.in: removed from repository - - * install-sh - * missing - * mkinstalldirs: updated to latest automake version - -Thu Sep 17 06:36:25 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: implemented g_datalist_* along the lines of g_dataset, - but operates on an opaque gpointer *datalist; pointer, e.g. for the - implementation of GtkObject named data. - we cache a certain portion of the already freed data entries now, to - gain a slight performance improve with data reallocation. - -Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am glib-config.in l*: Update to libtool-1.2b, - change library versioning scheme to drop LT_RELEASE - from the -l line, while keeping it in the soname. - -Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org> - - * glib.h: explicitely include the prototypes for inline functions - to cure gcc warnings for -Wmissing-prototypes. - -Wed Sep 9 02:52:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -posix check for NeXTStep - -Tue Sep 8 05:04:06 1998 Tim Janik <timj@gtk.org> - - * glib.h: abandon the use of ATEXIT(), we keep the fallback - macros for backwards compatibility. people ought to use g_atexit(). - - * gutils.c (g_atexit): new function to take over the implementation - of ATEXIT. this function is guarranteed to succeed, similar to - g_malloc(). - -Mon Sep 7 20:07:38 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: comment the -std1 check and save LIBS properly - -Mon Sep 7 07:53:21 1998 Tim Janik <timj@gtk.org> - - * configure.in: check for all three inline keywords individually. - - * 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'. - 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 - prototypes if no inlinig can be performed. we special case most of the - stuff, so inline functions can have a normal implementation by defining - G_INLINE_FUNC to extern and G_CAN_INLINE to 1. - - * ltconfig: (compiler PIC flag test): special case linux for non - aout systems to honour lcc's position independant code (cases - "linux*aout)" and "linux*)" got added). (this needs to go into - libtool which does an advanced test, checking for __LCC__). - - * autogen.sh: take $CC=lcc into account by invoking automake with - --include-deps so lcc isn't scared by gcc's auto-dependancy - generation code. care about $ACLOCAL_FLAGS. optionally feature - autoheader. - - * minor fixups in other places to cure some of lcc's warnings. - -Sun Sep 6 19:08:53 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -std1 check for ANSI compliance (from gtk) - -Sun Sep 6 12:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: provide proper ATEXIT behavior on NeXTStep by !atexit - -Sat Sep 5 18:03:36 1998 Tom Tromey <tromey@cygnus.com> - - * gutils.c (GLIB_INLINE): Define. - * glib.h (GLIB_INLINE): New define. - (g_bit_nth_msf): Use it. Also, add prototype. - (g_bit_storage): Likewise. - (g_bit_storage): Likewise. - -Sat Sep 5 04:40:02 1998 Tim Janik <timj@gtk.org> - - * 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. - - * gmem.c: new function g_mem_chunk_alloc0() which will initialize - a memory area allocated with g_mem_chunk_alloc() with 0's. - -Wed Sep 2 19:13:28 1998 Owen Taylor <otaylor@redhat.com> - - * garray.c glib.h (g_array_[ap/pre]pend_vals): make - data argument const. - -Wed Aug 26 06:32:40 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstrfuncs.c: new function g_strnfill() to return a new string - of specified length, filled with a specific character. - -Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu> - - * testglib.c (main): Update the array tests. Reduce the number of - iterations for the prepend test from 10000 to 100 since it is - O(n^2) and was taking longer than I would like to wait. - - * garray.c: I've worked on the GArray interface, mostly. It was - seriously broken before and I hate to do it, but this is going to - break some code. It is important to do this now, because more and - more people are starting to use glib and the interface was both - broken and inconsistent. First, rename the _truncate functions of - both the GArray and GPtrArray classes to _set_size, since this - function can also be used to extend the arrays. GArray now - accepts two more initialization arguments: clear and element_size. - Instead of providing the type to each access function, the array - now stores the element size. Clear, if set, causes the library to - zero element's memory as the array expands. The major broken-ness - here was that array->len was in bytes, not elements. Now, since - the array knows its element size, array->len is correct and I have - removed the g_array_length macro. The only macro which now - accepts the type as an argument is g_array_index, which casts the - element to the right type--this interface does not change. The - append and prepend functions simply need the types removed. - g_ptr_array_remove_index now returns the removed element. - - * gprimes.c (g_spaced_primes_closest): Move this function out of - ghash.c and rename it from g_hash_closest_prime. Fix the primes - so that they are actually prime (they weren't all -- isn't that - nice?). - -Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstring.c: - * gstrfuncs.c: - (g_vsprintf): removed this function which was not publically - exported in glib.h. to export it, it should have been named - differently in the first place, since its semantics differ from - vsprintf(). apart from that, it was a possible cause for - problems since it worked on a previously allocated memory area and - was used in a lot places of glib. exporting it would have been a - guararant for problems with threaded programs. - (g_printf_string_upper_bound): exported this function to return - a string size, guarranteed to be big enough to hold the fully - expanded format+args string. added 'q', 'L' and 'll' flag handling. - in fact, the newly allocated area is in most cases much bigger than - required. - (g_strdup_vprintf()): new function returning a newly allocated string - containing the contents of *format and associated args (size is - calculated with g_printf_string_upper_bound()). - (g_strdup_printf): new function which wraps g_strdup_vprintf(). - - * configure.in: check for va_copy() or __va_copy() alternatively. - check whether va_lists can be copyied by value. - - * glib.h: provide a definition for G_VA_COPY. - - * glib.h: - * gmessages.c: - (g_logv): - (g_vsnprintf): - pass va_lists by value, not by reference, since this causes problems - on platforms that implement va_list as as arrays. internaly, use - G_VA_COPY (new_arg, org_arg); va_end (new_arg); to produce a second - va_list variable, if multiple passes are required. changed all - callers. - - * glib.h: - * gerror.h: - renamed g_debug() to g_on_error_query(), cleaned up a bit. - renamed g_stack_trace() to g_on_error_stack_trace() since both - functions cluttered different namespaces. - there is an appropriate comment in glib.h now that explains the - unix and gdb specific dependencies of both functions. - removed g_attach_process(). - g_on_error_stack_trace() should probably be handled with caution, - i've seem several different linux versions (2.0.x) become unstable - after invokation of this function. - -1998-08-18: Elliot Lee <sopwith@redhat.com> - - * In gmem.c, add the ability to exclude memory chunks from the - memory profiling information. - -Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_strndup - -Tue Aug 18 04:40:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: new function g_log_set_always_fatal() to set an - additional fatal_mask for log levels that are considered to be fatal - globally (required by gtk). since this mask is not domain-associated, - it is restricted to the log levels, introduced by glib itself. - - * gmem.c: - * grel.c: - * gtree.c (g_tree_node_check): - don't use g_print() calls for informational/debugging output, - but log all this stuff through g_log() with G_LOG_LEVEL_INFO. - libraries shouldn't use printf(), g_print() or g_printerr() at all. - -Tue Aug 18 02:46:44 1998 Tim Janik <timj@gtk.org> - - - * glib.h (__STRICT_ANSI__): if __STRICT_ANSI__ is defined, make - `inline' a noop, since strict ANSI rules don't permit `inline'. - -Mon Aug 17 15:21:42 1998 Tim Janik <timj@gtk.org> - - * grel.c: made private functions static. - -Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to - EXTRA_DIST - * glib.spec: version = 1.1.3 - -Mon Aug 17 01:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.m4: feature an extra MODULES parameter, so glib-config can - be invoked with the "gmodule" argument. - - * glib.h: changed the log level to G_LOG_LEVEL_CRITICAL for all - g_return*_if_fail statements, and made them issue a message - like "assertion `%s' failed". - - * gmessages.c (g_logv): ugh, don't pass log_domain as NULL to - g_log_find_domain. - -Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org> - - * version bump to 1.1.3, binary age 0, interface age 0. - - * glib.h: be nice to platforms that don't have gint64 and don't - issue #warning on every compilation. since glib doesn't require - gint64 itself, packages that need gint64 should test for this - themselves. - - * glib.h: - * gutils.c: added a new function g_vsnprintf(). - -Sun Aug 16 Elliot Lee - - glib.h: #error out if we don't recognize the SIZEOF_VOID_P - #warning if no gint64 - -Fri Aug 14 16:41:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: added static inline functions for bit mask tests: - g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage. - -Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: - revised the message handling system, which is now based on a new - mechanism g_log*. most of the assertment macros got adapted to - feature the new g_log() call with an additional specification of - the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN - is undefined upon the includion of glib.h, it'll be defined with a - value of (NULL) and thus preserves the original bahaviour for - warning and error messages. the message handler setting functions - for g_warning, g_error and g_message are only provided for backwards - compatibility and might get removed somewhen. - - * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain - to "GLib" upon compilation. we currently have to add this definition - to the DEFS variable. - * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start - of this file currently, since automake doesn't support per target - _CFLAGS yet. - - * glib.h: changed some gints to gbooleans, made a few const corrections, - removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some - in other required places. - - * gnode.c: - (g_node_prepend): - (g_node_insert_before): - (g_node_insert): - (g_node_append_data): - (g_node_prepend_data): - (g_node_insert_data_before): - (g_node_insert_data): - (g_node_append): - return (node), so these macros/functions can be usefully chained with - g_node_new(). - -Mon Aug 10 17:56:11 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: it's GTime now, and it's back! - -Mon Aug 10 02:17:19 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: minor hack to cause SUBDIRS (gmodule) to be build - last. we do this by making all-recursive-am depend on all-am. - -Sun Aug 9 15:56:11 1998 Tim Janik <timj@gtk.org> - - * configure.in: added GModule checks. generate files in gmodule/. - * glib-config.in: support library specifications `glib' and `gmodule'. - * Makefile.am: feature the gmodule/ subdir. - -Wed Aug 5 10:04:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.2 - -Wed Aug 05 01:15:36 1998 George Lebl <jirka@5z.com> - - * testglib.c: fix 64-bitness in g_prints, sizeof doesn't - seem to return int so I cast it for printing, probably - just cosmetic - -Tue Aug 4 19:54:06 PDT 1998 Shawn T. Amundson <amundson@gkt.org> - - * Released GLib 1.1.1 - -Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.1, binary age 1, interface age 0. - * NEWS: updates. - * README: updates. - * INSTALL: updates and fixes. - * COPYING: include the GNU LGPL, rather than shipping an empty file. - * AUTHORS: listed original authors here, and added people who made - significant improvements to glib. - - * glib.h: - * gutils.c: implement g_get_current_dir() which returns a newly - allocated string, instead of a g_getcwd() variant that operates - on a static buffer. - export glib_interface_age and glib_binary_age. - as a convenience, macro definitions have been added for - g_node_insert_data, g_node_insert_data_before, g_node_append_data and - g_node_prepend_data. - - * testglib.c: minor cleanups, print current dir. - -Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gnode.c: change order of gpointer data; field in struct _GNode to - be partly binary compatible with GList and GSList. - -1998-08-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * garray.c (g_ptr_array_remove_index): bugfix: index check for - array has been wrong. - -Fri Jul 31 22:17:05 1998 Tim Janik <timj@gtk.org> - - * testglib.c (g_node_test): added a GNode test. - -Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: compile gnode.c. - - * glib.h: - * gnode.c: added implementation of n-way trees. - - * gtree.c (g_tree_traverse): added a warning to the switch() statement - which says that G_LEVEL_ORDER is not implemented. - -Mon Jul 27 00:17:30 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.0 - -Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: #if 0'ed out the GTime definition, until it is definitively - needed. #if 0'ed out the g_getcwd() version, because it is the wrong - implementation. - -Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu> - - * glib.h: gtime changed to g_time. gtime is used in - /usr/include/time.h in NetBSD, causing multiple headaches. - If this isn't the right way of fixing it.... ;) - -Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: new functions to make a scanner scope sensitive wrt - symbol lookups. - g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol, - g_scanner_scope_remove_symbol, g_scanner_scope_add_symbol and - g_scanner_set_scope. - g_scanner_add_symbol, g_scanner_remove_symbol and - g_scanner_foreach_symbol are now aliases for scope 0. - -Mon Jul 20 23:05:34 1998 George Lebl <jirka@5z.com> - - * glib.h: typo fixed for alphas for gint64 - -Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.c: new fuction g_dirname() which returns a newlly - allocated string. - -Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.h: added a bunch of utility/wrapper functions: - g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(), - g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname(). - - * gutils.c: removed all g_str* functions. - * gstrfuncs.c: moved the bunch g_str* functions from gutils.c in this - place. this file shall never include <unistd.h> to avoid clashes for - some of the g_str* functions on some OSes. - -Fri Jul 10 00:29:03 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Renamed g_hash_table_lookup_full to - g_hash_table_lookup_extended to conform with naming conventions. - -Tue Jul 7 03:18:58 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Generic cleanup, added a function: - (g_hash_table_lookup_full): Return whether the lookup succeeded, - and also retrieve the key and value. This allows one to - distinguish between failed lookup and finding a NULL, and also - allows one to free a key in the hash. - -Mon Jul 6 10:12:05 PDT 1998 Manish Singh <yosh@gimp.org> - - * ltconfig: fix for properly detecting shared lib support on - SunPro cc (taken from libtool 1.2.a) - -Sat Jul 4 13:38:52 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: added g_array_length - -Tue Jun 30 11:58:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): take symbol_2_token into - account. react on valid/invalid string pairs. - -Sat Jun 27 21:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.m4: ftp.glib.org -> ftp.gtk.org, since glib.org isn't - ours. ;) - -Fri Jun 19 03:11:02 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: removed g_dataset_try_key, g_dataset_force_id and - g_dataset_retrive_key in favour of GQuarks. - a GQuark is an numeric id wich is associated with a certain string. - (g_quark_try_string): try to get the quark associated with this string, - if the lookup failed return 0. - (g_quark_from_string): get the associated quark for a string, if there - isn't currently a GQuark associated with this string, then allocate a - new quark and return that. - (g_quark_from_static_string): like the above function, but the string - isn't strdup()ed to save memory. - (g_quark_to_string): get the string that is associated with a certain - GQuark. - - * gdataset.c (g_dataset_id_set_data_full): invoke the destroy function - _after_ the new data has been setup. - -Thu Jun 18 02:35:21 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Changed messages for g_return_[val]_if_fail to - be somewhat more clear: assertion "blah" failed. - -1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * testglib.c (main): Use GINT_TO_POINTER casts to remove compiler - warnings. - - * grel.c: #include <string.h> - -Fri Jun 12 15:39:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (GScanner): cleanups of the structure fields (binary - incompatible). - -Fri Jun 12 00:39:28 1998 Josh MacDonald <jmacd@icw.EECS.Berkeley.EDU> - - * glib.h: add new hash and equal functions g_int_*. complement - g_direct_hash with g_direct_equal. - - * grel.c: new file, GRelations implement tuples of N-N mappings. - A comment in glib.h briefly describes the interface. - - * ghash.c: new function, g_hash_table_size - - * glib.h: new typedefs, gsize, gssize, gtime. - - * garray.c: new functions implementing a simplified GArray. This - GPtrArray is an array of gpointers and has functions to add and - remove elements, much like java.lang.Vector. - - * garray.c: new functions for the single-byte special case of - GArray. The functions g_byte_array* operate on arrays of bytes. - Internally, a GArray is used. - - * testglib.c: tests for g_ptr_array, g_byte_array, and g_relation... - -1998-06-11 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gdataset.c: #include <string.h> - -Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: new function g_dataset_retrive_key. adjusted prealloc - sizes, to take up less space on initial allocation. - -1998-06-10 Raja R Harinath <harinath@cs.umn.edu> - - * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2, - the version from which glib's libtool forked. Needed for people - who use post-1.2 alphas of libtool. - * configure.in (enable_mem_check, enable_mem_profile): Replace - `echo -n' with AC_MSG_CHECKING. - (fd_set): Explain test for `fd_set' better. - -Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org> - - * Makefile.am glib.m4 configure.in: - - Moved out from GTK+; added AM_PATH_GLIB macro. - -Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: renamed g_const_pointer => gconstpointer - -Tue Jun 9 17:47:33 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Remove #error - HP/UX. - -Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org> - [ Combination of: - gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>) - gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ] - - * glib.h ghash.c gstring.c gdataset.c gutils.c: - - Added new typedef g_const_pointer; expunged all incorrect - uses of 'const gpointer'. - - Fixed up warnings that that created, - - Changed GHashFunc and GCompareFunc to take g_const_pointer - arguments. (Necessary, but will cause warnings in existing - code until fixed) - - Added other new const in harmless positions. - -Mon Jun 8 01:06:47 1998 Tim Janik <timj@gtk.org> - - * glib.h: added enum-helper macros for code generation. - added G_BREAKPOINT(). - -Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org> - - * gmem.c: commented out MEM_PROFILE and MEM_CHECK, causing weird - problems - -Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_chunk_new0): convenience macro, for allocating small chunks - like g_chunk_new() with additional 0 initialization. - -Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org> - - * ghash.c (g_hash_table_insert): wrote a comment describing why - a hash node's key should not also get replaced when overriding - previous entries. - -Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_string_sized_new): new function to controll the preallocated - size of a GString. - - * glib.h (g_strreversed): new function to reverse a string. - -Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org> -(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch) - - * gutils.c: Restored a missing prototype for g_vsprintf. - -Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: conditionally define NULL, FALSE and TRUE. - (g_mem_chunk_create): new convenience macro as a short hand for - g_mem_chunk_new(). - (g_chunk_free): new convenience macro to be consistent with g_chunk_new. - -Tue, 19 May 1998 09:00:02 +0200 Paolo Molaro <lupus@debian.org> - - * gcompletion.c: generic functions for com<TAB>pletion... - -Sun May 17 10:48:27 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): provide usefull default - specifications for identifier_spec and symbol_spec. - - * glib.h: new functions g_slist_nth_data and g_list_nth_data to return - the data of the nth element in the list. - -Fri May 15 22:31:49 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) - that for some reason didn't produce a compiler warning on my machine - (is va_end defined to nothing for i386?). - -Fri May 15 12:32:08 1998 rodo <doulik@karlin.mff.cuni.cz> - - * gscanner.c: replaced some snprintf with g_snprintf - -Fri May 15 00:56:59 1998 Tim Janik <timj@gtk.org> - - * glib.h: further support for gcc function attributes: G_GNUC_FORMAT, - G_GNUC_NORETURN and G_GNUC_CONST. - - * gscanner.c (g_scanner_stat_mode): changed stat() to lstat(). - (g_scanner_msg_handler): "\n" at end of line! - (g_scanner_foreach_symbol): new function to iterate over the symbol - table (GScanner does value-wrapping). - -Thu May 14 04:14:12 1998 Tim Janik <timj@gtk.org> - - * glib.h: typedef gint gboolean; - this is needed to provide portability with big-endian platforms (e.g. - try sizeof(bool) for c++ on big-endians - it's 4). - this is also needed to maintain some_union.d_gint==some_union.d_gboolean. - plus, gint to gboolean casts and vice versa need to be possible without - loss. - -Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib/glib.h: Added macros G[U]INT_TO_POINTER() and - GPOINTER_TO_[U]INT for storing small integers integers - inside pointers. - - * glib/testglib.c: Print sizeof() results - as g_print("%ld", (glong)sizeof(foo)), to deal with - size_t being long on Alpha's. - -Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org> - (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch) - - * glib.h gstring.c gmessages.c: Added some missing - const to arguments. - - * gutils.c (g_strsignal.c): Added missing return statements. - -Mon May 11 21:11:54 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c gmessages.c: Moved g_error, g_warning, g_message and - g_print from gutils.c to new file gmessages.c, to avoid having to - include <unistd.h> in gutils.c which was causing problems for the - g_strsignal implementation on FreeBSD boxes. - -Mon May 11 09:53:43 1998 Tim Janik <timj@gtk.org> - - * configure.in: preserve automake CFLAGS. - - * Makefile.am: fully rename the created library to libglib-1.1.la. - this means we need to change certain portions of the Makefile.am on - major/minor version bumps. - - * ltmain.sh: the -release option is not required anymore. - - * glib.h: provide G_GNUC_FUNCTION and G_GNUC_PRETTY_FUNCTION to - avoid conditionals. unconditionally define NULL, TRUE, FALSE, MAX, - MIN, ABS and CLAMP, these macros might be screwed from other headers. - -Mon May 11 01:44:10 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: new file, gdatasets implement the object data - mechanism from GtkObject. a generic data pointer is associated with - a certain location and a key id. - -Sat May 9 20:08:12 1998 Owen Taylor <otaylor@gtk.org> - - * glib/gmem.c: Experimentally restore GMemChunk - to its primeval state - where mem areas are - freed incrementally instead of searching the tree - every time a mem area is completely empty. Also, - always keep one mem chunk around. (Reduced calls - to malloc() a lot, but doesn't really improve - performance significiantly) - -Thu May 7 08:17:28 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_GNUC_PRINTF): - (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument - checking of gcc. - - * gstring.c: const corrections, string!=NULL checks at function entry. - (g_string_down): new function for tolower(3) conversion. - (g_string_up): new function for toupper(3) conversion. - - * gutils.c: const corrections. - (g_strdown): g_string_down() counterpart. - (g_strup): g_string_up() counterpart. - - * gscanner.c (g_scanner_unexp_token): - (g_scanner_error): - (g_scanner_warn): new functions to let a scanner put out warnings - or errors, especially to react on unexpected tokens. - - * gslist.c: - (g_slist_index): find out about about the position of a - certain data pointer. - (g_slist_position): find out about about the position of a - certain node. - - * glist.c: - (g_list_index): find out about about the position of a - certain data pointer. - -Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org> - - * ltmain.sh: added a new commandline flag -postfix similar to -release, - but will immediately change the library name. - - * Makefile.am: specify -postfix and -version-info - - * configure.in: version bump to 1.1.0. added GLIB_INTERFACE_AGE and - GLIB_BINARY_AGE. calculate LT_* variables for libtool. - -Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c: (g_strcasecmp). Check for isupper before - taking tolower, and account for macroized tolower. - - * gutils.c (g_error): Check for recursion. - -1998-04-27 Elliot Lee <sopwith@cuc.ml.org> - - * glist.c (g_list_position): New function to find the position of - a link in a list - should be the inverse of g_list_nth(), but - haven't tested it so poof. - -Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org> - - * gstring.c : Check arguments more carefully, - (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de) - -Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_direct_compare): Removed, because that's what - a NULL comparison function means. And it wasn't 64 bit safe. - -Mon Apr 6 18:43:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_get_token_ll): fixed a bug that caused floats - of the format ".xxx" to be parsed as "xxx". - -Fri Apr 3 20:36:35 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_parse_debug_string): Make debug string - parsine case-insensitive - -Fri Apr 3 17:03:18 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: corrected possible overrun when inserting into - GStrings (thanks Elrond) - -Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu> - - * testglib.c: Removed literal german from strings - to appease SGI compiler. - -Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in glib glibconfig.h.in: Add test for atexit/on_exit - - use on_exit if atexit not found in definition of ATEXIT. - -Wed Mar 25 15:23:37 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Switched glibconfig.h rule from HEADERS - to DATA, so that it is not added to DISTFILES - -Wed Mar 18 22:27:08 PST 1998 Manish Singh <yosh@gimp.org> - - * garray.c: g_rarray_truncate length done correctly - -Sun Mar 15 07:13:34 1998 Tim Janik <timj@gimp.org> - - * gutils.c: changed *_handler variables to be named glib_*_handler, - so you can easily access them from gdb. - -Sat Mar 14 17:47:43 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Don't refer to current directory as $(top_builddir) - to avoid confusing non-gmakes - -Sat Mar 14 01:37:35 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am (configincludedir): Moved glibconfig.h to - $(pkglibdir)/include - -Tue Mar 10 02:03:12 1998 Tim Janik <timj@gimp.org> - - * gscanner.c (g_scanner_destroy_symbol_table_entry): new function to - free symbol table entries upon destruction - (gtk-gronlund-980309-0.patch.gz). - -Mon Mar 9 15:02:21 1998 Tim Janik <timj@gimp.org> - - * glib.h: changed *_length functions to return guint. - changed *_nth functions to take guint as argument. - - * glist.c: adapted g_list_length and g_list_length. - - * gslist.c: adapted g_slist_length and g_slist_length. - -Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gutils.c : changed g_strcasecmp - to take gchar* not guchar* - - * testglib.c: Remove trailing ; after functions - -Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gstring.c: Added g_string_insert[_c]() - and g_string_erase(). - - From: Stefan Wille <1wille@vsys1.informatik.uni-hamburg.de> - -Mon Feb 16 23:05:06 1998 Owen Taylor <owt1@cornell.edu> - - * glist.c (g_list_insert_sorted): Changed function - so elements are always inserted, even if they compare - equal with another. - -Thu Feb 12 22:48:11 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c glib.h: removed deprecated g_string_equal - and g_string_hash. - -Tue Feb 10 13:04:36 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in: Add check to see if the C library's - iswalnum can actually be used. (Not true for - Linux libc-5.4.38) - -Sat Feb 7 11:48:09 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c gutils.c: added some additional consts in - appropriate places to remove a warning - -Sat Feb 7 11:15:54 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c: include <ctype.h> for tolower() - -Fri Jan 30 23:57:17 PST 1998 Manish Singh <yosh@gimp.org> - - * added and autoconfigured in a new utility function - g_strcasecmp - -Wed Jan 28 23:53:27 PST 1998 Manish Singh <yosh@gimp.org> - - * glist.c - * gslist.c - * testglib.c: the sort functions compared backwards. Fixed - * glib.h: list iterator macros now check for NULL pointers - -Tue Jan 27 09:46:57 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: g_string_prepend and g_string_prepend_c had - interchanged src and dest parameters for g_memmove. Fixed. - -Tue Jan 27 01:38:52 PST 1998 Manish Singh <yosh@gimp.org> - - * gslist.c: fixed a really, really lame error. g_slist_insert - didn't hook the data in! Reworked the routine to reflect the - functionality of g_list - -Wed Jan 21 01:13:25 1998 Tim Janik <timj@psynet.net> - - * Applied patch from (Raja R Harinath <harinath@cs.umn.edu>) - to add function g_snprintf. - * configure.in (AC_CHECK_FUNCS): Check for vsnprintf. - * glib.h: Add prototype for g_snprintf. - * glibconfig.h.in: Add HAVE_VSNPRINTF. - * gutils.c (g_snprintf): new function. - -Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.{c,h} gscanner.c: - renamed g_string_equal => g_str_equal - renamed g_string_hash => g_str_hash - And const corrected. Old functions left in for now. - -Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net> - - * gutils.c (g_strerror): changed message for EAGAIN from - "no more processes" to "try again" since EAGAIN is used with - functions else than fork(). - - * gscanner.c (g_scanner_get_token_ll): use strtol() instead of - strtoul() to avoid conflicts with solaris. - - * merged the glib portions from Jan 2 to Jan 7 out of gtk+/ChangeLog - into this file. - -Wed Jan 7 02:14:30 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: - * glist.c: - * gslist.c: - * testglib.c: Added g_[s]list_insert_sorted function - and appropriate tests in testglib - -Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h: Changed guint32 -> guint for bitfields. - (Bitfields must be int or unsigned int?) - -Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: reverted glibconfig.h and glib.h files back to the - way they were before my ugly hack. - - * gscanner.c: removed inlines from clist and gscanner - -Tue Dec 23 02:49:51 1997 Tim Janik <timj@psynet.net> - - * gscanner.c: new file for GScanner: Flexible lexical scanner for - general purpose. - * glib_pre2.h: added GScanner includes. added g_strconcat and g_strtod. - gutils.c (g_strconcat): new function for string concatenation of NULL - terminated parameter list. - (g_strtod): new function to perform best string to double conversion - with or without consideration of the current locale. - -Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net> - - * glist.c: minor optimizations: - (g_list_append): `if' optimized for common code path, commented out - unneccessary `assert', saved one variable assignment. - (g_list_prepend): saved two (conditioned) variable assignment. - (g_list_insert): saved one (conditioned) variable assignment, - saved one variable assignment. - (g_list_remove): `if' optimized for common code path, saved two - variable assignments by using `g_list_free_1' (which is even - faster) instead of `g_list_free'. - (g_list_reverse): saved allocation of one variable, saved one - variable assignment. - -Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: this file now gets concatenated by makeglib_h from - glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got - created by configure (done by Jay Painter). - - * glib_pre2.h: the g_assert*() and g_return_*_fail() macros - are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts - when used within if (...) g_macro(); else ... conditionals. - -Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to - not call 'g_string' but to simply stringify the - expression. Calling 'g_string' causes the expression to be - expanded which is undesired. - -Sun Dec 1 01:30:48 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * Started ChangeLog + * configure.in: set glib version to 1.3.0. diff --git a/ChangeLog.pre-1-2 b/ChangeLog.pre-1-2 new file mode 100644 index 000000000..786951f55 --- /dev/null +++ b/ChangeLog.pre-1-2 @@ -0,0 +1,2880 @@ +Sun Feb 21 22:11:51 CST 1999 Shawn T. Amundson <amundson@gtk.org> + + * Released GLib 1.2.0 + + * AUTHORS: updated + +Wed Feb 24 00:08:42 CST 1999 Shawn T. Amundson <amundson@gtk.org> + + * *.[ch]: inserted additional note to look for ChangeLog and + AUTHORS file for a log of modifications. + +Sun Feb 21 14:01:00 1999 Dr Mike <drmike@redhat.com> + + * Made specfile generated, tweaked slightly + +Thu Feb 18 08:24:12 1999 Tim Janik <timj@gtk.org> + + * gmem.c (g_realloc): plugged a memory leak, reported by Koen D'Hondt + <ripley@xs4all.nl> on 15 Oct 1998. allocate inital block from realloc. + +1999-02-17 Elliot Lee <sopwith@redhat.com> + + * glib.spec: Do --enable-debug=no for the .rpm's. + +Wed Feb 17 17:04:06 1999 Tor Lillqvist <tml@iki.fi> + + * config.h.win32: Must define HAVE_PTHREAD_GETSPECIFIC_POSIX. + +Tue Feb 16 14:08:59 CST 1999 Shawn T. Amundson <amundson@gtk.org> + + * NEWS + README + INSTALL + config.h.win32 + configure.in + glib.spec + glibconfig.h.win32 + docs/glib-config.1: version=1.1.16 + + * Released GLib 1.1.16 + +1999-02-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * glib.h, glibconfig.h.win32, configure.in: Changed signature of + all g_static_mutex_* functions to take a pointer rather than the + struct itself. This is not an issue at the moment, because those + funcs are really macros, but is it un'G'ish and might fall on our + feet in the future. + +Mon Feb 15 07:45:54 1999 Tim Janik <timj@gtk.org> + + * configure.in (--enable-debug): default to yes for development trees. + +Mon Feb 15 06:18:58 1999 Tim Janik <timj@gtk.org> + + * glib.h: return guints instead of gints for g_hash_table_size + and g_hash_table_foreach_remove. + +Wed Feb 10 12:01:42 1999 Tim Janik <timj@gtk.org> + + * configure.in: don't reset G_MODULE_IMPL, so it can be overridden + from the command line. + +1999-02-10 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * glib.h: s/G_LOCK_DECLARE/G_LOCK_DEFINE/ throuhout glib. Added + G_LOCK_EXTERN macro to declare a lock externally. + +Wed Feb 10 06:20:30 1999 Tim Janik <timj@gtk.org> + + * gmutex.c (g_static_private_set): invoke destroy notifier when + overwriting values, initialize new array fields with NULL. + (g_static_private_free_data): do not skip destroy notification for + data == NULL. + + * gutils.c (g_direct_equal): compare pointer values directly instead + of just their guint values which is a loosing conversion for + sizeof(gpointer)==8 systems. + (g_get_any_init): restructured code so we don't use endless loops like + while (1), which boil down to an ugly alias for goto. + strip ,.* from the real name. + +February 9, 1999 sopwith@redhat.com + + . glist.c, gnode.c, gslist.c: allocate pools of 128 items instead + of 1024 items. + +1999-02-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * configure.in, acconfig.h: Changed the test for getpwuid_r to + exclude those systems (i.e. IRIX), that set ENOSYS after the call. + Test, if pthread_getspecific is posix like or something different, + as on PCThreads. + +Sun Feb 7 21:56:00 1999 Owen Taylor <otaylor@redhat.com> + + * gmem.c (g_mem_profile): Copy all elements + of the allocations[] array, including the last. + (Pointed out by "Matthew W. Samsonoff" <mws7323@osfmail.isc.rit.edu>) + +1999-02-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * configure.in: Make the error message in case of a broken thread + system a bit more informative. + + * gutils.c (g_get_any_init): Changed the error logic again, now + only leaving the memory doubling loop, when success is reached or + when the user isn't found or when the buffer is 32k big, + additionally now getpwuid will be run, if getpwuid_r didn't work + out properly. A warning is issued however. + +Thu Feb 04 20:42:24 1999 Tor Lillqvist <tml@iki.fi> + + * glibconfig.h.win32 config.h.win32: Update GLIB_MICRO_VERSION. + +1999-02-04 Christopher Blizzard <blizzard@redhat.com> + + * glib.spec (Packager): Change my email address + +Thu Feb 4 01:45:01 PST 1999 Shawn T. Amundson <amundson@gtk.org> + + * ChangeLog + NEWS + README + configure.in + glib.spec + docs/glib-config.1: version=1.1.15 + + * Released GLib 1.1.15 + +Tue Feb 02 00:08:54 1999 Tor Lillqvist <tml@iki.fi> + + * gmessages.c (g_log_default_handler): (Win32:) Don't call + ensure_stdout_valid (which would open an unneeded console window) + if we're calling a logging function. Define ensure_stdout_valid + as an empty macro on Unix. + + * gutils.c (g_get_any_init): (Win32:) Trust HOME first if defined, + then try HOMEDRIVE and HOMEPATH. + +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 + expiration times > 1sec. + +1998-12-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * configure.in (have_threads): Changed the last pthread_cond_init + to pthread_attr_init. + +Fri Dec 18 00:03:17 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gmain.c: + (g_main_is_running): new function to check whether a main loop has been + quitted. + (g_main_new): added a gboolean argument to determine whether the loop + should be considered initially running or not. however, g_main_run () + will still reset the main loops running state to TRUE upon initial + entrance. + + * gmain.c: + (g_main_iterate): documented this function's purpose in 5 steps. + for step 2), flag sources as G_SOURCE_READY even if !dispatch and + check G_SOURCE_READY prior to (*prepare), so we don't call (*prepare) + on them multiple times. + +Thu Dec 17 23:43:47 1998 Tim Janik <timj@gtk.org> + + * gmain.c (g_main_add_poll): reordered arguments, so GPollFD* comes + first, <sigh> (sorry Snorfle, i should have let you know in the first + place). + (g_main_dispatch): stack G_HOOK_FLAG_IN_CALL flags. call source's + destructor when destroying a source. + +1998-12-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * 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. + +Wed Dec 16 23:04:26 CST 1998 Shawn T. Amundson <amundson@gtk.org> + + * Released GLib 1.1.9 + + * INSTALL: + NEWS: + README: + configure.in: + glib.spec: + docs/glib-config.1: version=1.1.9 + +Wed Dec 16 22:32:13 CST 1998 Shawn T. Amundson <amundson@gtk.org> + + * glib.h: + giounix.c: s/g_main_poll_add/g_main_remove_add/g + s/g_main_poll_remove/g_main_remove_poll/g + s/g_main_poll_add_unlocking/g_main_add_unlocking_poll/g + (from Tim Janik) + +Wed Dec 16 20:04:10 PST 1998 Manish Singh <yosh@gimp.org> + + * configure.in: check for pthread_attr_init in all cases, du4 + needs this since most of the other functions are just #defines + +Thu Dec 17 04:10:49 1998 Tim Janik <timj@gtk.org> + + * glib.h (G_LOCK_DECLARE_*): if !G_THREADS_ENABLED, eat the + trailing semicolon with a bogus function declaration, instead + of with a bogus variable declarations, so we avoid unused + variable warnings. + +Wed Dec 16 07:49:16 PST 1998 Shawn T. Amundson <amundson@gtk.org> + + * Released GLib 1.1.8 (CVS tag is GLIB_1_1_8a) + +1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * giounix.c (g_io_channel_unix_get_fd): Fixed small bug. + +1998-12-16 Joel Becker <jlbec@ocala.cs.miami.edu> + + * glib.h, gscanner.c: changed func_data to user_data in + g_scanner_scope_symbol_foreach and associated friends, because + AIX headers #define func_data. + +1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * configure.in: Fixed stupid bug, that made + g_static_mutex_lock(*mutex) not work as expected. + + * docs/glib-config.1: Updated to reflect the existence of gthread. + + * gmain.c (g_main_poll_add_unlocking): Changed + g_main_poll_add_unlocked to g_main_poll_add_unlocking to match + semantic, (indeed, main_loop must be locked, when calling this + function). Removed the unlocking from the end of that function, as + that is not right. Made a 'HOLDS' comment above the function. + +Wed Dec 16 03:16:58 1998 Tim Janik <timj@gtk.org> + + * configure.in: version bump to 1.1.8, binary age 0, interface age 0. + + * glib.h: changed g_lock() to G_LOCK(), g_unlock() to G_UNLOCK() and + g_trylock() to G_TRYLOCK(), since these are macros that expand to + nothing with --disable-threads. + changed G_LOCK_DEFINE() to G_LOCK_DECLARE() and introduced + G_LOCK_DECLARE_STATIC() to achive the results of static G_LOCK_DECLARE(). + changed semantics of g_thread_supported to g_thread_supported() so it + can be used as a function like g_module_supported(). the actuall + definition is still a macro that expands into a variable for + performance reasons though. + various indentation and coding style cleanups. + + * configure.in: added --enable-threads that defaults to yes. + + * gmutex.c: changed tests g_thread_supported to g_thread_supported (), + changed variable settings of g_thread_supported + to g_threads_got_initialized. + + garray.c: + gcache.c: + gdataset.c: + gdate.c: + ghash.c: + glist.c: + gmain.c: + gnode.c: + gslist.c: + gstring.c: + gtree.c: + gutils.c: + changed s/g_lock/G_LOCK/, s/g_unlock/G_UNLOCK/, + s/static G_LOCK_DEFINE/G_LOCK_DECLARE_STATIC/. + +Tue Dec 15 23:16:05 CST 1998 Shawn T. Amundson <amundson@gtk.org> + + * INSTALL: + NEWS: + README + configure.in: + glib.spec: + docs/glib-config.1: Incremented version + +Wed Dec 16 22:29:48 1998 Joel Becker <jlbec@ocala.cs.miami.edu> + + * configure.in: fixed the AIX thread checking. + Just an error on the wildcard. BTW, -D_THREAD_SAFE + is correct for AIX. + +Wed Dec 16 02:02:48 1998 Tim Janik <timj@gtk.org> + + * glib-config.in (lib_glib): fixed library and flag ordering for + --libs + +Tue Dec 15 17:17:46 1998 Owen Taylor <otaylor@redhat.com> + + * glib.h giounix.c giochannel.c: Use an "inheritance" + scheme for IO channel memory allocation.h + +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 + set up the parser. So use a different date that Solaris seems + to like. + +1998-12-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * configure.in: Dont complain, if --without-threads or + --with-threads=none is supplied; Test for pthread_attr_init + instead of pthread_cond_init, if threads seems to be supported by + standard glib. (CFLAGS): Use G_THREAD_CFLAGS for compiling of glib + as well. + + * glib.h, gmutex.c: Changed private to private_key to avoid + problems when compiling with under C++. + +1998-12-15 Jeff Garzik <jgarzik@Pobox.com> + + * configure.in: + bugfixes, correctly support --without-threads and friends + + * gthread/testgthread.c: corrected 64-bitness problem + +Tue Dec 15 10:40:09 1998 Owen Taylor <otaylor@redhat.com> + + * gnode.c glist.c gslist.c: Make sure all + calls to g_node_validate_allocator are within + current_allocator lock, so we have consistency + on that point. (Should not really matter, + but this way we match the comments) + + * glist.c (g_list_free_1): Removed some lines + that should never have been committed. (For + debugging) + +1998-12-11 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * gthread/gthread-nspr.c, configure.in: Added new default thread + implementation on top of the mozilla nspr library. + + * gmem.c, gmessaged.c, gthread/gthread.c, gthread/gthread-*.c: + Changed GStaticMutex and GStaticPrivate in gmem.c and gmessages.c + into GMutex and GPrivate resp. to make error reporting and use of + gmem possible in most (not all, though) gthread functions. Also + initialized the modules via new init functions. + + * configure.in: Fixed syntax bug in definition of type + GStaticMutex. + + * gthread/testgthread.c: Updated to work with nspr, but see note + there for remaining problems. + +1998-12-10 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * gmutex.c, glib.h: Now abort, if a mutex/cond/private is + allocated before the thread system is set up. + + * gthread/gthread.c (g_thread_init): Removed g_thread_try_init(), + as it is not necessary. Changed the error message. Corrected logic + for g_thread_use_default_impl. + + * gmutex.c (g_mutex_init): Keep the thread private data array + after calling g_thread_init(). + +1998-12-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * gthread/testgthread.c (new_thread): Now also working for posix + threads; (wait_thread): Now a better implementation, that does not + use 100% CPU. + + * Made the thread related code follow GNU coding standard. + + * Made a comment (HOLDS:) above each function, that expects the + given locks to be held. + + * Changed try_lock to trylock throughout. + + * glib.c: Eventually removed the #if 0'ed code for old GStaticMutex. + + * glib.c: Corrected g_trylock macro for G_DEBUG_LOCKS. + + * 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. + + * gthread/gthread-solaris.c: do not use g_log for errors, as g_log + uses these module and endless recursions might happen, just use a + plain fprintf(stderr,...). + + * 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 + of Sebastian Wilhelmi <wilhelmi@ira.uka.de>) + + - configure.in now looks for a system thread implementation. + Currently support is included for POSIX threads + and Solaris threads. The default support is built + into a separate library -lgthread. + + - The thread implementation can be modified by passing + a vector of functions g_thread_init(). + + - The default or supplied functions are used to + implement a small set of thread functions for + mutexes, condition variables, and thread-private + data. + + - GLib now uses these functions to provide thread + safety. (In the sense that all global static + data is locked... individual structures must still + be locked by the caller.) + +Sat Dec 12 19:08:59 1998 Tim Janik <timj@gtk.org> + + * configure.in: always define G_HAVE_INLINE if __cplusplus is + defined, reported by Wan-Teh Chang <wtc@netscape.com>. + +Thu Dec 10 21:49:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> + + * Released GLib 1.1.7 + + * INSTALL: + NEWS: + README: + configure.in: + glib.spec: + docs/glib-config.1: Increased version to 1.1.7 + +Wed Dec 9 22:44:44 EST 1998 Joel Becker <jlbec@ocala.cs.miami.edu> + + * Removed #define of G_COMPILED_WITH_DEBUGGING from glibconfig.h + It shouldn't be there, and it was causing a double #define. + (config.h defines it also) + +Tue Dec 8 12:18:38 CST 1998 Shawn T. Amundson <amundson@gtk.org> + + * Released GLib 1.1.6 + + * NEWS: updated + +Mon Dec 7 23:10:41 PST 1998 Manish Singh <yosh@gimp.org> + + * gmain.c: fixes to #undef HAVE_POLL case + +1998-12-02 Havoc Pennington <hp@pobox.com> + + * 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. + (g_date_set_year): Same. + +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 + 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 + flags, rather than re-checking the validity of the actual + values. This should be the correct behavior, the old way was + leftover cruft. + + * glib.h, gdate.c: Changed MDY to DMY throughout. + +Sat Nov 28 12:53:47 1998 Owen Taylor <otaylor@redhat.com> + + * Makefile.am configure.in acconfig.h giochannel.c + glib.h glist.c gmain.c gutils.c: + + - Revised GIOChannel to provide a generic virtual-function + based interface. + - Added unix fd-based GIOChannel's + - Added generic main-loop abstraction + - Added timeouts and idle functions using main-loop abstraction. + +1998-12-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * 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 + include time.h. + +Tue Dec 1 23:01:44 CST 1998 Shawn T. Amundson <amundson@gtk.org> + + * INSTALL: + NEWS: + 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/ + include time.h. + + * glib.h: removed #include <time.h>, changed time_t paramter of + 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> + + * glib.h: + * ghook.c: added g_hook_list_marshal_check() to eventually destroy + hooks after they got marshalled. + +Sun Nov 29 17:31:43 EST 1998 Jeff Garzik <jgarzik@pobox.com> + + * configure.in, Makefile.am, gmodule/Makefile.am: + Put -DFOO stuff into Makefile.am INCLUDES. + +Sun Nov 29 14:17:09 PST 1998 Manish Singh <yosh@gimp.org> + + * configure.in: put debug -DFOO stuff into CPPFLAGS, not CFLAGS, + so CFLAGS can be overridden at make time properly + +Sat Nov 28 01:23:25 1998 Tim Janik <timj@gtk.org> + + * ghash.c: implemented incremental freezing facility. + +Thu Nov 26 01:36:20 1998 Tim Janik <timj@gtk.org> + + * 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. + +Tue Nov 24 18:57:59 PST 1998 Manish Singh <yosh@gimp.org> + + * applied glib-tml-981120-0, change log appended below. + + * glibconfig.h.win32: passthrough 64-bit constants unchanged, VC++ + infers them + +Fri Nov 20 22:26:43 1998 Tor Lillqvist <tml@iki.fi> + + * glib.h: Moved MSC pragmas from glib.h to glibconfig.h.win32. + peer_offset field in WIN32 part of GIOChannel removed, need_wakeups + added. Added "extern" to __declspec(dllimport). + + * gutils.c: Initialise need_wakeups. + + * glibconfig.h.win32: Pragmas moved here. Define G_GINT64_CONSTANT. + + * gmodule/gmodule.def: Added g_module_build_path. + + * gscanner.c: (g_scanner_cur_value) Move initailisation of v + to before its use. + + * glib.def: Added g_(s)list_sort. + + * makefile.msc: A few more comments. + +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 + 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 + or source incompatibilities. It does add a member to the + GHashTable structure. + +Tue Nov 24 09:40:00 1998 Tim Janik <timj@gtk.org> + + * glib.h: removed the GListAllocator type and its g_*_allocator_*() + function variants (which weren't working anyways) in favour of a + generic GAllocator type. new functions: + g_allocator_new, g_allocator_free, g_slist_push_allocator, + g_slist_pop_allocator, g_list_push_allocator, g_list_pop_allocator, + g_node_push_allocator and g_node_pop_allocator. + + * gstring.c: removed bogus slist allocator code. + * gtree.c: maintain own list of free tree nodes and don't waste + GSLists for that, removed bogus slist allocator code. + * glist.c: use GAllocators for node allocation. + * gslist.c: use GAllocators for node allocation. + * gnode.c: use GAllocators for node allocation. + + * gdataset.c: cleanups wrt automatic initialization. + +Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org> + + * glib.h garray.[ch]: added g_array_insert_vals() to + insert elements at an arbitrary index, and + g_array_insert_val() macro. + +Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gslist.c: new function g_slist_copy() to duplicate a list with all its + data pointers. + * glist.c: new function g_list_copy. + +Sat Nov 21 14:57:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> + + * INSTALL: + NEWS: + README: + configure.in: + glib.spec: Updated to version 1.1.5 + + * Released GLib 1.1.5 + +Wed Nov 18 1998 Elliot Lee <sopwith@redhat.com> + + * gdataset.c: There was a code path into g_data_set_internal + through a function (g_datalist_id_set_full). Neither function + checked for g_dataset_init having been run, but + g_data_set_internal used the memchunk. I added + a check into g_data_set_internal so it will do the + initialization if needed. (There's probably a better way.) + +Mon Nov 16 07:48:06 1998 Tim Janik <timj@gtk.org> + + * glib.h (g_bit_nth_msf): fixed off-by-one error, so we don't waste + a loop iteration if (-1) was passed, reported by Andreas Bombe + <andreas.bombe@munich.netsurf.de>. + +Fri Nov 13 15:17:34 1998 Owen Taylor <otaylor@redhat.com> + + * glist.c gslist.c glib.h: Added g_list_sort() and + g_slist_sort() to merge sort GLists and GSLists. + Submitted by Sven Over <sven.over@ob.kamp.net> + over a year ago! + + * testglib.c: Test the new sort functions. + +Wed Nov 11 23:23:22 EST 1998 Jeff Garzik <jgarzik@pobox.com> + + * Makefile.am : INCLUDES is the right way to add to CFLAGS, not + DEFS. Also there are bugs with '+=' in makefiles. + Got rid of DEFS line by moving G_LOG_DOMAIN setting into INCLUDES. + Removed redundant -I from INCLUDES. + +Wed Nov 11 18:11:24 EST 1998 Gregory McLean <gregm@comstar.net> + + * docs/*.sgml : Batch of new documentation that should be easier + to maintain and extend. Plus generate whatever sort of doc file + you would like. I didn't change the Makefile stuff as I'm not sure + what default doc type people want. Oh and this is all DocBook format. + Enjoy! + +Tue Nov 10 17:12:45 PST 1998 Manish Singh <yosh@gimp.org> + + * configure.in: use __extension__ for long long on gcc >= 2.8 and + egcs, and provide a G_GINT64_CONSTANT wrapper so -ansi -pedantic + compiles clean. + + * glib.h: make the endian x86 asm __const__ so the compiler can do + better optimizations. Also remove the cc clobber, these shouldn't + be changing condition codes. Ditch some redundant casts. Add an + optimization for 64-bit endian conversions in x86. Use constant + wrapper for the generic method. + + * testglib.c: use constant wrappers for 64-bit constants + +1998-11-04 Phil Schwan <pschwan@cmu.edu> + + * configure.in: Added 'strncasecmp' to the list of functions to be + searched for. + * glib.h: Added a prototype for 'g_strncasecmp' + * gstrfuncs.c: (g_strncasecmp) new function modeled closely after + 'g_strcasecmp' + +Wed Nov 4 15:06:44 PST 1998 Manish Singh <yosh@gimp.org> + + * config.h.win32 (new file) + * glibconfig.h.win32 + * glib.def + * makefile.msc: applied glib-tml-981104, win32 sync + +1998-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * glib.h: + * garray.c: + (g_array_remove_index): new function for removing an entry from an + array while preserving the order + (g_array_remove_index_fast): new function for removing an entry + from an array. the order might be distorted + (g_ptr_array_remove_index_fast, g_ptr_array_remove_fast): new + functions; working similiar to the above. (they have the semantic + of the old g_ptr_array_remove[_index] functions) + (g_ptr_array_remove_index, g_ptr_array_remove): new semantic. now + the order of the elements in the array is not changed + (g_byte_array_remove_index, g_byte_array_remove_index_fast): new + functions; byte_array wrapper for g_array_remove_index[_fast] + +Sun Nov 1 23:00:18 PST 1998 Manish Singh <yosh@gimp.org> + + * glib.h + * configure.in: endian macros defined using the glibconfig.h + mechanism now + + * ghook.c: casts for GHookFunc and GHookCheckFunc to avoid warnings + +Sat Oct 31 20:14:22 PST 1998 Manish Singh <yosh@gimp.org> + + * applied glib-tml-981101-1 patch from Tor Lillqvist (ChangeLog + entry appended below) + + * testglib.c + * gstrfuncs.c + * glib.h: use G_HAVE_GINT64, since HAVE_GINT64 is gone + + * 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. + + * gutils.c: + (g_getenv): Better implementation on Win32. No loop necessary. + (g_get_any_init): Use P_tmpdir if defined as tmp directory. Don't + set home dir always to NULL on Win32. Don't use tmp directory as + last resort home directory, but return NULL if no home + directory is known (application must check). + + * makefile.msc: Better touch command, just COPYing a single file + sets the timestamp from that file, which isn't what touching should + do. + +1998-10-31 Raja R Harinath <harinath@cs.umn.edu> + + Land glib-rrh-19981025-0.patch. + * 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 + concluding "broken wctype". + (glibconfig.h): Use AC_OUTPUT_COMMANDS to put generation code into + config.status. + * glib.h: Remove a lot of tests and defines. All these have been + moved to `configure.in (glibconfig.h)'. + * gerror.c: Include <config.h>. + * 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. + added macros G_STRUCT_OFFSET(), G_STRUCT_MEMBER_P() and + G_STRUCT_MEMBER() for handling structure fields through their offsets. + (struct _GHookList): added a hook_free function member, that can be used + to free additional fields in derived hook structures. + g_hook_free(): if hook_list->hook_free != NULL, call this function prior + to freeing the hook. (this functionality should have been there in the + first place, it just got forgotten as an implementation detail). + +Wed Oct 28 00:49:32 PST 1998 Manish Singh <yosh@gimp.org> + + * glib.h: G_BREAKPOINT for alpha from Robert Wilhelm + <robert@physiol.med.tu-muenchen.de> + +Tue Oct 27 07:25:53 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gscanner.c: + (g_scanner_sync_file_offset): new function for file input. + rewind the filedescriptor to the current buffer position and blow + the file read ahead buffer. usefull for third party uses of our + filedescriptor, which hooks onto the current scanning position. + (this became neccessary with the implementation of buffered + reads). + (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. + +Tue Oct 27 00:27:31 PST 1998 Manish Singh <yosh@gimp.org> + + * glib.h: get rid of duplicate #g_htonl and friends in the + NATIVE_WIN32 part + +Mon Oct 26 22:42:01 PST 1998 Manish Singh <yosh@gimp.org> + + * glibconfig.h.win32 + * gutils.c + * makefile.msc: win32 patch from Tor Lillqvist (glib-tml-981027-0), + fixes some minor win32 buglets + +Mon Oct 26 22:12:03 PST 1998 Manish Singh <yosh@gimp.org> + + * glib.h: reimplemented the endian stuff, using inline asm + for x86. #define g_htonl and friends. + + * testglib.c: new tests for the endian stuff + + * configure.in: care for AIX in gmodule linker flags test (from + Joel Becker <jlbec@raleigh.ibm.com>). Check $host_os for linux + instead of existance of /usr/include/linux + + * gutils.c: buh-bye evil warning. Thou hast been #ifdef'd out + of thine existance! + +Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org> + + * glib.h: removed dummy structure definitions for struct _GCache, + _GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk. + + * gutils.c: implement glib's inline functions _after_ all include + statements have been processed. + removed Tor's MAXPATHLEN check since there already was one supplied + further down in this file. + (LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32, + since lcc maybe used on other platforms as well. why in hell is this + stuff required? + (g_get_any_init): for windows, if the user name is supplied, use it as + realname also. + in general, if there is no homedir specified, use the tmpdir that + we already figured. + + * gtimer.c (g_timer_elapsed): changed a g_assert() statement to + g_return_if_fail(). + + * applied glib-tml-981020-0.patch for WIN32 portability, added some + comments and g_return_if_fail() statements, minor indentation fixes. + ChangeLog entry from Tor Lillqvist is appended. + + * glib.h (struct dirent): use lower case structure members. + + * glib.h: + * makefile.lcc: + * makefile.msc: + s/COMPILING_GLIB/GLIB_COMPILATION/ + +1998-10-20: Tor Lillqvist <tml@iki.fi> + + * README.win32 glib.def gmodule.def + * glibconfig.h.win32 gmodule/gmoduleconf.h.win32: + New files for the Windows port. The .def files list exported + symbols for the Microsoft linker and compatibles. + + * configure.in: + Added checks for some platform-dependent headers: pwd.h sys/param.h + sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat. + + * gerror.c: + Conditionalized inclusion of system-dependent headers. Changes + for Windows: no gdb to do a stack trace. Just call abort(). + + * glib.h: + Changes for Windows: + + Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for + platform-dependent file name syntax elements. Added macros + G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for + platform-dependent search path syntax conventions. + + Added pragmas for Microsoft C to make it more pedantic. + + Marked GLib's global variables for export from DLL. + + Added the function g_strescape that escapes backslashes. + + Added functions g_path_is_absolute and g_path_skip_root to + handle platform-dependent file name syntax. + + Added the function g_getenv that expands environment variables + that contain references to other environment variables, as is + typical on Windows NT. + + Added the GIOChannel structure which is used to encapsulate the + IPC mechanism used by the GIMP's plug-ins, and possibly other + things later. On Unix a GIOChannel encapsulates just a file + descriptor. On Windows it contains a file handle from _pipe() and a + few other things related to the implementation of gdk_input_add + and GIMP plug-in communication. Subject to change. + + Removed duplicate declarations of the version variables. + + For the Microsoft compiler, declare own implementation of + ftruncate and the <dirent.h> functions. + + * gmem.c: + Define a symbolic name for the profiling table size. + + * gmessages.c: + Conditionalized inclusion of unistd.h. On Windows, output using + stdio to stdout. + + * gscanner.c: + 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. + + * gtimer.c: + Conditionalized inclusion of unistd.h and sys/time.h. Added + implementations for Windows. + + * gutils.c: + Conditionalized inclusion of platform-dependent headers. Use + the platform-independent file name syntax macros. + Conditionalize code on platform-dependent features. Added the + functions g_path_is_absolute g_path_skip_root and g_getenv. + Added the GIOChannel-related functions. Added + compiler-dependent Unix compatibility functions for Windows. + + * 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 + from gtk-config.1 in gtk + + * configure.in: + * Makefile.am: + * sanity_check: added in docs directory, change rule 'release' + to 'snapshot' and created a new 'release' rule for doing the + distribution. Added in a 'sanity' rule. + + * NEWS: + * 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_get_char): no more characters are available if read() returns + anything less than 1, not only on 0 return. + + * 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(). + (g_strjoinv): renamed from g_str_array_joinv(), string array is + now passed as last parameter. removed `const' qualifier from string + array pointer (again). + (g_strjoin): new function from sopwith to concatenate strings with + an additional seperator. + (g_strfreev): renamed from g_str_array_free. + +Sat Oct 24 22:23:04 PDT 1998 Manish Singh <yosh@gimp.org> + + * gnode.c: small fix to g_node_children_foreach to make it work right. + From Paco Moya <paco@cadnotebk17.eecs.berkeley.edu> + +Wed Oct 21 19:22:58 1998 Tim Janik <timj@gtk.org> + + * configure.in (G_MODULE_HAVE_DLERROR): reverted part of the changes + from Sebastian Wilhelmi (1998-10-20). don't specify a specific loading + behaviour (i.e. RTLD_NOW) when we are not sure whether it is supplied. + changed the return value from (!f2 && f1) to (!f2 || f1) so we default + to not needing an underscore. reverted the extra plugin.c building, + because .lo files are not ELF libraries, this can't work. This needs + further investigation on Solaris... + +Wed Oct 21 17:03:05 1998 Tim Janik <timj@gtk.org> + + * 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 + the in_place arguments were skipped, the caller is supposed to pass a + g_strdup()ed string if he wants to retrive a new copy. indentation and + coding style fixups. added some g_return_if_fail() statements. + string array functions are prefixed with g_str_array_. + (g_strdelimit): return the modified string like all other g_str* + functions, that operate in place. + (g_strchug): renamed from g_str_chug(), removed in_place argument. + (g_strchomp): renamed from g_str_chomp(), removed in_place argument. + (g_strstrip): renamed from g_str_strip(), removed in_place argument. + (g_str_array_join): renamed from g_strconcatv(), since it actually + operates on a string array and has totaly different semantics from + g_strconcat(). check for separator != NULL, don't segfault if the first + string is NULL. removed the `const' from the string array that's passed, + so users can operate on gchar** string arrays. + (g_str_array_split): renamed from g_str_split() because we actually + produce a string array. reimplemented this function for efficiency. + removed macro aliases g_str_joinv and g_str_join. + +1998-10-20 Elliot Lee <sopwith@redhat.com> + + * glib.h, gstrfuncs.c: Move string join/split/free routines from + libgnome/gnome-string, rename, and add g_str_chug. + +1998-10-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * configure.in: made the check for needed _ in module's func-names + work on solaris. (G_MODULE_NEED_USCORE must be set outside + AC_CACHE_VAL, dlopen(0,0) refused to work on solaris). + +Tue Oct 20 03:32:58 PDT 1998 Manish Singh <yosh@gimp.org> + + * configure.in + * acconfig.h: added test for endianness + + * glib.h: #define endian macros for system and some conversions + between byte order + +Thu Oct 8 06:47:27 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gdataset.c: removed functions g_dataset_id_set_destroy and + g_datalist_id_set_destroy and macros g_dataset_set_destroy and + g_datalist_set_destroy. + added new functions g_dataset_id_remove_no_notify and + g_datalist_id_remove_no_notify plus associated macros + g_dataset_remove_no_notify and g_datalist_remove_no_notify, which + will remove a certain data portion without invokation of its destroy + notifier, this should only be used in very controled circumstances. + +Wed Oct 7 05:31:24 1998 Tim Janik <timj@gtk.org> + + * glib.h: + removed the #pragma } statement after extern "C" {. use + (c-set-offset 'inextern-lang 0) to fixup emacs cc-mode indentation. + + * glib.h: + * ghook.c: API and code cleanups. changed the G_HOOK_ACTIVE and + G_HOOK_IN_CALL enum vals to G_HOOK_FLAG_ACTIVE and G_HOOK_FLAG_IN_CALL. + changed the G_HOOK_IS_ACTIVE() and G_HOOK_IS_IN_CALL() macros to + G_HOOK_ACTIVE() and G_HOOK_IN_CALL(). + fixed the g_hook_find* functions, so they iterate over non-active + hooks as well. + (g_hook_first_valid): + (g_hook_next_valid): added an extra argument gboolean may_be_in_call, + which indicates whether G_HOOK_IN_CALL() hooks are considered valid + or not. these two functions are meant as iterators for the hook list + invocation, so they need to a) provide functionality to implement + may_recurse bahaviour and b) only walk active hooks. + +Tue Oct 6 14:29:47 1998 Tim Janik <timj@gtk.org> + + * gmem.c (g_malloc0): fixed memory offsett when ENABLE_MEM_CHECK is + defined and ENABLE_MEM_PROFILE is not (patch from Martin Pool + <mbp@wistful.humbug.org.au>). + +Sat Oct 3 01:18:10 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * ghook.c: + (g_hook_list_invoke): + (g_hook_list_invoke): + (g_hook_list_marshal): properly handle the first valid hook to call, + it maybe IN_CALL already. + (g_hook_list_marshal): minor name change. + +Fri Oct 2 23:21:21 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * ghook.c: renamed GHook.id to GHook.hook_id so we don't get troubles + with ObjC which reserves "id" as a keyword (Raja R Harinath + <harinath@cs.umn.edu>). + +Wed Sep 30 10:53:03 1998 Tim Janik <timj@gtk.org> + + * Makefile.am: added ghook.c. + + * glib.h: + * ghook.c: generic callback maintenance functions. + + * glib.h: define G_GNUC_UNUSED. + +Fri Sep 25 00:04:37 1998 Tim Janik <timj@gtk.org> + + * configure.in: version bump to 1.1.4, binary age 0, interface age 0. + + * glib.h (struct _GScanner): dumped peeked_char and text_len in favour + of *text_end and *buffer for buffered read()s. + + * gscanner.c: changed peeking and retrival of next character so we + have buffered reads. fixed minor bug with number parsing error + reporting. made some static!!! variables local ones (why did we use + static temporary variables in the lowlevel tokenization code anyways?). + +Mon Sep 21 23:23:10 CDT 1998 Shawn T. Amundson <amundson@gtk.org> + + * Released GLib 1.1.3 + +Mon Sep 21 07:43:13 1998 Tim Janik <timj@gtk.org> + + * glib.h: added g_renew() which works as g_new() for g_realloc(). + +Mon Sep 21 02:22:12 1998 Tim Janik <timj@gtk.org> + + * NEWS file update for upcoming release of GLib + GModule + version 1.1.3, binary age 0, interface age 0. (GModule uses + the same version numbers as GLib.) + + * glib.h: swap the inclusion of of float.h and limits.h to work + around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by + Per Abrahamsen <abraham@dina.kvl.dk>). + + * glib.h: + * gscanner.c: renamed the GValue union to GTokenValue, this should + not affect source compatibility in most cases. + + * ghash.c: added some g_return_if_fail() statements. make + g_hash_table_lookup_node() an inline function so we save an extra + function invokation on lookups. + +Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com> + + * ltmain.sh: Patch to libtool-1.2b to make --disable-static + work. + +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). + Returns the number of elements deleted. + +Fri Sep 18 11:31:50 PDT 1998 Manish Singh <yosh@gimp.org> + + * glib.h + * gstrfuncs.c: added g_memdup implementation + +Fri Sep 18 18:46:14 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gdataset.c: make the datalists a safe type (not using a generic + gpointer) by expecting a GData* argument in the g_datalist functions. + provide g_dataset_foreach() and g_datalist_foreach() functions that + allow a GDataForeachFunc function to walk the data lists. + (g_dataset_destroy_internal): made this function truely reentrant (i.e. + can be called from within destroy notifiers as well). + the *_foreach functions are _not_ reentrant (unless all the other + dataset and datalist functions). + +Fri Sep 18 03:41:20 1998 Tim Janik <timj@gtk.org> + + * gtree.c (g_tree_new): check for key_compare_func != NULL (reported + by Michal Kara). + +Thu Sep 17 18:55:46 PDT 1998 Manish Singh <yosh@gimp.org> + + * config.h.in: removed from repository + + * install-sh + * missing + * mkinstalldirs: updated to latest automake version + +Thu Sep 17 06:36:25 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gdataset.c: implemented g_datalist_* along the lines of g_dataset, + but operates on an opaque gpointer *datalist; pointer, e.g. for the + implementation of GtkObject named data. + we cache a certain portion of the already freed data entries now, to + gain a slight performance improve with data reallocation. + +Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com> + + * Makefile.am glib-config.in l*: Update to libtool-1.2b, + change library versioning scheme to drop LT_RELEASE + from the -l line, while keeping it in the soname. + +Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org> + + * glib.h: explicitely include the prototypes for inline functions + to cure gcc warnings for -Wmissing-prototypes. + +Wed Sep 9 02:52:04 PDT 1998 Manish Singh <yosh@gimp.org> + + * configure.in: added -posix check for NeXTStep + +Tue Sep 8 05:04:06 1998 Tim Janik <timj@gtk.org> + + * glib.h: abandon the use of ATEXIT(), we keep the fallback + macros for backwards compatibility. people ought to use g_atexit(). + + * gutils.c (g_atexit): new function to take over the implementation + of ATEXIT. this function is guarranteed to succeed, similar to + g_malloc(). + +Mon Sep 7 20:07:38 PDT 1998 Manish Singh <yosh@gimp.org> + + * configure.in: comment the -std1 check and save LIBS properly + +Mon Sep 7 07:53:21 1998 Tim Janik <timj@gtk.org> + + * configure.in: check for all three inline keywords individually. + + * 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'. + 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 + prototypes if no inlinig can be performed. we special case most of the + stuff, so inline functions can have a normal implementation by defining + G_INLINE_FUNC to extern and G_CAN_INLINE to 1. + + * ltconfig: (compiler PIC flag test): special case linux for non + aout systems to honour lcc's position independant code (cases + "linux*aout)" and "linux*)" got added). (this needs to go into + libtool which does an advanced test, checking for __LCC__). + + * autogen.sh: take $CC=lcc into account by invoking automake with + --include-deps so lcc isn't scared by gcc's auto-dependancy + generation code. care about $ACLOCAL_FLAGS. optionally feature + autoheader. + + * minor fixups in other places to cure some of lcc's warnings. + +Sun Sep 6 19:08:53 PDT 1998 Manish Singh <yosh@gimp.org> + + * configure.in: added -std1 check for ANSI compliance (from gtk) + +Sun Sep 6 12:31:50 PDT 1998 Manish Singh <yosh@gimp.org> + + * glib.h: provide proper ATEXIT behavior on NeXTStep by !atexit + +Sat Sep 5 18:03:36 1998 Tom Tromey <tromey@cygnus.com> + + * gutils.c (GLIB_INLINE): Define. + * glib.h (GLIB_INLINE): New define. + (g_bit_nth_msf): Use it. Also, add prototype. + (g_bit_storage): Likewise. + (g_bit_storage): Likewise. + +Sat Sep 5 04:40:02 1998 Tim Janik <timj@gtk.org> + + * 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. + + * gmem.c: new function g_mem_chunk_alloc0() which will initialize + a memory area allocated with g_mem_chunk_alloc() with 0's. + +Wed Sep 2 19:13:28 1998 Owen Taylor <otaylor@redhat.com> + + * garray.c glib.h (g_array_[ap/pre]pend_vals): make + data argument const. + +Wed Aug 26 06:32:40 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gstrfuncs.c: new function g_strnfill() to return a new string + of specified length, filled with a specific character. + +Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu> + + * testglib.c (main): Update the array tests. Reduce the number of + iterations for the prepend test from 10000 to 100 since it is + O(n^2) and was taking longer than I would like to wait. + + * garray.c: I've worked on the GArray interface, mostly. It was + seriously broken before and I hate to do it, but this is going to + break some code. It is important to do this now, because more and + more people are starting to use glib and the interface was both + broken and inconsistent. First, rename the _truncate functions of + both the GArray and GPtrArray classes to _set_size, since this + function can also be used to extend the arrays. GArray now + accepts two more initialization arguments: clear and element_size. + Instead of providing the type to each access function, the array + now stores the element size. Clear, if set, causes the library to + zero element's memory as the array expands. The major broken-ness + here was that array->len was in bytes, not elements. Now, since + the array knows its element size, array->len is correct and I have + removed the g_array_length macro. The only macro which now + accepts the type as an argument is g_array_index, which casts the + element to the right type--this interface does not change. The + append and prepend functions simply need the types removed. + g_ptr_array_remove_index now returns the removed element. + + * gprimes.c (g_spaced_primes_closest): Move this function out of + ghash.c and rename it from g_hash_closest_prime. Fix the primes + so that they are actually prime (they weren't all -- isn't that + nice?). + +Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gstring.c: + * gstrfuncs.c: + (g_vsprintf): removed this function which was not publically + exported in glib.h. to export it, it should have been named + differently in the first place, since its semantics differ from + vsprintf(). apart from that, it was a possible cause for + problems since it worked on a previously allocated memory area and + was used in a lot places of glib. exporting it would have been a + guararant for problems with threaded programs. + (g_printf_string_upper_bound): exported this function to return + a string size, guarranteed to be big enough to hold the fully + expanded format+args string. added 'q', 'L' and 'll' flag handling. + in fact, the newly allocated area is in most cases much bigger than + required. + (g_strdup_vprintf()): new function returning a newly allocated string + containing the contents of *format and associated args (size is + calculated with g_printf_string_upper_bound()). + (g_strdup_printf): new function which wraps g_strdup_vprintf(). + + * configure.in: check for va_copy() or __va_copy() alternatively. + check whether va_lists can be copyied by value. + + * glib.h: provide a definition for G_VA_COPY. + + * glib.h: + * gmessages.c: + (g_logv): + (g_vsnprintf): + pass va_lists by value, not by reference, since this causes problems + on platforms that implement va_list as as arrays. internaly, use + G_VA_COPY (new_arg, org_arg); va_end (new_arg); to produce a second + va_list variable, if multiple passes are required. changed all + callers. + + * glib.h: + * gerror.h: + renamed g_debug() to g_on_error_query(), cleaned up a bit. + renamed g_stack_trace() to g_on_error_stack_trace() since both + functions cluttered different namespaces. + there is an appropriate comment in glib.h now that explains the + unix and gdb specific dependencies of both functions. + removed g_attach_process(). + g_on_error_stack_trace() should probably be handled with caution, + i've seem several different linux versions (2.0.x) become unstable + after invokation of this function. + +1998-08-18: Elliot Lee <sopwith@redhat.com> + + * In gmem.c, add the ability to exclude memory chunks from the + memory profiling information. + +Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> + + * glib.h + * gstrfuncs.c: added g_strndup + +Tue Aug 18 04:40:17 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gmessages.c: new function g_log_set_always_fatal() to set an + additional fatal_mask for log levels that are considered to be fatal + globally (required by gtk). since this mask is not domain-associated, + it is restricted to the log levels, introduced by glib itself. + + * gmem.c: + * grel.c: + * gtree.c (g_tree_node_check): + don't use g_print() calls for informational/debugging output, + but log all this stuff through g_log() with G_LOG_LEVEL_INFO. + libraries shouldn't use printf(), g_print() or g_printerr() at all. + +Tue Aug 18 02:46:44 1998 Tim Janik <timj@gtk.org> + + + * glib.h (__STRICT_ANSI__): if __STRICT_ANSI__ is defined, make + `inline' a noop, since strict ANSI rules don't permit `inline'. + +Mon Aug 17 15:21:42 1998 Tim Janik <timj@gtk.org> + + * grel.c: made private functions static. + +Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson <amundson@gtk.org> + + * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to + EXTRA_DIST + * glib.spec: version = 1.1.3 + +Mon Aug 17 01:46:14 1998 Tim Janik <timj@gtk.org> + + * glib.m4: feature an extra MODULES parameter, so glib-config can + be invoked with the "gmodule" argument. + + * glib.h: changed the log level to G_LOG_LEVEL_CRITICAL for all + g_return*_if_fail statements, and made them issue a message + like "assertion `%s' failed". + + * gmessages.c (g_logv): ugh, don't pass log_domain as NULL to + g_log_find_domain. + +Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org> + + * version bump to 1.1.3, binary age 0, interface age 0. + + * glib.h: be nice to platforms that don't have gint64 and don't + issue #warning on every compilation. since glib doesn't require + gint64 itself, packages that need gint64 should test for this + themselves. + + * glib.h: + * gutils.c: added a new function g_vsnprintf(). + +Sun Aug 16 Elliot Lee + + glib.h: #error out if we don't recognize the SIZEOF_VOID_P + #warning if no gint64 + +Fri Aug 14 16:41:53 1998 Tim Janik <timj@gtk.org> + + * glib.h: added static inline functions for bit mask tests: + g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage. + +Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gmessages.c: + revised the message handling system, which is now based on a new + mechanism g_log*. most of the assertment macros got adapted to + feature the new g_log() call with an additional specification of + the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN + is undefined upon the includion of glib.h, it'll be defined with a + value of (NULL) and thus preserves the original bahaviour for + warning and error messages. the message handler setting functions + for g_warning, g_error and g_message are only provided for backwards + compatibility and might get removed somewhen. + + * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain + to "GLib" upon compilation. we currently have to add this definition + to the DEFS variable. + * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start + of this file currently, since automake doesn't support per target + _CFLAGS yet. + + * glib.h: changed some gints to gbooleans, made a few const corrections, + removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some + in other required places. + + * gnode.c: + (g_node_prepend): + (g_node_insert_before): + (g_node_insert): + (g_node_append_data): + (g_node_prepend_data): + (g_node_insert_data_before): + (g_node_insert_data): + (g_node_append): + return (node), so these macros/functions can be usefully chained with + g_node_new(). + +Mon Aug 10 17:56:11 PDT 1998 Manish Singh <yosh@gimp.org> + + * glib.h: it's GTime now, and it's back! + +Mon Aug 10 02:17:19 1998 Tim Janik <timj@gtk.org> + + * Makefile.am: minor hack to cause SUBDIRS (gmodule) to be build + last. we do this by making all-recursive-am depend on all-am. + +Sun Aug 9 15:56:11 1998 Tim Janik <timj@gtk.org> + + * configure.in: added GModule checks. generate files in gmodule/. + * glib-config.in: support library specifications `glib' and `gmodule'. + * Makefile.am: feature the gmodule/ subdir. + +Wed Aug 5 10:04:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org> + + * Released GLib 1.1.2 + +Wed Aug 05 01:15:36 1998 George Lebl <jirka@5z.com> + + * testglib.c: fix 64-bitness in g_prints, sizeof doesn't + seem to return int so I cast it for printing, probably + just cosmetic + +Tue Aug 4 19:54:06 PDT 1998 Shawn T. Amundson <amundson@gkt.org> + + * Released GLib 1.1.1 + +Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org> + + * configure.in: version bump to 1.1.1, binary age 1, interface age 0. + * NEWS: updates. + * README: updates. + * INSTALL: updates and fixes. + * COPYING: include the GNU LGPL, rather than shipping an empty file. + * AUTHORS: listed original authors here, and added people who made + significant improvements to glib. + + * glib.h: + * gutils.c: implement g_get_current_dir() which returns a newly + allocated string, instead of a g_getcwd() variant that operates + on a static buffer. + export glib_interface_age and glib_binary_age. + as a convenience, macro definitions have been added for + g_node_insert_data, g_node_insert_data_before, g_node_append_data and + g_node_prepend_data. + + * testglib.c: minor cleanups, print current dir. + +Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gnode.c: change order of gpointer data; field in struct _GNode to + be partly binary compatible with GList and GSList. + +1998-08-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * garray.c (g_ptr_array_remove_index): bugfix: index check for + array has been wrong. + +Fri Jul 31 22:17:05 1998 Tim Janik <timj@gtk.org> + + * testglib.c (g_node_test): added a GNode test. + +Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org> + + * Makefile.am: compile gnode.c. + + * glib.h: + * gnode.c: added implementation of n-way trees. + + * gtree.c (g_tree_traverse): added a warning to the switch() statement + which says that G_LEVEL_ORDER is not implemented. + +Mon Jul 27 00:17:30 CDT 1998 Shawn T. Amundson <amundson@gtk.org> + + * Released GLib 1.1.0 + +Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org> + + * glib.h: #if 0'ed out the GTime definition, until it is definitively + needed. #if 0'ed out the g_getcwd() version, because it is the wrong + implementation. + +Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu> + + * glib.h: gtime changed to g_time. gtime is used in + /usr/include/time.h in NetBSD, causing multiple headaches. + If this isn't the right way of fixing it.... ;) + +Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gscanner.c: new functions to make a scanner scope sensitive wrt + symbol lookups. + g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol, + g_scanner_scope_remove_symbol, g_scanner_scope_add_symbol and + g_scanner_set_scope. + g_scanner_add_symbol, g_scanner_remove_symbol and + g_scanner_foreach_symbol are now aliases for scope 0. + +Mon Jul 20 23:05:34 1998 George Lebl <jirka@5z.com> + + * glib.h: typo fixed for alphas for gint64 + +Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gutils.c: new fuction g_dirname() which returns a newlly + allocated string. + +Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gutils.h: added a bunch of utility/wrapper functions: + g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(), + g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname(). + + * gutils.c: removed all g_str* functions. + * gstrfuncs.c: moved the bunch g_str* functions from gutils.c in this + place. this file shall never include <unistd.h> to avoid clashes for + some of the g_str* functions on some OSes. + +Fri Jul 10 00:29:03 EEST 1998 Lauri Alanko <nether@gimp.org> + + * glib.h: + * ghash.c: Renamed g_hash_table_lookup_full to + g_hash_table_lookup_extended to conform with naming conventions. + +Tue Jul 7 03:18:58 EEST 1998 Lauri Alanko <nether@gimp.org> + + * glib.h: + * ghash.c: Generic cleanup, added a function: + (g_hash_table_lookup_full): Return whether the lookup succeeded, + and also retrieve the key and value. This allows one to + distinguish between failed lookup and finding a NULL, and also + allows one to free a key in the hash. + +Mon Jul 6 10:12:05 PDT 1998 Manish Singh <yosh@gimp.org> + + * ltconfig: fix for properly detecting shared lib support on + SunPro cc (taken from libtool 1.2.a) + +Sat Jul 4 13:38:52 PDT 1998 Manish Singh <yosh@gimp.org> + + * glib.h: added g_array_length + +Tue Jun 30 11:58:25 1998 Tim Janik <timj@gtk.org> + + * gscanner.c (g_scanner_unexp_token): take symbol_2_token into + account. react on valid/invalid string pairs. + +Sat Jun 27 21:55:46 PDT 1998 Manish Singh <yosh@gimp.org> + + * glib.m4: ftp.glib.org -> ftp.gtk.org, since glib.org isn't + ours. ;) + +Fri Jun 19 03:11:02 1998 Tim Janik <timj@gtk.org> + + * gdataset.c: removed g_dataset_try_key, g_dataset_force_id and + g_dataset_retrive_key in favour of GQuarks. + a GQuark is an numeric id wich is associated with a certain string. + (g_quark_try_string): try to get the quark associated with this string, + if the lookup failed return 0. + (g_quark_from_string): get the associated quark for a string, if there + isn't currently a GQuark associated with this string, then allocate a + new quark and return that. + (g_quark_from_static_string): like the above function, but the string + isn't strdup()ed to save memory. + (g_quark_to_string): get the string that is associated with a certain + GQuark. + + * gdataset.c (g_dataset_id_set_data_full): invoke the destroy function + _after_ the new data has been setup. + +Thu Jun 18 02:35:21 1998 Owen Taylor <otaylor@gtk.org> + + * glib.h: Changed messages for g_return_[val]_if_fail to + be somewhat more clear: assertion "blah" failed. + +1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx> + + * testglib.c (main): Use GINT_TO_POINTER casts to remove compiler + warnings. + + * grel.c: #include <string.h> + +Fri Jun 12 15:39:06 1998 Tim Janik <timj@gtk.org> + + * glib.h (GScanner): cleanups of the structure fields (binary + incompatible). + +Fri Jun 12 00:39:28 1998 Josh MacDonald <jmacd@icw.EECS.Berkeley.EDU> + + * glib.h: add new hash and equal functions g_int_*. complement + g_direct_hash with g_direct_equal. + + * grel.c: new file, GRelations implement tuples of N-N mappings. + A comment in glib.h briefly describes the interface. + + * ghash.c: new function, g_hash_table_size + + * glib.h: new typedefs, gsize, gssize, gtime. + + * garray.c: new functions implementing a simplified GArray. This + GPtrArray is an array of gpointers and has functions to add and + remove elements, much like java.lang.Vector. + + * garray.c: new functions for the single-byte special case of + GArray. The functions g_byte_array* operate on arrays of bytes. + Internally, a GArray is used. + + * testglib.c: tests for g_ptr_array, g_byte_array, and g_relation... + +1998-06-11 Federico Mena Quintero <federico@nuclecu.unam.mx> + + * gdataset.c: #include <string.h> + +Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org> + + * glib.h: + * gdataset.c: new function g_dataset_retrive_key. adjusted prealloc + sizes, to take up less space on initial allocation. + +1998-06-10 Raja R Harinath <harinath@cs.umn.edu> + + * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2, + the version from which glib's libtool forked. Needed for people + who use post-1.2 alphas of libtool. + * configure.in (enable_mem_check, enable_mem_profile): Replace + `echo -n' with AC_MSG_CHECKING. + (fd_set): Explain test for `fd_set' better. + +Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org> + + * Makefile.am glib.m4 configure.in: + + Moved out from GTK+; added AM_PATH_GLIB macro. + +Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org> + + * glib.h: renamed g_const_pointer => gconstpointer + +Tue Jun 9 17:47:33 1998 Owen Taylor <otaylor@gtk.org> + + * glib.h: Remove #error - HP/UX. + +Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org> + [ Combination of: + gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>) + gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ] + + * glib.h ghash.c gstring.c gdataset.c gutils.c: + - Added new typedef g_const_pointer; expunged all incorrect + uses of 'const gpointer'. + - Fixed up warnings that that created, + - Changed GHashFunc and GCompareFunc to take g_const_pointer + arguments. (Necessary, but will cause warnings in existing + code until fixed) + - Added other new const in harmless positions. + +Mon Jun 8 01:06:47 1998 Tim Janik <timj@gtk.org> + + * glib.h: added enum-helper macros for code generation. + added G_BREAKPOINT(). + +Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org> + + * gmem.c: commented out MEM_PROFILE and MEM_CHECK, causing weird + problems + +Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org> + + * glib.h (g_chunk_new0): convenience macro, for allocating small chunks + like g_chunk_new() with additional 0 initialization. + +Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org> + + * ghash.c (g_hash_table_insert): wrote a comment describing why + a hash node's key should not also get replaced when overriding + previous entries. + +Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org> + + * glib.h (g_string_sized_new): new function to controll the preallocated + size of a GString. + + * glib.h (g_strreversed): new function to reverse a string. + +Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org> +(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch) + + * gutils.c: Restored a missing prototype for g_vsprintf. + +Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org> + + * glib.h: conditionally define NULL, FALSE and TRUE. + (g_mem_chunk_create): new convenience macro as a short hand for + g_mem_chunk_new(). + (g_chunk_free): new convenience macro to be consistent with g_chunk_new. + +Tue, 19 May 1998 09:00:02 +0200 Paolo Molaro <lupus@debian.org> + + * gcompletion.c: generic functions for com<TAB>pletion... + +Sun May 17 10:48:27 1998 Tim Janik <timj@gtk.org> + + * gscanner.c (g_scanner_unexp_token): provide usefull default + specifications for identifier_spec and symbol_spec. + + * glib.h: new functions g_slist_nth_data and g_list_nth_data to return + the data of the nth element in the list. + +Fri May 15 22:31:49 1998 Tim Janik <timj@gtk.org> + + * gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) + that for some reason didn't produce a compiler warning on my machine + (is va_end defined to nothing for i386?). + +Fri May 15 12:32:08 1998 rodo <doulik@karlin.mff.cuni.cz> + + * gscanner.c: replaced some snprintf with g_snprintf + +Fri May 15 00:56:59 1998 Tim Janik <timj@gtk.org> + + * glib.h: further support for gcc function attributes: G_GNUC_FORMAT, + G_GNUC_NORETURN and G_GNUC_CONST. + + * gscanner.c (g_scanner_stat_mode): changed stat() to lstat(). + (g_scanner_msg_handler): "\n" at end of line! + (g_scanner_foreach_symbol): new function to iterate over the symbol + table (GScanner does value-wrapping). + +Thu May 14 04:14:12 1998 Tim Janik <timj@gtk.org> + + * glib.h: typedef gint gboolean; + this is needed to provide portability with big-endian platforms (e.g. + try sizeof(bool) for c++ on big-endians - it's 4). + this is also needed to maintain some_union.d_gint==some_union.d_gboolean. + plus, gint to gboolean casts and vice versa need to be possible without + loss. + +Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org> + + * glib/glib.h: Added macros G[U]INT_TO_POINTER() and + GPOINTER_TO_[U]INT for storing small integers integers + inside pointers. + + * glib/testglib.c: Print sizeof() results + as g_print("%ld", (glong)sizeof(foo)), to deal with + size_t being long on Alpha's. + +Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org> + (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch) + + * glib.h gstring.c gmessages.c: Added some missing + const to arguments. + + * gutils.c (g_strsignal.c): Added missing return statements. + +Mon May 11 21:11:54 1998 Owen Taylor <otaylor@gtk.org> + + * gutils.c gmessages.c: Moved g_error, g_warning, g_message and + g_print from gutils.c to new file gmessages.c, to avoid having to + include <unistd.h> in gutils.c which was causing problems for the + g_strsignal implementation on FreeBSD boxes. + +Mon May 11 09:53:43 1998 Tim Janik <timj@gtk.org> + + * configure.in: preserve automake CFLAGS. + + * Makefile.am: fully rename the created library to libglib-1.1.la. + this means we need to change certain portions of the Makefile.am on + major/minor version bumps. + + * ltmain.sh: the -release option is not required anymore. + + * glib.h: provide G_GNUC_FUNCTION and G_GNUC_PRETTY_FUNCTION to + avoid conditionals. unconditionally define NULL, TRUE, FALSE, MAX, + MIN, ABS and CLAMP, these macros might be screwed from other headers. + +Mon May 11 01:44:10 1998 Tim Janik <timj@gtk.org> + + * gdataset.c: new file, gdatasets implement the object data + mechanism from GtkObject. a generic data pointer is associated with + a certain location and a key id. + +Sat May 9 20:08:12 1998 Owen Taylor <otaylor@gtk.org> + + * glib/gmem.c: Experimentally restore GMemChunk + to its primeval state - where mem areas are + freed incrementally instead of searching the tree + every time a mem area is completely empty. Also, + always keep one mem chunk around. (Reduced calls + to malloc() a lot, but doesn't really improve + performance significiantly) + +Thu May 7 08:17:28 1998 Tim Janik <timj@gtk.org> + + * glib.h (G_GNUC_PRINTF): + (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument + checking of gcc. + + * gstring.c: const corrections, string!=NULL checks at function entry. + (g_string_down): new function for tolower(3) conversion. + (g_string_up): new function for toupper(3) conversion. + + * gutils.c: const corrections. + (g_strdown): g_string_down() counterpart. + (g_strup): g_string_up() counterpart. + + * gscanner.c (g_scanner_unexp_token): + (g_scanner_error): + (g_scanner_warn): new functions to let a scanner put out warnings + or errors, especially to react on unexpected tokens. + + * gslist.c: + (g_slist_index): find out about about the position of a + certain data pointer. + (g_slist_position): find out about about the position of a + certain node. + + * glist.c: + (g_list_index): find out about about the position of a + certain data pointer. + +Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org> + + * ltmain.sh: added a new commandline flag -postfix similar to -release, + but will immediately change the library name. + + * Makefile.am: specify -postfix and -version-info + + * configure.in: version bump to 1.1.0. added GLIB_INTERFACE_AGE and + GLIB_BINARY_AGE. calculate LT_* variables for libtool. + +Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org> + + * gutils.c: (g_strcasecmp). Check for isupper before + taking tolower, and account for macroized tolower. + + * gutils.c (g_error): Check for recursion. + +1998-04-27 Elliot Lee <sopwith@cuc.ml.org> + + * glist.c (g_list_position): New function to find the position of + a link in a list - should be the inverse of g_list_nth(), but + haven't tested it so poof. + +Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org> + + * gstring.c : Check arguments more carefully, + (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de) + +Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu> + + * gutils.c (g_direct_compare): Removed, because that's what + a NULL comparison function means. And it wasn't 64 bit safe. + +Mon Apr 6 18:43:25 1998 Tim Janik <timj@gtk.org> + + * gscanner.c (g_scanner_get_token_ll): fixed a bug that caused floats + of the format ".xxx" to be parsed as "xxx". + +Fri Apr 3 20:36:35 1998 Owen Taylor <owt1@cornell.edu> + + * gutils.c (g_parse_debug_string): Make debug string + parsine case-insensitive + +Fri Apr 3 17:03:18 PST 1998 Manish Singh <yosh@gimp.org> + + * gstring.c: corrected possible overrun when inserting into + GStrings (thanks Elrond) + +Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu> + + * testglib.c: Removed literal german from strings + to appease SGI compiler. + +Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu> + + * configure.in glib glibconfig.h.in: Add test for atexit/on_exit - + use on_exit if atexit not found in definition of ATEXIT. + +Wed Mar 25 15:23:37 1998 Owen Taylor <owt1@cornell.edu> + + * Makefile.am: Switched glibconfig.h rule from HEADERS + to DATA, so that it is not added to DISTFILES + +Wed Mar 18 22:27:08 PST 1998 Manish Singh <yosh@gimp.org> + + * garray.c: g_rarray_truncate length done correctly + +Sun Mar 15 07:13:34 1998 Tim Janik <timj@gimp.org> + + * gutils.c: changed *_handler variables to be named glib_*_handler, + so you can easily access them from gdb. + +Sat Mar 14 17:47:43 1998 Owen Taylor <owt1@cornell.edu> + + * Makefile.am: Don't refer to current directory as $(top_builddir) + to avoid confusing non-gmakes + +Sat Mar 14 01:37:35 1998 Owen Taylor <owt1@cornell.edu> + + * Makefile.am (configincludedir): Moved glibconfig.h to + $(pkglibdir)/include + +Tue Mar 10 02:03:12 1998 Tim Janik <timj@gimp.org> + + * gscanner.c (g_scanner_destroy_symbol_table_entry): new function to + free symbol table entries upon destruction + (gtk-gronlund-980309-0.patch.gz). + +Mon Mar 9 15:02:21 1998 Tim Janik <timj@gimp.org> + + * glib.h: changed *_length functions to return guint. + changed *_nth functions to take guint as argument. + + * glist.c: adapted g_list_length and g_list_length. + + * gslist.c: adapted g_slist_length and g_slist_length. + +Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu> + + * glib.h gutils.c : changed g_strcasecmp + to take gchar* not guchar* + + * testglib.c: Remove trailing ; after functions + +Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu> + + * glib.h gstring.c: Added g_string_insert[_c]() + and g_string_erase(). + + From: Stefan Wille <1wille@vsys1.informatik.uni-hamburg.de> + +Mon Feb 16 23:05:06 1998 Owen Taylor <owt1@cornell.edu> + + * glist.c (g_list_insert_sorted): Changed function + so elements are always inserted, even if they compare + equal with another. + +Thu Feb 12 22:48:11 1998 Owen Taylor <owt1@cornell.edu> + + * gstring.c glib.h: removed deprecated g_string_equal + and g_string_hash. + +Tue Feb 10 13:04:36 1998 Owen Taylor <owt1@cornell.edu> + + * configure.in: Add check to see if the C library's + iswalnum can actually be used. (Not true for + Linux libc-5.4.38) + +Sat Feb 7 11:48:09 1998 Owen Taylor <owt1@cornell.edu> + + * gstring.c gutils.c: added some additional consts in + appropriate places to remove a warning + +Sat Feb 7 11:15:54 1998 Owen Taylor <owt1@cornell.edu> + + * gutils.c: include <ctype.h> for tolower() + +Fri Jan 30 23:57:17 PST 1998 Manish Singh <yosh@gimp.org> + + * added and autoconfigured in a new utility function + g_strcasecmp + +Wed Jan 28 23:53:27 PST 1998 Manish Singh <yosh@gimp.org> + + * glist.c + * gslist.c + * testglib.c: the sort functions compared backwards. Fixed + * glib.h: list iterator macros now check for NULL pointers + +Tue Jan 27 09:46:57 PST 1998 Manish Singh <yosh@gimp.org> + + * gstring.c: g_string_prepend and g_string_prepend_c had + interchanged src and dest parameters for g_memmove. Fixed. + +Tue Jan 27 01:38:52 PST 1998 Manish Singh <yosh@gimp.org> + + * gslist.c: fixed a really, really lame error. g_slist_insert + didn't hook the data in! Reworked the routine to reflect the + functionality of g_list + +Wed Jan 21 01:13:25 1998 Tim Janik <timj@psynet.net> + + * Applied patch from (Raja R Harinath <harinath@cs.umn.edu>) + to add function g_snprintf. + * configure.in (AC_CHECK_FUNCS): Check for vsnprintf. + * glib.h: Add prototype for g_snprintf. + * glibconfig.h.in: Add HAVE_VSNPRINTF. + * gutils.c (g_snprintf): new function. + +Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu> + + * gstring.{c,h} gscanner.c: + renamed g_string_equal => g_str_equal + renamed g_string_hash => g_str_hash + And const corrected. Old functions left in for now. + +Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net> + + * gutils.c (g_strerror): changed message for EAGAIN from + "no more processes" to "try again" since EAGAIN is used with + functions else than fork(). + + * gscanner.c (g_scanner_get_token_ll): use strtol() instead of + strtoul() to avoid conflicts with solaris. + + * merged the glib portions from Jan 2 to Jan 7 out of gtk+/ChangeLog + into this file. + +Wed Jan 7 02:14:30 PST 1998 Manish Singh <yosh@gimp.org> + + * glib.h: + * glist.c: + * gslist.c: + * testglib.c: Added g_[s]list_insert_sorted function + and appropriate tests in testglib + +Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu> + + * glib.h: Changed guint32 -> guint for bitfields. + (Bitfields must be int or unsigned int?) + +Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net> + + * glib_pre1.h: + * glib_pre2.h: + * glib.h: reverted glibconfig.h and glib.h files back to the + way they were before my ugly hack. + + * gscanner.c: removed inlines from clist and gscanner + +Tue Dec 23 02:49:51 1997 Tim Janik <timj@psynet.net> + + * gscanner.c: new file for GScanner: Flexible lexical scanner for + general purpose. + * glib_pre2.h: added GScanner includes. added g_strconcat and g_strtod. + gutils.c (g_strconcat): new function for string concatenation of NULL + terminated parameter list. + (g_strtod): new function to perform best string to double conversion + with or without consideration of the current locale. + +Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net> + + * glist.c: minor optimizations: + (g_list_append): `if' optimized for common code path, commented out + unneccessary `assert', saved one variable assignment. + (g_list_prepend): saved two (conditioned) variable assignment. + (g_list_insert): saved one (conditioned) variable assignment, + saved one variable assignment. + (g_list_remove): `if' optimized for common code path, saved two + variable assignments by using `g_list_free_1' (which is even + faster) instead of `g_list_free'. + (g_list_reverse): saved allocation of one variable, saved one + variable assignment. + +Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net> + + * glib_pre1.h: + * glib_pre2.h: + * glib.h: this file now gets concatenated by makeglib_h from + glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got + created by configure (done by Jay Painter). + + * glib_pre2.h: the g_assert*() and g_return_*_fail() macros + are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts + when used within if (...) g_macro(); else ... conditionals. + +Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> + + * glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to + not call 'g_string' but to simply stringify the + expression. Calling 'g_string' causes the expression to be + expanded which is undesired. + +Sun Dec 1 01:30:48 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> + + * Started ChangeLog diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index 7add274d9..f9b8b0664 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,2841 +1,23 @@ -Thu Feb 04 20:42:24 1999 Tor Lillqvist <tml@iki.fi> +Sat Mar 6 11:03:08 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) - * glibconfig.h.win32 config.h.win32: Update GLIB_MICRO_VERSION. + * gutils.c (g_get_any_init): add OS/2 changes. + change '\\' in HOME to '/'. -1999-02-04 Christopher Blizzard <blizzard@redhat.com> +1999-03-03 Josh MacDonald <jmacd@spin.dsl.pacbell.net> - * glib.spec (Packager): Change my email address + * glib.def: g_spaced_primes_closest was omitted here, so I + couldn't build Xdelta on Windows. -Thu Feb 4 01:45:01 PST 1999 Shawn T. Amundson <amundson@gtk.org> +1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - * ChangeLog - NEWS - README - configure.in - glib.spec - docs/glib-config.1: version=1.1.15 + * gutils.c (g_get_any_init): Fixed yet another bloody + implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche + <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure + test better than that, but have no idea, how to do that easily. - * Released GLib 1.1.15 +Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org> -Tue Feb 02 00:08:54 1999 Tor Lillqvist <tml@iki.fi> + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. - * gmessages.c (g_log_default_handler): (Win32:) Don't call - ensure_stdout_valid (which would open an unneeded console window) - if we're calling a logging function. Define ensure_stdout_valid - as an empty macro on Unix. - - * gutils.c (g_get_any_init): (Win32:) Trust HOME first if defined, - then try HOMEDRIVE and HOMEPATH. - -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). - -Fri Jan 22 16:51:44 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Added galloca.c. - - * galloca.c: - Compile even if G_NATIVE_ALLOCA is not defined. - Don't use g_free and g_malloc [yet?]. Code appears to depend on - internal malloc() alignment sizes. - - * tests/alloca-test.c: - Always test internal alloca replacement too, even if we have a - working alloca. - Make tests a little bit better by adding recursion - (more stack activity). - -Fri Jan 22 13:41:41 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * configure.in: - Add checks for alloca, defining G_NATIVE_ALLOCA if present. - - * galloca.c: - Import replacement alloca implementation from gettext 0.10.35. - Begin to convert to using GLib types and functions. - - * glib.h: - New macros g_alloca, g_alloca_gc, g_alloca_new, to perform - stack-based memory allocations. - - * tests/Makefile.am, tests/queue-test.c, tests/alloca-test.c: - New tests for g_alloca_*, GQueue ADT. - - * tests/stack-test.c: - Fix pointer casts, include config.h, and - call g_stack_free at end of run. - -Fri Jan 22 11:58:13 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Add gqueue.c. - - * glib.h: - Add GQueue struct and prototypes. - Remove g_stack_free macro. - - * gqueue.c - New file. Implementation of a queue ADT. - - * gstack.c: - Rename _g_stack_free back to g_stack_free. - - * tests/Makefile.am, tests/stack-test.c: - New test for GStack objects. - -Fri Jan 22 02:06:10 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * gstack.c: - New stack ADT implementation. - - * glib.h: - Add g_stack function prototypes and macros. - -Thu Jan 21 23:55:54 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * TODO: - New file. Short notes on what has been said in e-mail, plus a - couple other new items. - - * glib.h, glist.c: - New function g_list_delete(). Removes a node from the list, - then frees it. - -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 - expiration times > 1sec. - -1998-12-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in (have_threads): Changed the last pthread_cond_init - to pthread_attr_init. - -Fri Dec 18 00:03:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmain.c: - (g_main_is_running): new function to check whether a main loop has been - quitted. - (g_main_new): added a gboolean argument to determine whether the loop - should be considered initially running or not. however, g_main_run () - will still reset the main loops running state to TRUE upon initial - entrance. - - * gmain.c: - (g_main_iterate): documented this function's purpose in 5 steps. - for step 2), flag sources as G_SOURCE_READY even if !dispatch and - check G_SOURCE_READY prior to (*prepare), so we don't call (*prepare) - on them multiple times. - -Thu Dec 17 23:43:47 1998 Tim Janik <timj@gtk.org> - - * gmain.c (g_main_add_poll): reordered arguments, so GPollFD* comes - first, <sigh> (sorry Snorfle, i should have let you know in the first - place). - (g_main_dispatch): stack G_HOOK_FLAG_IN_CALL flags. call source's - destructor when destroying a source. - -1998-12-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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. - -Wed Dec 16 23:04:26 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.9 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: version=1.1.9 - -Wed Dec 16 22:32:13 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * glib.h: - giounix.c: s/g_main_poll_add/g_main_remove_add/g - s/g_main_poll_remove/g_main_remove_poll/g - s/g_main_poll_add_unlocking/g_main_add_unlocking_poll/g - (from Tim Janik) - -Wed Dec 16 20:04:10 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: check for pthread_attr_init in all cases, du4 - needs this since most of the other functions are just #defines - -Thu Dec 17 04:10:49 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_LOCK_DECLARE_*): if !G_THREADS_ENABLED, eat the - trailing semicolon with a bogus function declaration, instead - of with a bogus variable declarations, so we avoid unused - variable warnings. - -Wed Dec 16 07:49:16 PST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.8 (CVS tag is GLIB_1_1_8a) - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * giounix.c (g_io_channel_unix_get_fd): Fixed small bug. - -1998-12-16 Joel Becker <jlbec@ocala.cs.miami.edu> - - * glib.h, gscanner.c: changed func_data to user_data in - g_scanner_scope_symbol_foreach and associated friends, because - AIX headers #define func_data. - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Fixed stupid bug, that made - g_static_mutex_lock(*mutex) not work as expected. - - * docs/glib-config.1: Updated to reflect the existence of gthread. - - * gmain.c (g_main_poll_add_unlocking): Changed - g_main_poll_add_unlocked to g_main_poll_add_unlocking to match - semantic, (indeed, main_loop must be locked, when calling this - function). Removed the unlocking from the end of that function, as - that is not right. Made a 'HOLDS' comment above the function. - -Wed Dec 16 03:16:58 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.8, binary age 0, interface age 0. - - * glib.h: changed g_lock() to G_LOCK(), g_unlock() to G_UNLOCK() and - g_trylock() to G_TRYLOCK(), since these are macros that expand to - nothing with --disable-threads. - changed G_LOCK_DEFINE() to G_LOCK_DECLARE() and introduced - G_LOCK_DECLARE_STATIC() to achive the results of static G_LOCK_DECLARE(). - changed semantics of g_thread_supported to g_thread_supported() so it - can be used as a function like g_module_supported(). the actuall - definition is still a macro that expands into a variable for - performance reasons though. - various indentation and coding style cleanups. - - * configure.in: added --enable-threads that defaults to yes. - - * gmutex.c: changed tests g_thread_supported to g_thread_supported (), - changed variable settings of g_thread_supported - to g_threads_got_initialized. - - garray.c: - gcache.c: - gdataset.c: - gdate.c: - ghash.c: - glist.c: - gmain.c: - gnode.c: - gslist.c: - gstring.c: - gtree.c: - gutils.c: - changed s/g_lock/G_LOCK/, s/g_unlock/G_UNLOCK/, - s/static G_LOCK_DEFINE/G_LOCK_DECLARE_STATIC/. - -Tue Dec 15 23:16:05 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README - configure.in: - glib.spec: - docs/glib-config.1: Incremented version - -Wed Dec 16 22:29:48 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * configure.in: fixed the AIX thread checking. - Just an error on the wildcard. BTW, -D_THREAD_SAFE - is correct for AIX. - -Wed Dec 16 02:02:48 1998 Tim Janik <timj@gtk.org> - - * glib-config.in (lib_glib): fixed library and flag ordering for - --libs - -Tue Dec 15 17:17:46 1998 Owen Taylor <otaylor@redhat.com> - - * glib.h giounix.c giochannel.c: Use an "inheritance" - scheme for IO channel memory allocation.h - -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 - set up the parser. So use a different date that Solaris seems - to like. - -1998-12-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Dont complain, if --without-threads or - --with-threads=none is supplied; Test for pthread_attr_init - instead of pthread_cond_init, if threads seems to be supported by - standard glib. (CFLAGS): Use G_THREAD_CFLAGS for compiling of glib - as well. - - * glib.h, gmutex.c: Changed private to private_key to avoid - problems when compiling with under C++. - -1998-12-15 Jeff Garzik <jgarzik@Pobox.com> - - * configure.in: - bugfixes, correctly support --without-threads and friends - - * gthread/testgthread.c: corrected 64-bitness problem - -Tue Dec 15 10:40:09 1998 Owen Taylor <otaylor@redhat.com> - - * gnode.c glist.c gslist.c: Make sure all - calls to g_node_validate_allocator are within - current_allocator lock, so we have consistency - on that point. (Should not really matter, - but this way we match the comments) - - * glist.c (g_list_free_1): Removed some lines - that should never have been committed. (For - debugging) - -1998-12-11 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/gthread-nspr.c, configure.in: Added new default thread - implementation on top of the mozilla nspr library. - - * gmem.c, gmessaged.c, gthread/gthread.c, gthread/gthread-*.c: - Changed GStaticMutex and GStaticPrivate in gmem.c and gmessages.c - into GMutex and GPrivate resp. to make error reporting and use of - gmem possible in most (not all, though) gthread functions. Also - initialized the modules via new init functions. - - * configure.in: Fixed syntax bug in definition of type - GStaticMutex. - - * gthread/testgthread.c: Updated to work with nspr, but see note - there for remaining problems. - -1998-12-10 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gmutex.c, glib.h: Now abort, if a mutex/cond/private is - allocated before the thread system is set up. - - * gthread/gthread.c (g_thread_init): Removed g_thread_try_init(), - as it is not necessary. Changed the error message. Corrected logic - for g_thread_use_default_impl. - - * gmutex.c (g_mutex_init): Keep the thread private data array - after calling g_thread_init(). - -1998-12-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/testgthread.c (new_thread): Now also working for posix - threads; (wait_thread): Now a better implementation, that does not - use 100% CPU. - - * Made the thread related code follow GNU coding standard. - - * Made a comment (HOLDS:) above each function, that expects the - given locks to be held. - - * Changed try_lock to trylock throughout. - - * glib.c: Eventually removed the #if 0'ed code for old GStaticMutex. - - * glib.c: Corrected g_trylock macro for G_DEBUG_LOCKS. - - * 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. - - * gthread/gthread-solaris.c: do not use g_log for errors, as g_log - uses these module and endless recursions might happen, just use a - plain fprintf(stderr,...). - - * 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 - of Sebastian Wilhelmi <wilhelmi@ira.uka.de>) - - - configure.in now looks for a system thread implementation. - Currently support is included for POSIX threads - and Solaris threads. The default support is built - into a separate library -lgthread. - - - The thread implementation can be modified by passing - a vector of functions g_thread_init(). - - - The default or supplied functions are used to - implement a small set of thread functions for - mutexes, condition variables, and thread-private - data. - - - GLib now uses these functions to provide thread - safety. (In the sense that all global static - data is locked... individual structures must still - be locked by the caller.) - -Sat Dec 12 19:08:59 1998 Tim Janik <timj@gtk.org> - - * configure.in: always define G_HAVE_INLINE if __cplusplus is - defined, reported by Wan-Teh Chang <wtc@netscape.com>. - -Thu Dec 10 21:49:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.7 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: Increased version to 1.1.7 - -Wed Dec 9 22:44:44 EST 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * Removed #define of G_COMPILED_WITH_DEBUGGING from glibconfig.h - It shouldn't be there, and it was causing a double #define. - (config.h defines it also) - -Tue Dec 8 12:18:38 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.6 - - * NEWS: updated - -Mon Dec 7 23:10:41 PST 1998 Manish Singh <yosh@gimp.org> - - * gmain.c: fixes to #undef HAVE_POLL case - -1998-12-02 Havoc Pennington <hp@pobox.com> - - * 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. - (g_date_set_year): Same. - -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 - 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 - flags, rather than re-checking the validity of the actual - values. This should be the correct behavior, the old way was - leftover cruft. - - * glib.h, gdate.c: Changed MDY to DMY throughout. - -Sat Nov 28 12:53:47 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am configure.in acconfig.h giochannel.c - glib.h glist.c gmain.c gutils.c: - - - Revised GIOChannel to provide a generic virtual-function - based interface. - - Added unix fd-based GIOChannel's - - Added generic main-loop abstraction - - Added timeouts and idle functions using main-loop abstraction. - -1998-12-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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 - include time.h. - -Tue Dec 1 23:01:44 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - 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/ - include time.h. - - * glib.h: removed #include <time.h>, changed time_t paramter of - 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> - - * glib.h: - * ghook.c: added g_hook_list_marshal_check() to eventually destroy - hooks after they got marshalled. - -Sun Nov 29 17:31:43 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * configure.in, Makefile.am, gmodule/Makefile.am: - Put -DFOO stuff into Makefile.am INCLUDES. - -Sun Nov 29 14:17:09 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: put debug -DFOO stuff into CPPFLAGS, not CFLAGS, - so CFLAGS can be overridden at make time properly - -Sat Nov 28 01:23:25 1998 Tim Janik <timj@gtk.org> - - * ghash.c: implemented incremental freezing facility. - -Thu Nov 26 01:36:20 1998 Tim Janik <timj@gtk.org> - - * 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. - -Tue Nov 24 18:57:59 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981120-0, change log appended below. - - * glibconfig.h.win32: passthrough 64-bit constants unchanged, VC++ - infers them - -Fri Nov 20 22:26:43 1998 Tor Lillqvist <tml@iki.fi> - - * glib.h: Moved MSC pragmas from glib.h to glibconfig.h.win32. - peer_offset field in WIN32 part of GIOChannel removed, need_wakeups - added. Added "extern" to __declspec(dllimport). - - * gutils.c: Initialise need_wakeups. - - * glibconfig.h.win32: Pragmas moved here. Define G_GINT64_CONSTANT. - - * gmodule/gmodule.def: Added g_module_build_path. - - * gscanner.c: (g_scanner_cur_value) Move initailisation of v - to before its use. - - * glib.def: Added g_(s)list_sort. - - * makefile.msc: A few more comments. - -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 - 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 - or source incompatibilities. It does add a member to the - GHashTable structure. - -Tue Nov 24 09:40:00 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed the GListAllocator type and its g_*_allocator_*() - function variants (which weren't working anyways) in favour of a - generic GAllocator type. new functions: - g_allocator_new, g_allocator_free, g_slist_push_allocator, - g_slist_pop_allocator, g_list_push_allocator, g_list_pop_allocator, - g_node_push_allocator and g_node_pop_allocator. - - * gstring.c: removed bogus slist allocator code. - * gtree.c: maintain own list of free tree nodes and don't waste - GSLists for that, removed bogus slist allocator code. - * glist.c: use GAllocators for node allocation. - * gslist.c: use GAllocators for node allocation. - * gnode.c: use GAllocators for node allocation. - - * gdataset.c: cleanups wrt automatic initialization. - -Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h garray.[ch]: added g_array_insert_vals() to - insert elements at an arbitrary index, and - g_array_insert_val() macro. - -Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gslist.c: new function g_slist_copy() to duplicate a list with all its - data pointers. - * glist.c: new function g_list_copy. - -Sat Nov 21 14:57:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: Updated to version 1.1.5 - - * Released GLib 1.1.5 - -Wed Nov 18 1998 Elliot Lee <sopwith@redhat.com> - - * gdataset.c: There was a code path into g_data_set_internal - through a function (g_datalist_id_set_full). Neither function - checked for g_dataset_init having been run, but - g_data_set_internal used the memchunk. I added - a check into g_data_set_internal so it will do the - initialization if needed. (There's probably a better way.) - -Mon Nov 16 07:48:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_bit_nth_msf): fixed off-by-one error, so we don't waste - a loop iteration if (-1) was passed, reported by Andreas Bombe - <andreas.bombe@munich.netsurf.de>. - -Fri Nov 13 15:17:34 1998 Owen Taylor <otaylor@redhat.com> - - * glist.c gslist.c glib.h: Added g_list_sort() and - g_slist_sort() to merge sort GLists and GSLists. - Submitted by Sven Over <sven.over@ob.kamp.net> - over a year ago! - - * testglib.c: Test the new sort functions. - -Wed Nov 11 23:23:22 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am : INCLUDES is the right way to add to CFLAGS, not - DEFS. Also there are bugs with '+=' in makefiles. - Got rid of DEFS line by moving G_LOG_DOMAIN setting into INCLUDES. - Removed redundant -I from INCLUDES. - -Wed Nov 11 18:11:24 EST 1998 Gregory McLean <gregm@comstar.net> - - * docs/*.sgml : Batch of new documentation that should be easier - to maintain and extend. Plus generate whatever sort of doc file - you would like. I didn't change the Makefile stuff as I'm not sure - what default doc type people want. Oh and this is all DocBook format. - Enjoy! - -Tue Nov 10 17:12:45 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: use __extension__ for long long on gcc >= 2.8 and - egcs, and provide a G_GINT64_CONSTANT wrapper so -ansi -pedantic - compiles clean. - - * glib.h: make the endian x86 asm __const__ so the compiler can do - better optimizations. Also remove the cc clobber, these shouldn't - be changing condition codes. Ditch some redundant casts. Add an - optimization for 64-bit endian conversions in x86. Use constant - wrapper for the generic method. - - * testglib.c: use constant wrappers for 64-bit constants - -1998-11-04 Phil Schwan <pschwan@cmu.edu> - - * configure.in: Added 'strncasecmp' to the list of functions to be - searched for. - * glib.h: Added a prototype for 'g_strncasecmp' - * gstrfuncs.c: (g_strncasecmp) new function modeled closely after - 'g_strcasecmp' - -Wed Nov 4 15:06:44 PST 1998 Manish Singh <yosh@gimp.org> - - * config.h.win32 (new file) - * glibconfig.h.win32 - * glib.def - * makefile.msc: applied glib-tml-981104, win32 sync - -1998-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * glib.h: - * garray.c: - (g_array_remove_index): new function for removing an entry from an - array while preserving the order - (g_array_remove_index_fast): new function for removing an entry - from an array. the order might be distorted - (g_ptr_array_remove_index_fast, g_ptr_array_remove_fast): new - functions; working similiar to the above. (they have the semantic - of the old g_ptr_array_remove[_index] functions) - (g_ptr_array_remove_index, g_ptr_array_remove): new semantic. now - the order of the elements in the array is not changed - (g_byte_array_remove_index, g_byte_array_remove_index_fast): new - functions; byte_array wrapper for g_array_remove_index[_fast] - -Sun Nov 1 23:00:18 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * configure.in: endian macros defined using the glibconfig.h - mechanism now - - * ghook.c: casts for GHookFunc and GHookCheckFunc to avoid warnings - -Sat Oct 31 20:14:22 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981101-1 patch from Tor Lillqvist (ChangeLog - entry appended below) - - * testglib.c - * gstrfuncs.c - * glib.h: use G_HAVE_GINT64, since HAVE_GINT64 is gone - - * 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. - - * gutils.c: - (g_getenv): Better implementation on Win32. No loop necessary. - (g_get_any_init): Use P_tmpdir if defined as tmp directory. Don't - set home dir always to NULL on Win32. Don't use tmp directory as - last resort home directory, but return NULL if no home - directory is known (application must check). - - * makefile.msc: Better touch command, just COPYing a single file - sets the timestamp from that file, which isn't what touching should - do. - -1998-10-31 Raja R Harinath <harinath@cs.umn.edu> - - Land glib-rrh-19981025-0.patch. - * 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 - concluding "broken wctype". - (glibconfig.h): Use AC_OUTPUT_COMMANDS to put generation code into - config.status. - * glib.h: Remove a lot of tests and defines. All these have been - moved to `configure.in (glibconfig.h)'. - * gerror.c: Include <config.h>. - * 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. - added macros G_STRUCT_OFFSET(), G_STRUCT_MEMBER_P() and - G_STRUCT_MEMBER() for handling structure fields through their offsets. - (struct _GHookList): added a hook_free function member, that can be used - to free additional fields in derived hook structures. - g_hook_free(): if hook_list->hook_free != NULL, call this function prior - to freeing the hook. (this functionality should have been there in the - first place, it just got forgotten as an implementation detail). - -Wed Oct 28 00:49:32 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: G_BREAKPOINT for alpha from Robert Wilhelm - <robert@physiol.med.tu-muenchen.de> - -Tue Oct 27 07:25:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: - (g_scanner_sync_file_offset): new function for file input. - rewind the filedescriptor to the current buffer position and blow - the file read ahead buffer. usefull for third party uses of our - filedescriptor, which hooks onto the current scanning position. - (this became neccessary with the implementation of buffered - reads). - (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. - -Tue Oct 27 00:27:31 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: get rid of duplicate #g_htonl and friends in the - NATIVE_WIN32 part - -Mon Oct 26 22:42:01 PST 1998 Manish Singh <yosh@gimp.org> - - * glibconfig.h.win32 - * gutils.c - * makefile.msc: win32 patch from Tor Lillqvist (glib-tml-981027-0), - fixes some minor win32 buglets - -Mon Oct 26 22:12:03 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: reimplemented the endian stuff, using inline asm - for x86. #define g_htonl and friends. - - * testglib.c: new tests for the endian stuff - - * configure.in: care for AIX in gmodule linker flags test (from - Joel Becker <jlbec@raleigh.ibm.com>). Check $host_os for linux - instead of existance of /usr/include/linux - - * gutils.c: buh-bye evil warning. Thou hast been #ifdef'd out - of thine existance! - -Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed dummy structure definitions for struct _GCache, - _GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk. - - * gutils.c: implement glib's inline functions _after_ all include - statements have been processed. - removed Tor's MAXPATHLEN check since there already was one supplied - further down in this file. - (LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32, - since lcc maybe used on other platforms as well. why in hell is this - stuff required? - (g_get_any_init): for windows, if the user name is supplied, use it as - realname also. - in general, if there is no homedir specified, use the tmpdir that - we already figured. - - * gtimer.c (g_timer_elapsed): changed a g_assert() statement to - g_return_if_fail(). - - * applied glib-tml-981020-0.patch for WIN32 portability, added some - comments and g_return_if_fail() statements, minor indentation fixes. - ChangeLog entry from Tor Lillqvist is appended. - - * glib.h (struct dirent): use lower case structure members. - - * glib.h: - * makefile.lcc: - * makefile.msc: - s/COMPILING_GLIB/GLIB_COMPILATION/ - -1998-10-20: Tor Lillqvist <tml@iki.fi> - - * README.win32 glib.def gmodule.def - * glibconfig.h.win32 gmodule/gmoduleconf.h.win32: - New files for the Windows port. The .def files list exported - symbols for the Microsoft linker and compatibles. - - * configure.in: - Added checks for some platform-dependent headers: pwd.h sys/param.h - sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat. - - * gerror.c: - Conditionalized inclusion of system-dependent headers. Changes - for Windows: no gdb to do a stack trace. Just call abort(). - - * glib.h: - Changes for Windows: - - Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for - platform-dependent file name syntax elements. Added macros - G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for - platform-dependent search path syntax conventions. - - Added pragmas for Microsoft C to make it more pedantic. - - Marked GLib's global variables for export from DLL. - - Added the function g_strescape that escapes backslashes. - - Added functions g_path_is_absolute and g_path_skip_root to - handle platform-dependent file name syntax. - - Added the function g_getenv that expands environment variables - that contain references to other environment variables, as is - typical on Windows NT. - - Added the GIOChannel structure which is used to encapsulate the - IPC mechanism used by the GIMP's plug-ins, and possibly other - things later. On Unix a GIOChannel encapsulates just a file - descriptor. On Windows it contains a file handle from _pipe() and a - few other things related to the implementation of gdk_input_add - and GIMP plug-in communication. Subject to change. - - Removed duplicate declarations of the version variables. - - For the Microsoft compiler, declare own implementation of - ftruncate and the <dirent.h> functions. - - * gmem.c: - Define a symbolic name for the profiling table size. - - * gmessages.c: - Conditionalized inclusion of unistd.h. On Windows, output using - stdio to stdout. - - * gscanner.c: - 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. - - * gtimer.c: - Conditionalized inclusion of unistd.h and sys/time.h. Added - implementations for Windows. - - * gutils.c: - Conditionalized inclusion of platform-dependent headers. Use - the platform-independent file name syntax macros. - Conditionalize code on platform-dependent features. Added the - functions g_path_is_absolute g_path_skip_root and g_getenv. - Added the GIOChannel-related functions. Added - compiler-dependent Unix compatibility functions for Windows. - - * 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 - from gtk-config.1 in gtk - - * configure.in: - * Makefile.am: - * sanity_check: added in docs directory, change rule 'release' - to 'snapshot' and created a new 'release' rule for doing the - distribution. Added in a 'sanity' rule. - - * NEWS: - * 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_get_char): no more characters are available if read() returns - anything less than 1, not only on 0 return. - - * 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(). - (g_strjoinv): renamed from g_str_array_joinv(), string array is - now passed as last parameter. removed `const' qualifier from string - array pointer (again). - (g_strjoin): new function from sopwith to concatenate strings with - an additional seperator. - (g_strfreev): renamed from g_str_array_free. - -Sat Oct 24 22:23:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * gnode.c: small fix to g_node_children_foreach to make it work right. - From Paco Moya <paco@cadnotebk17.eecs.berkeley.edu> - -Wed Oct 21 19:22:58 1998 Tim Janik <timj@gtk.org> - - * configure.in (G_MODULE_HAVE_DLERROR): reverted part of the changes - from Sebastian Wilhelmi (1998-10-20). don't specify a specific loading - behaviour (i.e. RTLD_NOW) when we are not sure whether it is supplied. - changed the return value from (!f2 && f1) to (!f2 || f1) so we default - to not needing an underscore. reverted the extra plugin.c building, - because .lo files are not ELF libraries, this can't work. This needs - further investigation on Solaris... - -Wed Oct 21 17:03:05 1998 Tim Janik <timj@gtk.org> - - * 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 - the in_place arguments were skipped, the caller is supposed to pass a - g_strdup()ed string if he wants to retrive a new copy. indentation and - coding style fixups. added some g_return_if_fail() statements. - string array functions are prefixed with g_str_array_. - (g_strdelimit): return the modified string like all other g_str* - functions, that operate in place. - (g_strchug): renamed from g_str_chug(), removed in_place argument. - (g_strchomp): renamed from g_str_chomp(), removed in_place argument. - (g_strstrip): renamed from g_str_strip(), removed in_place argument. - (g_str_array_join): renamed from g_strconcatv(), since it actually - operates on a string array and has totaly different semantics from - g_strconcat(). check for separator != NULL, don't segfault if the first - string is NULL. removed the `const' from the string array that's passed, - so users can operate on gchar** string arrays. - (g_str_array_split): renamed from g_str_split() because we actually - produce a string array. reimplemented this function for efficiency. - removed macro aliases g_str_joinv and g_str_join. - -1998-10-20 Elliot Lee <sopwith@redhat.com> - - * glib.h, gstrfuncs.c: Move string join/split/free routines from - libgnome/gnome-string, rename, and add g_str_chug. - -1998-10-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: made the check for needed _ in module's func-names - work on solaris. (G_MODULE_NEED_USCORE must be set outside - AC_CACHE_VAL, dlopen(0,0) refused to work on solaris). - -Tue Oct 20 03:32:58 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in - * acconfig.h: added test for endianness - - * glib.h: #define endian macros for system and some conversions - between byte order - -Thu Oct 8 06:47:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: removed functions g_dataset_id_set_destroy and - g_datalist_id_set_destroy and macros g_dataset_set_destroy and - g_datalist_set_destroy. - added new functions g_dataset_id_remove_no_notify and - g_datalist_id_remove_no_notify plus associated macros - g_dataset_remove_no_notify and g_datalist_remove_no_notify, which - will remove a certain data portion without invokation of its destroy - notifier, this should only be used in very controled circumstances. - -Wed Oct 7 05:31:24 1998 Tim Janik <timj@gtk.org> - - * glib.h: - removed the #pragma } statement after extern "C" {. use - (c-set-offset 'inextern-lang 0) to fixup emacs cc-mode indentation. - - * glib.h: - * ghook.c: API and code cleanups. changed the G_HOOK_ACTIVE and - G_HOOK_IN_CALL enum vals to G_HOOK_FLAG_ACTIVE and G_HOOK_FLAG_IN_CALL. - changed the G_HOOK_IS_ACTIVE() and G_HOOK_IS_IN_CALL() macros to - G_HOOK_ACTIVE() and G_HOOK_IN_CALL(). - fixed the g_hook_find* functions, so they iterate over non-active - hooks as well. - (g_hook_first_valid): - (g_hook_next_valid): added an extra argument gboolean may_be_in_call, - which indicates whether G_HOOK_IN_CALL() hooks are considered valid - or not. these two functions are meant as iterators for the hook list - invocation, so they need to a) provide functionality to implement - may_recurse bahaviour and b) only walk active hooks. - -Tue Oct 6 14:29:47 1998 Tim Janik <timj@gtk.org> - - * gmem.c (g_malloc0): fixed memory offsett when ENABLE_MEM_CHECK is - defined and ENABLE_MEM_PROFILE is not (patch from Martin Pool - <mbp@wistful.humbug.org.au>). - -Sat Oct 3 01:18:10 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: - (g_hook_list_invoke): - (g_hook_list_invoke): - (g_hook_list_marshal): properly handle the first valid hook to call, - it maybe IN_CALL already. - (g_hook_list_marshal): minor name change. - -Fri Oct 2 23:21:21 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: renamed GHook.id to GHook.hook_id so we don't get troubles - with ObjC which reserves "id" as a keyword (Raja R Harinath - <harinath@cs.umn.edu>). - -Wed Sep 30 10:53:03 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: added ghook.c. - - * glib.h: - * ghook.c: generic callback maintenance functions. - - * glib.h: define G_GNUC_UNUSED. - -Fri Sep 25 00:04:37 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.4, binary age 0, interface age 0. - - * glib.h (struct _GScanner): dumped peeked_char and text_len in favour - of *text_end and *buffer for buffered read()s. - - * gscanner.c: changed peeking and retrival of next character so we - have buffered reads. fixed minor bug with number parsing error - reporting. made some static!!! variables local ones (why did we use - static temporary variables in the lowlevel tokenization code anyways?). - -Mon Sep 21 23:23:10 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.3 - -Mon Sep 21 07:43:13 1998 Tim Janik <timj@gtk.org> - - * glib.h: added g_renew() which works as g_new() for g_realloc(). - -Mon Sep 21 02:22:12 1998 Tim Janik <timj@gtk.org> - - * NEWS file update for upcoming release of GLib + GModule - version 1.1.3, binary age 0, interface age 0. (GModule uses - the same version numbers as GLib.) - - * glib.h: swap the inclusion of of float.h and limits.h to work - around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by - Per Abrahamsen <abraham@dina.kvl.dk>). - - * glib.h: - * gscanner.c: renamed the GValue union to GTokenValue, this should - not affect source compatibility in most cases. - - * ghash.c: added some g_return_if_fail() statements. make - g_hash_table_lookup_node() an inline function so we save an extra - function invokation on lookups. - -Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com> - - * ltmain.sh: Patch to libtool-1.2b to make --disable-static - work. - -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). - Returns the number of elements deleted. - -Fri Sep 18 11:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_memdup implementation - -Fri Sep 18 18:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: make the datalists a safe type (not using a generic - gpointer) by expecting a GData* argument in the g_datalist functions. - provide g_dataset_foreach() and g_datalist_foreach() functions that - allow a GDataForeachFunc function to walk the data lists. - (g_dataset_destroy_internal): made this function truely reentrant (i.e. - can be called from within destroy notifiers as well). - the *_foreach functions are _not_ reentrant (unless all the other - dataset and datalist functions). - -Fri Sep 18 03:41:20 1998 Tim Janik <timj@gtk.org> - - * gtree.c (g_tree_new): check for key_compare_func != NULL (reported - by Michal Kara). - -Thu Sep 17 18:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * config.h.in: removed from repository - - * install-sh - * missing - * mkinstalldirs: updated to latest automake version - -Thu Sep 17 06:36:25 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: implemented g_datalist_* along the lines of g_dataset, - but operates on an opaque gpointer *datalist; pointer, e.g. for the - implementation of GtkObject named data. - we cache a certain portion of the already freed data entries now, to - gain a slight performance improve with data reallocation. - -Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am glib-config.in l*: Update to libtool-1.2b, - change library versioning scheme to drop LT_RELEASE - from the -l line, while keeping it in the soname. - -Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org> - - * glib.h: explicitely include the prototypes for inline functions - to cure gcc warnings for -Wmissing-prototypes. - -Wed Sep 9 02:52:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -posix check for NeXTStep - -Tue Sep 8 05:04:06 1998 Tim Janik <timj@gtk.org> - - * glib.h: abandon the use of ATEXIT(), we keep the fallback - macros for backwards compatibility. people ought to use g_atexit(). - - * gutils.c (g_atexit): new function to take over the implementation - of ATEXIT. this function is guarranteed to succeed, similar to - g_malloc(). - -Mon Sep 7 20:07:38 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: comment the -std1 check and save LIBS properly - -Mon Sep 7 07:53:21 1998 Tim Janik <timj@gtk.org> - - * configure.in: check for all three inline keywords individually. - - * 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'. - 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 - prototypes if no inlinig can be performed. we special case most of the - stuff, so inline functions can have a normal implementation by defining - G_INLINE_FUNC to extern and G_CAN_INLINE to 1. - - * ltconfig: (compiler PIC flag test): special case linux for non - aout systems to honour lcc's position independant code (cases - "linux*aout)" and "linux*)" got added). (this needs to go into - libtool which does an advanced test, checking for __LCC__). - - * autogen.sh: take $CC=lcc into account by invoking automake with - --include-deps so lcc isn't scared by gcc's auto-dependancy - generation code. care about $ACLOCAL_FLAGS. optionally feature - autoheader. - - * minor fixups in other places to cure some of lcc's warnings. - -Sun Sep 6 19:08:53 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -std1 check for ANSI compliance (from gtk) - -Sun Sep 6 12:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: provide proper ATEXIT behavior on NeXTStep by !atexit - -Sat Sep 5 18:03:36 1998 Tom Tromey <tromey@cygnus.com> - - * gutils.c (GLIB_INLINE): Define. - * glib.h (GLIB_INLINE): New define. - (g_bit_nth_msf): Use it. Also, add prototype. - (g_bit_storage): Likewise. - (g_bit_storage): Likewise. - -Sat Sep 5 04:40:02 1998 Tim Janik <timj@gtk.org> - - * 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. - - * gmem.c: new function g_mem_chunk_alloc0() which will initialize - a memory area allocated with g_mem_chunk_alloc() with 0's. - -Wed Sep 2 19:13:28 1998 Owen Taylor <otaylor@redhat.com> - - * garray.c glib.h (g_array_[ap/pre]pend_vals): make - data argument const. - -Wed Aug 26 06:32:40 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstrfuncs.c: new function g_strnfill() to return a new string - of specified length, filled with a specific character. - -Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu> - - * testglib.c (main): Update the array tests. Reduce the number of - iterations for the prepend test from 10000 to 100 since it is - O(n^2) and was taking longer than I would like to wait. - - * garray.c: I've worked on the GArray interface, mostly. It was - seriously broken before and I hate to do it, but this is going to - break some code. It is important to do this now, because more and - more people are starting to use glib and the interface was both - broken and inconsistent. First, rename the _truncate functions of - both the GArray and GPtrArray classes to _set_size, since this - function can also be used to extend the arrays. GArray now - accepts two more initialization arguments: clear and element_size. - Instead of providing the type to each access function, the array - now stores the element size. Clear, if set, causes the library to - zero element's memory as the array expands. The major broken-ness - here was that array->len was in bytes, not elements. Now, since - the array knows its element size, array->len is correct and I have - removed the g_array_length macro. The only macro which now - accepts the type as an argument is g_array_index, which casts the - element to the right type--this interface does not change. The - append and prepend functions simply need the types removed. - g_ptr_array_remove_index now returns the removed element. - - * gprimes.c (g_spaced_primes_closest): Move this function out of - ghash.c and rename it from g_hash_closest_prime. Fix the primes - so that they are actually prime (they weren't all -- isn't that - nice?). - -Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstring.c: - * gstrfuncs.c: - (g_vsprintf): removed this function which was not publically - exported in glib.h. to export it, it should have been named - differently in the first place, since its semantics differ from - vsprintf(). apart from that, it was a possible cause for - problems since it worked on a previously allocated memory area and - was used in a lot places of glib. exporting it would have been a - guararant for problems with threaded programs. - (g_printf_string_upper_bound): exported this function to return - a string size, guarranteed to be big enough to hold the fully - expanded format+args string. added 'q', 'L' and 'll' flag handling. - in fact, the newly allocated area is in most cases much bigger than - required. - (g_strdup_vprintf()): new function returning a newly allocated string - containing the contents of *format and associated args (size is - calculated with g_printf_string_upper_bound()). - (g_strdup_printf): new function which wraps g_strdup_vprintf(). - - * configure.in: check for va_copy() or __va_copy() alternatively. - check whether va_lists can be copyied by value. - - * glib.h: provide a definition for G_VA_COPY. - - * glib.h: - * gmessages.c: - (g_logv): - (g_vsnprintf): - pass va_lists by value, not by reference, since this causes problems - on platforms that implement va_list as as arrays. internaly, use - G_VA_COPY (new_arg, org_arg); va_end (new_arg); to produce a second - va_list variable, if multiple passes are required. changed all - callers. - - * glib.h: - * gerror.h: - renamed g_debug() to g_on_error_query(), cleaned up a bit. - renamed g_stack_trace() to g_on_error_stack_trace() since both - functions cluttered different namespaces. - there is an appropriate comment in glib.h now that explains the - unix and gdb specific dependencies of both functions. - removed g_attach_process(). - g_on_error_stack_trace() should probably be handled with caution, - i've seem several different linux versions (2.0.x) become unstable - after invokation of this function. - -1998-08-18: Elliot Lee <sopwith@redhat.com> - - * In gmem.c, add the ability to exclude memory chunks from the - memory profiling information. - -Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_strndup - -Tue Aug 18 04:40:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: new function g_log_set_always_fatal() to set an - additional fatal_mask for log levels that are considered to be fatal - globally (required by gtk). since this mask is not domain-associated, - it is restricted to the log levels, introduced by glib itself. - - * gmem.c: - * grel.c: - * gtree.c (g_tree_node_check): - don't use g_print() calls for informational/debugging output, - but log all this stuff through g_log() with G_LOG_LEVEL_INFO. - libraries shouldn't use printf(), g_print() or g_printerr() at all. - -Tue Aug 18 02:46:44 1998 Tim Janik <timj@gtk.org> - - - * glib.h (__STRICT_ANSI__): if __STRICT_ANSI__ is defined, make - `inline' a noop, since strict ANSI rules don't permit `inline'. - -Mon Aug 17 15:21:42 1998 Tim Janik <timj@gtk.org> - - * grel.c: made private functions static. - -Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to - EXTRA_DIST - * glib.spec: version = 1.1.3 - -Mon Aug 17 01:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.m4: feature an extra MODULES parameter, so glib-config can - be invoked with the "gmodule" argument. - - * glib.h: changed the log level to G_LOG_LEVEL_CRITICAL for all - g_return*_if_fail statements, and made them issue a message - like "assertion `%s' failed". - - * gmessages.c (g_logv): ugh, don't pass log_domain as NULL to - g_log_find_domain. - -Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org> - - * version bump to 1.1.3, binary age 0, interface age 0. - - * glib.h: be nice to platforms that don't have gint64 and don't - issue #warning on every compilation. since glib doesn't require - gint64 itself, packages that need gint64 should test for this - themselves. - - * glib.h: - * gutils.c: added a new function g_vsnprintf(). - -Sun Aug 16 Elliot Lee - - glib.h: #error out if we don't recognize the SIZEOF_VOID_P - #warning if no gint64 - -Fri Aug 14 16:41:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: added static inline functions for bit mask tests: - g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage. - -Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: - revised the message handling system, which is now based on a new - mechanism g_log*. most of the assertment macros got adapted to - feature the new g_log() call with an additional specification of - the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN - is undefined upon the includion of glib.h, it'll be defined with a - value of (NULL) and thus preserves the original bahaviour for - warning and error messages. the message handler setting functions - for g_warning, g_error and g_message are only provided for backwards - compatibility and might get removed somewhen. - - * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain - to "GLib" upon compilation. we currently have to add this definition - to the DEFS variable. - * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start - of this file currently, since automake doesn't support per target - _CFLAGS yet. - - * glib.h: changed some gints to gbooleans, made a few const corrections, - removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some - in other required places. - - * gnode.c: - (g_node_prepend): - (g_node_insert_before): - (g_node_insert): - (g_node_append_data): - (g_node_prepend_data): - (g_node_insert_data_before): - (g_node_insert_data): - (g_node_append): - return (node), so these macros/functions can be usefully chained with - g_node_new(). - -Mon Aug 10 17:56:11 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: it's GTime now, and it's back! - -Mon Aug 10 02:17:19 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: minor hack to cause SUBDIRS (gmodule) to be build - last. we do this by making all-recursive-am depend on all-am. - -Sun Aug 9 15:56:11 1998 Tim Janik <timj@gtk.org> - - * configure.in: added GModule checks. generate files in gmodule/. - * glib-config.in: support library specifications `glib' and `gmodule'. - * Makefile.am: feature the gmodule/ subdir. - -Wed Aug 5 10:04:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.2 - -Wed Aug 05 01:15:36 1998 George Lebl <jirka@5z.com> - - * testglib.c: fix 64-bitness in g_prints, sizeof doesn't - seem to return int so I cast it for printing, probably - just cosmetic - -Tue Aug 4 19:54:06 PDT 1998 Shawn T. Amundson <amundson@gkt.org> - - * Released GLib 1.1.1 - -Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.1, binary age 1, interface age 0. - * NEWS: updates. - * README: updates. - * INSTALL: updates and fixes. - * COPYING: include the GNU LGPL, rather than shipping an empty file. - * AUTHORS: listed original authors here, and added people who made - significant improvements to glib. - - * glib.h: - * gutils.c: implement g_get_current_dir() which returns a newly - allocated string, instead of a g_getcwd() variant that operates - on a static buffer. - export glib_interface_age and glib_binary_age. - as a convenience, macro definitions have been added for - g_node_insert_data, g_node_insert_data_before, g_node_append_data and - g_node_prepend_data. - - * testglib.c: minor cleanups, print current dir. - -Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gnode.c: change order of gpointer data; field in struct _GNode to - be partly binary compatible with GList and GSList. - -1998-08-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * garray.c (g_ptr_array_remove_index): bugfix: index check for - array has been wrong. - -Fri Jul 31 22:17:05 1998 Tim Janik <timj@gtk.org> - - * testglib.c (g_node_test): added a GNode test. - -Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: compile gnode.c. - - * glib.h: - * gnode.c: added implementation of n-way trees. - - * gtree.c (g_tree_traverse): added a warning to the switch() statement - which says that G_LEVEL_ORDER is not implemented. - -Mon Jul 27 00:17:30 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.0 - -Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: #if 0'ed out the GTime definition, until it is definitively - needed. #if 0'ed out the g_getcwd() version, because it is the wrong - implementation. - -Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu> - - * glib.h: gtime changed to g_time. gtime is used in - /usr/include/time.h in NetBSD, causing multiple headaches. - If this isn't the right way of fixing it.... ;) - -Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: new functions to make a scanner scope sensitive wrt - symbol lookups. - g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol, - g_scanner_scope_remove_symbol, g_scanner_scope_add_symbol and - g_scanner_set_scope. - g_scanner_add_symbol, g_scanner_remove_symbol and - g_scanner_foreach_symbol are now aliases for scope 0. - -Mon Jul 20 23:05:34 1998 George Lebl <jirka@5z.com> - - * glib.h: typo fixed for alphas for gint64 - -Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.c: new fuction g_dirname() which returns a newlly - allocated string. - -Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.h: added a bunch of utility/wrapper functions: - g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(), - g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname(). - - * gutils.c: removed all g_str* functions. - * gstrfuncs.c: moved the bunch g_str* functions from gutils.c in this - place. this file shall never include <unistd.h> to avoid clashes for - some of the g_str* functions on some OSes. - -Fri Jul 10 00:29:03 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Renamed g_hash_table_lookup_full to - g_hash_table_lookup_extended to conform with naming conventions. - -Tue Jul 7 03:18:58 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Generic cleanup, added a function: - (g_hash_table_lookup_full): Return whether the lookup succeeded, - and also retrieve the key and value. This allows one to - distinguish between failed lookup and finding a NULL, and also - allows one to free a key in the hash. - -Mon Jul 6 10:12:05 PDT 1998 Manish Singh <yosh@gimp.org> - - * ltconfig: fix for properly detecting shared lib support on - SunPro cc (taken from libtool 1.2.a) - -Sat Jul 4 13:38:52 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: added g_array_length - -Tue Jun 30 11:58:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): take symbol_2_token into - account. react on valid/invalid string pairs. - -Sat Jun 27 21:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.m4: ftp.glib.org -> ftp.gtk.org, since glib.org isn't - ours. ;) - -Fri Jun 19 03:11:02 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: removed g_dataset_try_key, g_dataset_force_id and - g_dataset_retrive_key in favour of GQuarks. - a GQuark is an numeric id wich is associated with a certain string. - (g_quark_try_string): try to get the quark associated with this string, - if the lookup failed return 0. - (g_quark_from_string): get the associated quark for a string, if there - isn't currently a GQuark associated with this string, then allocate a - new quark and return that. - (g_quark_from_static_string): like the above function, but the string - isn't strdup()ed to save memory. - (g_quark_to_string): get the string that is associated with a certain - GQuark. - - * gdataset.c (g_dataset_id_set_data_full): invoke the destroy function - _after_ the new data has been setup. - -Thu Jun 18 02:35:21 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Changed messages for g_return_[val]_if_fail to - be somewhat more clear: assertion "blah" failed. - -1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * testglib.c (main): Use GINT_TO_POINTER casts to remove compiler - warnings. - - * grel.c: #include <string.h> - -Fri Jun 12 15:39:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (GScanner): cleanups of the structure fields (binary - incompatible). - -Fri Jun 12 00:39:28 1998 Josh MacDonald <jmacd@icw.EECS.Berkeley.EDU> - - * glib.h: add new hash and equal functions g_int_*. complement - g_direct_hash with g_direct_equal. - - * grel.c: new file, GRelations implement tuples of N-N mappings. - A comment in glib.h briefly describes the interface. - - * ghash.c: new function, g_hash_table_size - - * glib.h: new typedefs, gsize, gssize, gtime. - - * garray.c: new functions implementing a simplified GArray. This - GPtrArray is an array of gpointers and has functions to add and - remove elements, much like java.lang.Vector. - - * garray.c: new functions for the single-byte special case of - GArray. The functions g_byte_array* operate on arrays of bytes. - Internally, a GArray is used. - - * testglib.c: tests for g_ptr_array, g_byte_array, and g_relation... - -1998-06-11 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gdataset.c: #include <string.h> - -Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: new function g_dataset_retrive_key. adjusted prealloc - sizes, to take up less space on initial allocation. - -1998-06-10 Raja R Harinath <harinath@cs.umn.edu> - - * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2, - the version from which glib's libtool forked. Needed for people - who use post-1.2 alphas of libtool. - * configure.in (enable_mem_check, enable_mem_profile): Replace - `echo -n' with AC_MSG_CHECKING. - (fd_set): Explain test for `fd_set' better. - -Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org> - - * Makefile.am glib.m4 configure.in: - - Moved out from GTK+; added AM_PATH_GLIB macro. - -Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: renamed g_const_pointer => gconstpointer - -Tue Jun 9 17:47:33 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Remove #error - HP/UX. - -Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org> - [ Combination of: - gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>) - gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ] - - * glib.h ghash.c gstring.c gdataset.c gutils.c: - - Added new typedef g_const_pointer; expunged all incorrect - uses of 'const gpointer'. - - Fixed up warnings that that created, - - Changed GHashFunc and GCompareFunc to take g_const_pointer - arguments. (Necessary, but will cause warnings in existing - code until fixed) - - Added other new const in harmless positions. - -Mon Jun 8 01:06:47 1998 Tim Janik <timj@gtk.org> - - * glib.h: added enum-helper macros for code generation. - added G_BREAKPOINT(). - -Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org> - - * gmem.c: commented out MEM_PROFILE and MEM_CHECK, causing weird - problems - -Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_chunk_new0): convenience macro, for allocating small chunks - like g_chunk_new() with additional 0 initialization. - -Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org> - - * ghash.c (g_hash_table_insert): wrote a comment describing why - a hash node's key should not also get replaced when overriding - previous entries. - -Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_string_sized_new): new function to controll the preallocated - size of a GString. - - * glib.h (g_strreversed): new function to reverse a string. - -Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org> -(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch) - - * gutils.c: Restored a missing prototype for g_vsprintf. - -Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: conditionally define NULL, FALSE and TRUE. - (g_mem_chunk_create): new convenience macro as a short hand for - g_mem_chunk_new(). - (g_chunk_free): new convenience macro to be consistent with g_chunk_new. - -Tue, 19 May 1998 09:00:02 +0200 Paolo Molaro <lupus@debian.org> - - * gcompletion.c: generic functions for com<TAB>pletion... - -Sun May 17 10:48:27 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): provide usefull default - specifications for identifier_spec and symbol_spec. - - * glib.h: new functions g_slist_nth_data and g_list_nth_data to return - the data of the nth element in the list. - -Fri May 15 22:31:49 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) - that for some reason didn't produce a compiler warning on my machine - (is va_end defined to nothing for i386?). - -Fri May 15 12:32:08 1998 rodo <doulik@karlin.mff.cuni.cz> - - * gscanner.c: replaced some snprintf with g_snprintf - -Fri May 15 00:56:59 1998 Tim Janik <timj@gtk.org> - - * glib.h: further support for gcc function attributes: G_GNUC_FORMAT, - G_GNUC_NORETURN and G_GNUC_CONST. - - * gscanner.c (g_scanner_stat_mode): changed stat() to lstat(). - (g_scanner_msg_handler): "\n" at end of line! - (g_scanner_foreach_symbol): new function to iterate over the symbol - table (GScanner does value-wrapping). - -Thu May 14 04:14:12 1998 Tim Janik <timj@gtk.org> - - * glib.h: typedef gint gboolean; - this is needed to provide portability with big-endian platforms (e.g. - try sizeof(bool) for c++ on big-endians - it's 4). - this is also needed to maintain some_union.d_gint==some_union.d_gboolean. - plus, gint to gboolean casts and vice versa need to be possible without - loss. - -Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib/glib.h: Added macros G[U]INT_TO_POINTER() and - GPOINTER_TO_[U]INT for storing small integers integers - inside pointers. - - * glib/testglib.c: Print sizeof() results - as g_print("%ld", (glong)sizeof(foo)), to deal with - size_t being long on Alpha's. - -Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org> - (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch) - - * glib.h gstring.c gmessages.c: Added some missing - const to arguments. - - * gutils.c (g_strsignal.c): Added missing return statements. - -Mon May 11 21:11:54 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c gmessages.c: Moved g_error, g_warning, g_message and - g_print from gutils.c to new file gmessages.c, to avoid having to - include <unistd.h> in gutils.c which was causing problems for the - g_strsignal implementation on FreeBSD boxes. - -Mon May 11 09:53:43 1998 Tim Janik <timj@gtk.org> - - * configure.in: preserve automake CFLAGS. - - * Makefile.am: fully rename the created library to libglib-1.1.la. - this means we need to change certain portions of the Makefile.am on - major/minor version bumps. - - * ltmain.sh: the -release option is not required anymore. - - * glib.h: provide G_GNUC_FUNCTION and G_GNUC_PRETTY_FUNCTION to - avoid conditionals. unconditionally define NULL, TRUE, FALSE, MAX, - MIN, ABS and CLAMP, these macros might be screwed from other headers. - -Mon May 11 01:44:10 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: new file, gdatasets implement the object data - mechanism from GtkObject. a generic data pointer is associated with - a certain location and a key id. - -Sat May 9 20:08:12 1998 Owen Taylor <otaylor@gtk.org> - - * glib/gmem.c: Experimentally restore GMemChunk - to its primeval state - where mem areas are - freed incrementally instead of searching the tree - every time a mem area is completely empty. Also, - always keep one mem chunk around. (Reduced calls - to malloc() a lot, but doesn't really improve - performance significiantly) - -Thu May 7 08:17:28 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_GNUC_PRINTF): - (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument - checking of gcc. - - * gstring.c: const corrections, string!=NULL checks at function entry. - (g_string_down): new function for tolower(3) conversion. - (g_string_up): new function for toupper(3) conversion. - - * gutils.c: const corrections. - (g_strdown): g_string_down() counterpart. - (g_strup): g_string_up() counterpart. - - * gscanner.c (g_scanner_unexp_token): - (g_scanner_error): - (g_scanner_warn): new functions to let a scanner put out warnings - or errors, especially to react on unexpected tokens. - - * gslist.c: - (g_slist_index): find out about about the position of a - certain data pointer. - (g_slist_position): find out about about the position of a - certain node. - - * glist.c: - (g_list_index): find out about about the position of a - certain data pointer. - -Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org> - - * ltmain.sh: added a new commandline flag -postfix similar to -release, - but will immediately change the library name. - - * Makefile.am: specify -postfix and -version-info - - * configure.in: version bump to 1.1.0. added GLIB_INTERFACE_AGE and - GLIB_BINARY_AGE. calculate LT_* variables for libtool. - -Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c: (g_strcasecmp). Check for isupper before - taking tolower, and account for macroized tolower. - - * gutils.c (g_error): Check for recursion. - -1998-04-27 Elliot Lee <sopwith@cuc.ml.org> - - * glist.c (g_list_position): New function to find the position of - a link in a list - should be the inverse of g_list_nth(), but - haven't tested it so poof. - -Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org> - - * gstring.c : Check arguments more carefully, - (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de) - -Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_direct_compare): Removed, because that's what - a NULL comparison function means. And it wasn't 64 bit safe. - -Mon Apr 6 18:43:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_get_token_ll): fixed a bug that caused floats - of the format ".xxx" to be parsed as "xxx". - -Fri Apr 3 20:36:35 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_parse_debug_string): Make debug string - parsine case-insensitive - -Fri Apr 3 17:03:18 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: corrected possible overrun when inserting into - GStrings (thanks Elrond) - -Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu> - - * testglib.c: Removed literal german from strings - to appease SGI compiler. - -Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in glib glibconfig.h.in: Add test for atexit/on_exit - - use on_exit if atexit not found in definition of ATEXIT. - -Wed Mar 25 15:23:37 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Switched glibconfig.h rule from HEADERS - to DATA, so that it is not added to DISTFILES - -Wed Mar 18 22:27:08 PST 1998 Manish Singh <yosh@gimp.org> - - * garray.c: g_rarray_truncate length done correctly - -Sun Mar 15 07:13:34 1998 Tim Janik <timj@gimp.org> - - * gutils.c: changed *_handler variables to be named glib_*_handler, - so you can easily access them from gdb. - -Sat Mar 14 17:47:43 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Don't refer to current directory as $(top_builddir) - to avoid confusing non-gmakes - -Sat Mar 14 01:37:35 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am (configincludedir): Moved glibconfig.h to - $(pkglibdir)/include - -Tue Mar 10 02:03:12 1998 Tim Janik <timj@gimp.org> - - * gscanner.c (g_scanner_destroy_symbol_table_entry): new function to - free symbol table entries upon destruction - (gtk-gronlund-980309-0.patch.gz). - -Mon Mar 9 15:02:21 1998 Tim Janik <timj@gimp.org> - - * glib.h: changed *_length functions to return guint. - changed *_nth functions to take guint as argument. - - * glist.c: adapted g_list_length and g_list_length. - - * gslist.c: adapted g_slist_length and g_slist_length. - -Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gutils.c : changed g_strcasecmp - to take gchar* not guchar* - - * testglib.c: Remove trailing ; after functions - -Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gstring.c: Added g_string_insert[_c]() - and g_string_erase(). - - From: Stefan Wille <1wille@vsys1.informatik.uni-hamburg.de> - -Mon Feb 16 23:05:06 1998 Owen Taylor <owt1@cornell.edu> - - * glist.c (g_list_insert_sorted): Changed function - so elements are always inserted, even if they compare - equal with another. - -Thu Feb 12 22:48:11 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c glib.h: removed deprecated g_string_equal - and g_string_hash. - -Tue Feb 10 13:04:36 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in: Add check to see if the C library's - iswalnum can actually be used. (Not true for - Linux libc-5.4.38) - -Sat Feb 7 11:48:09 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c gutils.c: added some additional consts in - appropriate places to remove a warning - -Sat Feb 7 11:15:54 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c: include <ctype.h> for tolower() - -Fri Jan 30 23:57:17 PST 1998 Manish Singh <yosh@gimp.org> - - * added and autoconfigured in a new utility function - g_strcasecmp - -Wed Jan 28 23:53:27 PST 1998 Manish Singh <yosh@gimp.org> - - * glist.c - * gslist.c - * testglib.c: the sort functions compared backwards. Fixed - * glib.h: list iterator macros now check for NULL pointers - -Tue Jan 27 09:46:57 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: g_string_prepend and g_string_prepend_c had - interchanged src and dest parameters for g_memmove. Fixed. - -Tue Jan 27 01:38:52 PST 1998 Manish Singh <yosh@gimp.org> - - * gslist.c: fixed a really, really lame error. g_slist_insert - didn't hook the data in! Reworked the routine to reflect the - functionality of g_list - -Wed Jan 21 01:13:25 1998 Tim Janik <timj@psynet.net> - - * Applied patch from (Raja R Harinath <harinath@cs.umn.edu>) - to add function g_snprintf. - * configure.in (AC_CHECK_FUNCS): Check for vsnprintf. - * glib.h: Add prototype for g_snprintf. - * glibconfig.h.in: Add HAVE_VSNPRINTF. - * gutils.c (g_snprintf): new function. - -Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.{c,h} gscanner.c: - renamed g_string_equal => g_str_equal - renamed g_string_hash => g_str_hash - And const corrected. Old functions left in for now. - -Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net> - - * gutils.c (g_strerror): changed message for EAGAIN from - "no more processes" to "try again" since EAGAIN is used with - functions else than fork(). - - * gscanner.c (g_scanner_get_token_ll): use strtol() instead of - strtoul() to avoid conflicts with solaris. - - * merged the glib portions from Jan 2 to Jan 7 out of gtk+/ChangeLog - into this file. - -Wed Jan 7 02:14:30 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: - * glist.c: - * gslist.c: - * testglib.c: Added g_[s]list_insert_sorted function - and appropriate tests in testglib - -Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h: Changed guint32 -> guint for bitfields. - (Bitfields must be int or unsigned int?) - -Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: reverted glibconfig.h and glib.h files back to the - way they were before my ugly hack. - - * gscanner.c: removed inlines from clist and gscanner - -Tue Dec 23 02:49:51 1997 Tim Janik <timj@psynet.net> - - * gscanner.c: new file for GScanner: Flexible lexical scanner for - general purpose. - * glib_pre2.h: added GScanner includes. added g_strconcat and g_strtod. - gutils.c (g_strconcat): new function for string concatenation of NULL - terminated parameter list. - (g_strtod): new function to perform best string to double conversion - with or without consideration of the current locale. - -Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net> - - * glist.c: minor optimizations: - (g_list_append): `if' optimized for common code path, commented out - unneccessary `assert', saved one variable assignment. - (g_list_prepend): saved two (conditioned) variable assignment. - (g_list_insert): saved one (conditioned) variable assignment, - saved one variable assignment. - (g_list_remove): `if' optimized for common code path, saved two - variable assignments by using `g_list_free_1' (which is even - faster) instead of `g_list_free'. - (g_list_reverse): saved allocation of one variable, saved one - variable assignment. - -Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: this file now gets concatenated by makeglib_h from - glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got - created by configure (done by Jay Painter). - - * glib_pre2.h: the g_assert*() and g_return_*_fail() macros - are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts - when used within if (...) g_macro(); else ... conditionals. - -Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to - not call 'g_string' but to simply stringify the - expression. Calling 'g_string' causes the expression to be - expanded which is undesired. - -Sun Dec 1 01:30:48 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * Started ChangeLog + * configure.in: set glib version to 1.3.0. diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 7add274d9..f9b8b0664 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,2841 +1,23 @@ -Thu Feb 04 20:42:24 1999 Tor Lillqvist <tml@iki.fi> +Sat Mar 6 11:03:08 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) - * glibconfig.h.win32 config.h.win32: Update GLIB_MICRO_VERSION. + * gutils.c (g_get_any_init): add OS/2 changes. + change '\\' in HOME to '/'. -1999-02-04 Christopher Blizzard <blizzard@redhat.com> +1999-03-03 Josh MacDonald <jmacd@spin.dsl.pacbell.net> - * glib.spec (Packager): Change my email address + * glib.def: g_spaced_primes_closest was omitted here, so I + couldn't build Xdelta on Windows. -Thu Feb 4 01:45:01 PST 1999 Shawn T. Amundson <amundson@gtk.org> +1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - * ChangeLog - NEWS - README - configure.in - glib.spec - docs/glib-config.1: version=1.1.15 + * gutils.c (g_get_any_init): Fixed yet another bloody + implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche + <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure + test better than that, but have no idea, how to do that easily. - * Released GLib 1.1.15 +Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org> -Tue Feb 02 00:08:54 1999 Tor Lillqvist <tml@iki.fi> + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. - * gmessages.c (g_log_default_handler): (Win32:) Don't call - ensure_stdout_valid (which would open an unneeded console window) - if we're calling a logging function. Define ensure_stdout_valid - as an empty macro on Unix. - - * gutils.c (g_get_any_init): (Win32:) Trust HOME first if defined, - then try HOMEDRIVE and HOMEPATH. - -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). - -Fri Jan 22 16:51:44 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Added galloca.c. - - * galloca.c: - Compile even if G_NATIVE_ALLOCA is not defined. - Don't use g_free and g_malloc [yet?]. Code appears to depend on - internal malloc() alignment sizes. - - * tests/alloca-test.c: - Always test internal alloca replacement too, even if we have a - working alloca. - Make tests a little bit better by adding recursion - (more stack activity). - -Fri Jan 22 13:41:41 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * configure.in: - Add checks for alloca, defining G_NATIVE_ALLOCA if present. - - * galloca.c: - Import replacement alloca implementation from gettext 0.10.35. - Begin to convert to using GLib types and functions. - - * glib.h: - New macros g_alloca, g_alloca_gc, g_alloca_new, to perform - stack-based memory allocations. - - * tests/Makefile.am, tests/queue-test.c, tests/alloca-test.c: - New tests for g_alloca_*, GQueue ADT. - - * tests/stack-test.c: - Fix pointer casts, include config.h, and - call g_stack_free at end of run. - -Fri Jan 22 11:58:13 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Add gqueue.c. - - * glib.h: - Add GQueue struct and prototypes. - Remove g_stack_free macro. - - * gqueue.c - New file. Implementation of a queue ADT. - - * gstack.c: - Rename _g_stack_free back to g_stack_free. - - * tests/Makefile.am, tests/stack-test.c: - New test for GStack objects. - -Fri Jan 22 02:06:10 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * gstack.c: - New stack ADT implementation. - - * glib.h: - Add g_stack function prototypes and macros. - -Thu Jan 21 23:55:54 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * TODO: - New file. Short notes on what has been said in e-mail, plus a - couple other new items. - - * glib.h, glist.c: - New function g_list_delete(). Removes a node from the list, - then frees it. - -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 - expiration times > 1sec. - -1998-12-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in (have_threads): Changed the last pthread_cond_init - to pthread_attr_init. - -Fri Dec 18 00:03:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmain.c: - (g_main_is_running): new function to check whether a main loop has been - quitted. - (g_main_new): added a gboolean argument to determine whether the loop - should be considered initially running or not. however, g_main_run () - will still reset the main loops running state to TRUE upon initial - entrance. - - * gmain.c: - (g_main_iterate): documented this function's purpose in 5 steps. - for step 2), flag sources as G_SOURCE_READY even if !dispatch and - check G_SOURCE_READY prior to (*prepare), so we don't call (*prepare) - on them multiple times. - -Thu Dec 17 23:43:47 1998 Tim Janik <timj@gtk.org> - - * gmain.c (g_main_add_poll): reordered arguments, so GPollFD* comes - first, <sigh> (sorry Snorfle, i should have let you know in the first - place). - (g_main_dispatch): stack G_HOOK_FLAG_IN_CALL flags. call source's - destructor when destroying a source. - -1998-12-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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. - -Wed Dec 16 23:04:26 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.9 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: version=1.1.9 - -Wed Dec 16 22:32:13 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * glib.h: - giounix.c: s/g_main_poll_add/g_main_remove_add/g - s/g_main_poll_remove/g_main_remove_poll/g - s/g_main_poll_add_unlocking/g_main_add_unlocking_poll/g - (from Tim Janik) - -Wed Dec 16 20:04:10 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: check for pthread_attr_init in all cases, du4 - needs this since most of the other functions are just #defines - -Thu Dec 17 04:10:49 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_LOCK_DECLARE_*): if !G_THREADS_ENABLED, eat the - trailing semicolon with a bogus function declaration, instead - of with a bogus variable declarations, so we avoid unused - variable warnings. - -Wed Dec 16 07:49:16 PST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.8 (CVS tag is GLIB_1_1_8a) - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * giounix.c (g_io_channel_unix_get_fd): Fixed small bug. - -1998-12-16 Joel Becker <jlbec@ocala.cs.miami.edu> - - * glib.h, gscanner.c: changed func_data to user_data in - g_scanner_scope_symbol_foreach and associated friends, because - AIX headers #define func_data. - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Fixed stupid bug, that made - g_static_mutex_lock(*mutex) not work as expected. - - * docs/glib-config.1: Updated to reflect the existence of gthread. - - * gmain.c (g_main_poll_add_unlocking): Changed - g_main_poll_add_unlocked to g_main_poll_add_unlocking to match - semantic, (indeed, main_loop must be locked, when calling this - function). Removed the unlocking from the end of that function, as - that is not right. Made a 'HOLDS' comment above the function. - -Wed Dec 16 03:16:58 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.8, binary age 0, interface age 0. - - * glib.h: changed g_lock() to G_LOCK(), g_unlock() to G_UNLOCK() and - g_trylock() to G_TRYLOCK(), since these are macros that expand to - nothing with --disable-threads. - changed G_LOCK_DEFINE() to G_LOCK_DECLARE() and introduced - G_LOCK_DECLARE_STATIC() to achive the results of static G_LOCK_DECLARE(). - changed semantics of g_thread_supported to g_thread_supported() so it - can be used as a function like g_module_supported(). the actuall - definition is still a macro that expands into a variable for - performance reasons though. - various indentation and coding style cleanups. - - * configure.in: added --enable-threads that defaults to yes. - - * gmutex.c: changed tests g_thread_supported to g_thread_supported (), - changed variable settings of g_thread_supported - to g_threads_got_initialized. - - garray.c: - gcache.c: - gdataset.c: - gdate.c: - ghash.c: - glist.c: - gmain.c: - gnode.c: - gslist.c: - gstring.c: - gtree.c: - gutils.c: - changed s/g_lock/G_LOCK/, s/g_unlock/G_UNLOCK/, - s/static G_LOCK_DEFINE/G_LOCK_DECLARE_STATIC/. - -Tue Dec 15 23:16:05 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README - configure.in: - glib.spec: - docs/glib-config.1: Incremented version - -Wed Dec 16 22:29:48 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * configure.in: fixed the AIX thread checking. - Just an error on the wildcard. BTW, -D_THREAD_SAFE - is correct for AIX. - -Wed Dec 16 02:02:48 1998 Tim Janik <timj@gtk.org> - - * glib-config.in (lib_glib): fixed library and flag ordering for - --libs - -Tue Dec 15 17:17:46 1998 Owen Taylor <otaylor@redhat.com> - - * glib.h giounix.c giochannel.c: Use an "inheritance" - scheme for IO channel memory allocation.h - -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 - set up the parser. So use a different date that Solaris seems - to like. - -1998-12-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Dont complain, if --without-threads or - --with-threads=none is supplied; Test for pthread_attr_init - instead of pthread_cond_init, if threads seems to be supported by - standard glib. (CFLAGS): Use G_THREAD_CFLAGS for compiling of glib - as well. - - * glib.h, gmutex.c: Changed private to private_key to avoid - problems when compiling with under C++. - -1998-12-15 Jeff Garzik <jgarzik@Pobox.com> - - * configure.in: - bugfixes, correctly support --without-threads and friends - - * gthread/testgthread.c: corrected 64-bitness problem - -Tue Dec 15 10:40:09 1998 Owen Taylor <otaylor@redhat.com> - - * gnode.c glist.c gslist.c: Make sure all - calls to g_node_validate_allocator are within - current_allocator lock, so we have consistency - on that point. (Should not really matter, - but this way we match the comments) - - * glist.c (g_list_free_1): Removed some lines - that should never have been committed. (For - debugging) - -1998-12-11 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/gthread-nspr.c, configure.in: Added new default thread - implementation on top of the mozilla nspr library. - - * gmem.c, gmessaged.c, gthread/gthread.c, gthread/gthread-*.c: - Changed GStaticMutex and GStaticPrivate in gmem.c and gmessages.c - into GMutex and GPrivate resp. to make error reporting and use of - gmem possible in most (not all, though) gthread functions. Also - initialized the modules via new init functions. - - * configure.in: Fixed syntax bug in definition of type - GStaticMutex. - - * gthread/testgthread.c: Updated to work with nspr, but see note - there for remaining problems. - -1998-12-10 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gmutex.c, glib.h: Now abort, if a mutex/cond/private is - allocated before the thread system is set up. - - * gthread/gthread.c (g_thread_init): Removed g_thread_try_init(), - as it is not necessary. Changed the error message. Corrected logic - for g_thread_use_default_impl. - - * gmutex.c (g_mutex_init): Keep the thread private data array - after calling g_thread_init(). - -1998-12-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/testgthread.c (new_thread): Now also working for posix - threads; (wait_thread): Now a better implementation, that does not - use 100% CPU. - - * Made the thread related code follow GNU coding standard. - - * Made a comment (HOLDS:) above each function, that expects the - given locks to be held. - - * Changed try_lock to trylock throughout. - - * glib.c: Eventually removed the #if 0'ed code for old GStaticMutex. - - * glib.c: Corrected g_trylock macro for G_DEBUG_LOCKS. - - * 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. - - * gthread/gthread-solaris.c: do not use g_log for errors, as g_log - uses these module and endless recursions might happen, just use a - plain fprintf(stderr,...). - - * 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 - of Sebastian Wilhelmi <wilhelmi@ira.uka.de>) - - - configure.in now looks for a system thread implementation. - Currently support is included for POSIX threads - and Solaris threads. The default support is built - into a separate library -lgthread. - - - The thread implementation can be modified by passing - a vector of functions g_thread_init(). - - - The default or supplied functions are used to - implement a small set of thread functions for - mutexes, condition variables, and thread-private - data. - - - GLib now uses these functions to provide thread - safety. (In the sense that all global static - data is locked... individual structures must still - be locked by the caller.) - -Sat Dec 12 19:08:59 1998 Tim Janik <timj@gtk.org> - - * configure.in: always define G_HAVE_INLINE if __cplusplus is - defined, reported by Wan-Teh Chang <wtc@netscape.com>. - -Thu Dec 10 21:49:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.7 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: Increased version to 1.1.7 - -Wed Dec 9 22:44:44 EST 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * Removed #define of G_COMPILED_WITH_DEBUGGING from glibconfig.h - It shouldn't be there, and it was causing a double #define. - (config.h defines it also) - -Tue Dec 8 12:18:38 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.6 - - * NEWS: updated - -Mon Dec 7 23:10:41 PST 1998 Manish Singh <yosh@gimp.org> - - * gmain.c: fixes to #undef HAVE_POLL case - -1998-12-02 Havoc Pennington <hp@pobox.com> - - * 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. - (g_date_set_year): Same. - -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 - 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 - flags, rather than re-checking the validity of the actual - values. This should be the correct behavior, the old way was - leftover cruft. - - * glib.h, gdate.c: Changed MDY to DMY throughout. - -Sat Nov 28 12:53:47 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am configure.in acconfig.h giochannel.c - glib.h glist.c gmain.c gutils.c: - - - Revised GIOChannel to provide a generic virtual-function - based interface. - - Added unix fd-based GIOChannel's - - Added generic main-loop abstraction - - Added timeouts and idle functions using main-loop abstraction. - -1998-12-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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 - include time.h. - -Tue Dec 1 23:01:44 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - 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/ - include time.h. - - * glib.h: removed #include <time.h>, changed time_t paramter of - 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> - - * glib.h: - * ghook.c: added g_hook_list_marshal_check() to eventually destroy - hooks after they got marshalled. - -Sun Nov 29 17:31:43 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * configure.in, Makefile.am, gmodule/Makefile.am: - Put -DFOO stuff into Makefile.am INCLUDES. - -Sun Nov 29 14:17:09 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: put debug -DFOO stuff into CPPFLAGS, not CFLAGS, - so CFLAGS can be overridden at make time properly - -Sat Nov 28 01:23:25 1998 Tim Janik <timj@gtk.org> - - * ghash.c: implemented incremental freezing facility. - -Thu Nov 26 01:36:20 1998 Tim Janik <timj@gtk.org> - - * 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. - -Tue Nov 24 18:57:59 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981120-0, change log appended below. - - * glibconfig.h.win32: passthrough 64-bit constants unchanged, VC++ - infers them - -Fri Nov 20 22:26:43 1998 Tor Lillqvist <tml@iki.fi> - - * glib.h: Moved MSC pragmas from glib.h to glibconfig.h.win32. - peer_offset field in WIN32 part of GIOChannel removed, need_wakeups - added. Added "extern" to __declspec(dllimport). - - * gutils.c: Initialise need_wakeups. - - * glibconfig.h.win32: Pragmas moved here. Define G_GINT64_CONSTANT. - - * gmodule/gmodule.def: Added g_module_build_path. - - * gscanner.c: (g_scanner_cur_value) Move initailisation of v - to before its use. - - * glib.def: Added g_(s)list_sort. - - * makefile.msc: A few more comments. - -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 - 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 - or source incompatibilities. It does add a member to the - GHashTable structure. - -Tue Nov 24 09:40:00 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed the GListAllocator type and its g_*_allocator_*() - function variants (which weren't working anyways) in favour of a - generic GAllocator type. new functions: - g_allocator_new, g_allocator_free, g_slist_push_allocator, - g_slist_pop_allocator, g_list_push_allocator, g_list_pop_allocator, - g_node_push_allocator and g_node_pop_allocator. - - * gstring.c: removed bogus slist allocator code. - * gtree.c: maintain own list of free tree nodes and don't waste - GSLists for that, removed bogus slist allocator code. - * glist.c: use GAllocators for node allocation. - * gslist.c: use GAllocators for node allocation. - * gnode.c: use GAllocators for node allocation. - - * gdataset.c: cleanups wrt automatic initialization. - -Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h garray.[ch]: added g_array_insert_vals() to - insert elements at an arbitrary index, and - g_array_insert_val() macro. - -Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gslist.c: new function g_slist_copy() to duplicate a list with all its - data pointers. - * glist.c: new function g_list_copy. - -Sat Nov 21 14:57:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: Updated to version 1.1.5 - - * Released GLib 1.1.5 - -Wed Nov 18 1998 Elliot Lee <sopwith@redhat.com> - - * gdataset.c: There was a code path into g_data_set_internal - through a function (g_datalist_id_set_full). Neither function - checked for g_dataset_init having been run, but - g_data_set_internal used the memchunk. I added - a check into g_data_set_internal so it will do the - initialization if needed. (There's probably a better way.) - -Mon Nov 16 07:48:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_bit_nth_msf): fixed off-by-one error, so we don't waste - a loop iteration if (-1) was passed, reported by Andreas Bombe - <andreas.bombe@munich.netsurf.de>. - -Fri Nov 13 15:17:34 1998 Owen Taylor <otaylor@redhat.com> - - * glist.c gslist.c glib.h: Added g_list_sort() and - g_slist_sort() to merge sort GLists and GSLists. - Submitted by Sven Over <sven.over@ob.kamp.net> - over a year ago! - - * testglib.c: Test the new sort functions. - -Wed Nov 11 23:23:22 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am : INCLUDES is the right way to add to CFLAGS, not - DEFS. Also there are bugs with '+=' in makefiles. - Got rid of DEFS line by moving G_LOG_DOMAIN setting into INCLUDES. - Removed redundant -I from INCLUDES. - -Wed Nov 11 18:11:24 EST 1998 Gregory McLean <gregm@comstar.net> - - * docs/*.sgml : Batch of new documentation that should be easier - to maintain and extend. Plus generate whatever sort of doc file - you would like. I didn't change the Makefile stuff as I'm not sure - what default doc type people want. Oh and this is all DocBook format. - Enjoy! - -Tue Nov 10 17:12:45 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: use __extension__ for long long on gcc >= 2.8 and - egcs, and provide a G_GINT64_CONSTANT wrapper so -ansi -pedantic - compiles clean. - - * glib.h: make the endian x86 asm __const__ so the compiler can do - better optimizations. Also remove the cc clobber, these shouldn't - be changing condition codes. Ditch some redundant casts. Add an - optimization for 64-bit endian conversions in x86. Use constant - wrapper for the generic method. - - * testglib.c: use constant wrappers for 64-bit constants - -1998-11-04 Phil Schwan <pschwan@cmu.edu> - - * configure.in: Added 'strncasecmp' to the list of functions to be - searched for. - * glib.h: Added a prototype for 'g_strncasecmp' - * gstrfuncs.c: (g_strncasecmp) new function modeled closely after - 'g_strcasecmp' - -Wed Nov 4 15:06:44 PST 1998 Manish Singh <yosh@gimp.org> - - * config.h.win32 (new file) - * glibconfig.h.win32 - * glib.def - * makefile.msc: applied glib-tml-981104, win32 sync - -1998-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * glib.h: - * garray.c: - (g_array_remove_index): new function for removing an entry from an - array while preserving the order - (g_array_remove_index_fast): new function for removing an entry - from an array. the order might be distorted - (g_ptr_array_remove_index_fast, g_ptr_array_remove_fast): new - functions; working similiar to the above. (they have the semantic - of the old g_ptr_array_remove[_index] functions) - (g_ptr_array_remove_index, g_ptr_array_remove): new semantic. now - the order of the elements in the array is not changed - (g_byte_array_remove_index, g_byte_array_remove_index_fast): new - functions; byte_array wrapper for g_array_remove_index[_fast] - -Sun Nov 1 23:00:18 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * configure.in: endian macros defined using the glibconfig.h - mechanism now - - * ghook.c: casts for GHookFunc and GHookCheckFunc to avoid warnings - -Sat Oct 31 20:14:22 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981101-1 patch from Tor Lillqvist (ChangeLog - entry appended below) - - * testglib.c - * gstrfuncs.c - * glib.h: use G_HAVE_GINT64, since HAVE_GINT64 is gone - - * 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. - - * gutils.c: - (g_getenv): Better implementation on Win32. No loop necessary. - (g_get_any_init): Use P_tmpdir if defined as tmp directory. Don't - set home dir always to NULL on Win32. Don't use tmp directory as - last resort home directory, but return NULL if no home - directory is known (application must check). - - * makefile.msc: Better touch command, just COPYing a single file - sets the timestamp from that file, which isn't what touching should - do. - -1998-10-31 Raja R Harinath <harinath@cs.umn.edu> - - Land glib-rrh-19981025-0.patch. - * 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 - concluding "broken wctype". - (glibconfig.h): Use AC_OUTPUT_COMMANDS to put generation code into - config.status. - * glib.h: Remove a lot of tests and defines. All these have been - moved to `configure.in (glibconfig.h)'. - * gerror.c: Include <config.h>. - * 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. - added macros G_STRUCT_OFFSET(), G_STRUCT_MEMBER_P() and - G_STRUCT_MEMBER() for handling structure fields through their offsets. - (struct _GHookList): added a hook_free function member, that can be used - to free additional fields in derived hook structures. - g_hook_free(): if hook_list->hook_free != NULL, call this function prior - to freeing the hook. (this functionality should have been there in the - first place, it just got forgotten as an implementation detail). - -Wed Oct 28 00:49:32 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: G_BREAKPOINT for alpha from Robert Wilhelm - <robert@physiol.med.tu-muenchen.de> - -Tue Oct 27 07:25:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: - (g_scanner_sync_file_offset): new function for file input. - rewind the filedescriptor to the current buffer position and blow - the file read ahead buffer. usefull for third party uses of our - filedescriptor, which hooks onto the current scanning position. - (this became neccessary with the implementation of buffered - reads). - (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. - -Tue Oct 27 00:27:31 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: get rid of duplicate #g_htonl and friends in the - NATIVE_WIN32 part - -Mon Oct 26 22:42:01 PST 1998 Manish Singh <yosh@gimp.org> - - * glibconfig.h.win32 - * gutils.c - * makefile.msc: win32 patch from Tor Lillqvist (glib-tml-981027-0), - fixes some minor win32 buglets - -Mon Oct 26 22:12:03 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: reimplemented the endian stuff, using inline asm - for x86. #define g_htonl and friends. - - * testglib.c: new tests for the endian stuff - - * configure.in: care for AIX in gmodule linker flags test (from - Joel Becker <jlbec@raleigh.ibm.com>). Check $host_os for linux - instead of existance of /usr/include/linux - - * gutils.c: buh-bye evil warning. Thou hast been #ifdef'd out - of thine existance! - -Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed dummy structure definitions for struct _GCache, - _GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk. - - * gutils.c: implement glib's inline functions _after_ all include - statements have been processed. - removed Tor's MAXPATHLEN check since there already was one supplied - further down in this file. - (LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32, - since lcc maybe used on other platforms as well. why in hell is this - stuff required? - (g_get_any_init): for windows, if the user name is supplied, use it as - realname also. - in general, if there is no homedir specified, use the tmpdir that - we already figured. - - * gtimer.c (g_timer_elapsed): changed a g_assert() statement to - g_return_if_fail(). - - * applied glib-tml-981020-0.patch for WIN32 portability, added some - comments and g_return_if_fail() statements, minor indentation fixes. - ChangeLog entry from Tor Lillqvist is appended. - - * glib.h (struct dirent): use lower case structure members. - - * glib.h: - * makefile.lcc: - * makefile.msc: - s/COMPILING_GLIB/GLIB_COMPILATION/ - -1998-10-20: Tor Lillqvist <tml@iki.fi> - - * README.win32 glib.def gmodule.def - * glibconfig.h.win32 gmodule/gmoduleconf.h.win32: - New files for the Windows port. The .def files list exported - symbols for the Microsoft linker and compatibles. - - * configure.in: - Added checks for some platform-dependent headers: pwd.h sys/param.h - sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat. - - * gerror.c: - Conditionalized inclusion of system-dependent headers. Changes - for Windows: no gdb to do a stack trace. Just call abort(). - - * glib.h: - Changes for Windows: - - Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for - platform-dependent file name syntax elements. Added macros - G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for - platform-dependent search path syntax conventions. - - Added pragmas for Microsoft C to make it more pedantic. - - Marked GLib's global variables for export from DLL. - - Added the function g_strescape that escapes backslashes. - - Added functions g_path_is_absolute and g_path_skip_root to - handle platform-dependent file name syntax. - - Added the function g_getenv that expands environment variables - that contain references to other environment variables, as is - typical on Windows NT. - - Added the GIOChannel structure which is used to encapsulate the - IPC mechanism used by the GIMP's plug-ins, and possibly other - things later. On Unix a GIOChannel encapsulates just a file - descriptor. On Windows it contains a file handle from _pipe() and a - few other things related to the implementation of gdk_input_add - and GIMP plug-in communication. Subject to change. - - Removed duplicate declarations of the version variables. - - For the Microsoft compiler, declare own implementation of - ftruncate and the <dirent.h> functions. - - * gmem.c: - Define a symbolic name for the profiling table size. - - * gmessages.c: - Conditionalized inclusion of unistd.h. On Windows, output using - stdio to stdout. - - * gscanner.c: - 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. - - * gtimer.c: - Conditionalized inclusion of unistd.h and sys/time.h. Added - implementations for Windows. - - * gutils.c: - Conditionalized inclusion of platform-dependent headers. Use - the platform-independent file name syntax macros. - Conditionalize code on platform-dependent features. Added the - functions g_path_is_absolute g_path_skip_root and g_getenv. - Added the GIOChannel-related functions. Added - compiler-dependent Unix compatibility functions for Windows. - - * 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 - from gtk-config.1 in gtk - - * configure.in: - * Makefile.am: - * sanity_check: added in docs directory, change rule 'release' - to 'snapshot' and created a new 'release' rule for doing the - distribution. Added in a 'sanity' rule. - - * NEWS: - * 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_get_char): no more characters are available if read() returns - anything less than 1, not only on 0 return. - - * 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(). - (g_strjoinv): renamed from g_str_array_joinv(), string array is - now passed as last parameter. removed `const' qualifier from string - array pointer (again). - (g_strjoin): new function from sopwith to concatenate strings with - an additional seperator. - (g_strfreev): renamed from g_str_array_free. - -Sat Oct 24 22:23:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * gnode.c: small fix to g_node_children_foreach to make it work right. - From Paco Moya <paco@cadnotebk17.eecs.berkeley.edu> - -Wed Oct 21 19:22:58 1998 Tim Janik <timj@gtk.org> - - * configure.in (G_MODULE_HAVE_DLERROR): reverted part of the changes - from Sebastian Wilhelmi (1998-10-20). don't specify a specific loading - behaviour (i.e. RTLD_NOW) when we are not sure whether it is supplied. - changed the return value from (!f2 && f1) to (!f2 || f1) so we default - to not needing an underscore. reverted the extra plugin.c building, - because .lo files are not ELF libraries, this can't work. This needs - further investigation on Solaris... - -Wed Oct 21 17:03:05 1998 Tim Janik <timj@gtk.org> - - * 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 - the in_place arguments were skipped, the caller is supposed to pass a - g_strdup()ed string if he wants to retrive a new copy. indentation and - coding style fixups. added some g_return_if_fail() statements. - string array functions are prefixed with g_str_array_. - (g_strdelimit): return the modified string like all other g_str* - functions, that operate in place. - (g_strchug): renamed from g_str_chug(), removed in_place argument. - (g_strchomp): renamed from g_str_chomp(), removed in_place argument. - (g_strstrip): renamed from g_str_strip(), removed in_place argument. - (g_str_array_join): renamed from g_strconcatv(), since it actually - operates on a string array and has totaly different semantics from - g_strconcat(). check for separator != NULL, don't segfault if the first - string is NULL. removed the `const' from the string array that's passed, - so users can operate on gchar** string arrays. - (g_str_array_split): renamed from g_str_split() because we actually - produce a string array. reimplemented this function for efficiency. - removed macro aliases g_str_joinv and g_str_join. - -1998-10-20 Elliot Lee <sopwith@redhat.com> - - * glib.h, gstrfuncs.c: Move string join/split/free routines from - libgnome/gnome-string, rename, and add g_str_chug. - -1998-10-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: made the check for needed _ in module's func-names - work on solaris. (G_MODULE_NEED_USCORE must be set outside - AC_CACHE_VAL, dlopen(0,0) refused to work on solaris). - -Tue Oct 20 03:32:58 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in - * acconfig.h: added test for endianness - - * glib.h: #define endian macros for system and some conversions - between byte order - -Thu Oct 8 06:47:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: removed functions g_dataset_id_set_destroy and - g_datalist_id_set_destroy and macros g_dataset_set_destroy and - g_datalist_set_destroy. - added new functions g_dataset_id_remove_no_notify and - g_datalist_id_remove_no_notify plus associated macros - g_dataset_remove_no_notify and g_datalist_remove_no_notify, which - will remove a certain data portion without invokation of its destroy - notifier, this should only be used in very controled circumstances. - -Wed Oct 7 05:31:24 1998 Tim Janik <timj@gtk.org> - - * glib.h: - removed the #pragma } statement after extern "C" {. use - (c-set-offset 'inextern-lang 0) to fixup emacs cc-mode indentation. - - * glib.h: - * ghook.c: API and code cleanups. changed the G_HOOK_ACTIVE and - G_HOOK_IN_CALL enum vals to G_HOOK_FLAG_ACTIVE and G_HOOK_FLAG_IN_CALL. - changed the G_HOOK_IS_ACTIVE() and G_HOOK_IS_IN_CALL() macros to - G_HOOK_ACTIVE() and G_HOOK_IN_CALL(). - fixed the g_hook_find* functions, so they iterate over non-active - hooks as well. - (g_hook_first_valid): - (g_hook_next_valid): added an extra argument gboolean may_be_in_call, - which indicates whether G_HOOK_IN_CALL() hooks are considered valid - or not. these two functions are meant as iterators for the hook list - invocation, so they need to a) provide functionality to implement - may_recurse bahaviour and b) only walk active hooks. - -Tue Oct 6 14:29:47 1998 Tim Janik <timj@gtk.org> - - * gmem.c (g_malloc0): fixed memory offsett when ENABLE_MEM_CHECK is - defined and ENABLE_MEM_PROFILE is not (patch from Martin Pool - <mbp@wistful.humbug.org.au>). - -Sat Oct 3 01:18:10 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: - (g_hook_list_invoke): - (g_hook_list_invoke): - (g_hook_list_marshal): properly handle the first valid hook to call, - it maybe IN_CALL already. - (g_hook_list_marshal): minor name change. - -Fri Oct 2 23:21:21 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: renamed GHook.id to GHook.hook_id so we don't get troubles - with ObjC which reserves "id" as a keyword (Raja R Harinath - <harinath@cs.umn.edu>). - -Wed Sep 30 10:53:03 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: added ghook.c. - - * glib.h: - * ghook.c: generic callback maintenance functions. - - * glib.h: define G_GNUC_UNUSED. - -Fri Sep 25 00:04:37 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.4, binary age 0, interface age 0. - - * glib.h (struct _GScanner): dumped peeked_char and text_len in favour - of *text_end and *buffer for buffered read()s. - - * gscanner.c: changed peeking and retrival of next character so we - have buffered reads. fixed minor bug with number parsing error - reporting. made some static!!! variables local ones (why did we use - static temporary variables in the lowlevel tokenization code anyways?). - -Mon Sep 21 23:23:10 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.3 - -Mon Sep 21 07:43:13 1998 Tim Janik <timj@gtk.org> - - * glib.h: added g_renew() which works as g_new() for g_realloc(). - -Mon Sep 21 02:22:12 1998 Tim Janik <timj@gtk.org> - - * NEWS file update for upcoming release of GLib + GModule - version 1.1.3, binary age 0, interface age 0. (GModule uses - the same version numbers as GLib.) - - * glib.h: swap the inclusion of of float.h and limits.h to work - around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by - Per Abrahamsen <abraham@dina.kvl.dk>). - - * glib.h: - * gscanner.c: renamed the GValue union to GTokenValue, this should - not affect source compatibility in most cases. - - * ghash.c: added some g_return_if_fail() statements. make - g_hash_table_lookup_node() an inline function so we save an extra - function invokation on lookups. - -Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com> - - * ltmain.sh: Patch to libtool-1.2b to make --disable-static - work. - -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). - Returns the number of elements deleted. - -Fri Sep 18 11:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_memdup implementation - -Fri Sep 18 18:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: make the datalists a safe type (not using a generic - gpointer) by expecting a GData* argument in the g_datalist functions. - provide g_dataset_foreach() and g_datalist_foreach() functions that - allow a GDataForeachFunc function to walk the data lists. - (g_dataset_destroy_internal): made this function truely reentrant (i.e. - can be called from within destroy notifiers as well). - the *_foreach functions are _not_ reentrant (unless all the other - dataset and datalist functions). - -Fri Sep 18 03:41:20 1998 Tim Janik <timj@gtk.org> - - * gtree.c (g_tree_new): check for key_compare_func != NULL (reported - by Michal Kara). - -Thu Sep 17 18:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * config.h.in: removed from repository - - * install-sh - * missing - * mkinstalldirs: updated to latest automake version - -Thu Sep 17 06:36:25 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: implemented g_datalist_* along the lines of g_dataset, - but operates on an opaque gpointer *datalist; pointer, e.g. for the - implementation of GtkObject named data. - we cache a certain portion of the already freed data entries now, to - gain a slight performance improve with data reallocation. - -Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am glib-config.in l*: Update to libtool-1.2b, - change library versioning scheme to drop LT_RELEASE - from the -l line, while keeping it in the soname. - -Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org> - - * glib.h: explicitely include the prototypes for inline functions - to cure gcc warnings for -Wmissing-prototypes. - -Wed Sep 9 02:52:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -posix check for NeXTStep - -Tue Sep 8 05:04:06 1998 Tim Janik <timj@gtk.org> - - * glib.h: abandon the use of ATEXIT(), we keep the fallback - macros for backwards compatibility. people ought to use g_atexit(). - - * gutils.c (g_atexit): new function to take over the implementation - of ATEXIT. this function is guarranteed to succeed, similar to - g_malloc(). - -Mon Sep 7 20:07:38 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: comment the -std1 check and save LIBS properly - -Mon Sep 7 07:53:21 1998 Tim Janik <timj@gtk.org> - - * configure.in: check for all three inline keywords individually. - - * 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'. - 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 - prototypes if no inlinig can be performed. we special case most of the - stuff, so inline functions can have a normal implementation by defining - G_INLINE_FUNC to extern and G_CAN_INLINE to 1. - - * ltconfig: (compiler PIC flag test): special case linux for non - aout systems to honour lcc's position independant code (cases - "linux*aout)" and "linux*)" got added). (this needs to go into - libtool which does an advanced test, checking for __LCC__). - - * autogen.sh: take $CC=lcc into account by invoking automake with - --include-deps so lcc isn't scared by gcc's auto-dependancy - generation code. care about $ACLOCAL_FLAGS. optionally feature - autoheader. - - * minor fixups in other places to cure some of lcc's warnings. - -Sun Sep 6 19:08:53 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -std1 check for ANSI compliance (from gtk) - -Sun Sep 6 12:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: provide proper ATEXIT behavior on NeXTStep by !atexit - -Sat Sep 5 18:03:36 1998 Tom Tromey <tromey@cygnus.com> - - * gutils.c (GLIB_INLINE): Define. - * glib.h (GLIB_INLINE): New define. - (g_bit_nth_msf): Use it. Also, add prototype. - (g_bit_storage): Likewise. - (g_bit_storage): Likewise. - -Sat Sep 5 04:40:02 1998 Tim Janik <timj@gtk.org> - - * 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. - - * gmem.c: new function g_mem_chunk_alloc0() which will initialize - a memory area allocated with g_mem_chunk_alloc() with 0's. - -Wed Sep 2 19:13:28 1998 Owen Taylor <otaylor@redhat.com> - - * garray.c glib.h (g_array_[ap/pre]pend_vals): make - data argument const. - -Wed Aug 26 06:32:40 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstrfuncs.c: new function g_strnfill() to return a new string - of specified length, filled with a specific character. - -Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu> - - * testglib.c (main): Update the array tests. Reduce the number of - iterations for the prepend test from 10000 to 100 since it is - O(n^2) and was taking longer than I would like to wait. - - * garray.c: I've worked on the GArray interface, mostly. It was - seriously broken before and I hate to do it, but this is going to - break some code. It is important to do this now, because more and - more people are starting to use glib and the interface was both - broken and inconsistent. First, rename the _truncate functions of - both the GArray and GPtrArray classes to _set_size, since this - function can also be used to extend the arrays. GArray now - accepts two more initialization arguments: clear and element_size. - Instead of providing the type to each access function, the array - now stores the element size. Clear, if set, causes the library to - zero element's memory as the array expands. The major broken-ness - here was that array->len was in bytes, not elements. Now, since - the array knows its element size, array->len is correct and I have - removed the g_array_length macro. The only macro which now - accepts the type as an argument is g_array_index, which casts the - element to the right type--this interface does not change. The - append and prepend functions simply need the types removed. - g_ptr_array_remove_index now returns the removed element. - - * gprimes.c (g_spaced_primes_closest): Move this function out of - ghash.c and rename it from g_hash_closest_prime. Fix the primes - so that they are actually prime (they weren't all -- isn't that - nice?). - -Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstring.c: - * gstrfuncs.c: - (g_vsprintf): removed this function which was not publically - exported in glib.h. to export it, it should have been named - differently in the first place, since its semantics differ from - vsprintf(). apart from that, it was a possible cause for - problems since it worked on a previously allocated memory area and - was used in a lot places of glib. exporting it would have been a - guararant for problems with threaded programs. - (g_printf_string_upper_bound): exported this function to return - a string size, guarranteed to be big enough to hold the fully - expanded format+args string. added 'q', 'L' and 'll' flag handling. - in fact, the newly allocated area is in most cases much bigger than - required. - (g_strdup_vprintf()): new function returning a newly allocated string - containing the contents of *format and associated args (size is - calculated with g_printf_string_upper_bound()). - (g_strdup_printf): new function which wraps g_strdup_vprintf(). - - * configure.in: check for va_copy() or __va_copy() alternatively. - check whether va_lists can be copyied by value. - - * glib.h: provide a definition for G_VA_COPY. - - * glib.h: - * gmessages.c: - (g_logv): - (g_vsnprintf): - pass va_lists by value, not by reference, since this causes problems - on platforms that implement va_list as as arrays. internaly, use - G_VA_COPY (new_arg, org_arg); va_end (new_arg); to produce a second - va_list variable, if multiple passes are required. changed all - callers. - - * glib.h: - * gerror.h: - renamed g_debug() to g_on_error_query(), cleaned up a bit. - renamed g_stack_trace() to g_on_error_stack_trace() since both - functions cluttered different namespaces. - there is an appropriate comment in glib.h now that explains the - unix and gdb specific dependencies of both functions. - removed g_attach_process(). - g_on_error_stack_trace() should probably be handled with caution, - i've seem several different linux versions (2.0.x) become unstable - after invokation of this function. - -1998-08-18: Elliot Lee <sopwith@redhat.com> - - * In gmem.c, add the ability to exclude memory chunks from the - memory profiling information. - -Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_strndup - -Tue Aug 18 04:40:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: new function g_log_set_always_fatal() to set an - additional fatal_mask for log levels that are considered to be fatal - globally (required by gtk). since this mask is not domain-associated, - it is restricted to the log levels, introduced by glib itself. - - * gmem.c: - * grel.c: - * gtree.c (g_tree_node_check): - don't use g_print() calls for informational/debugging output, - but log all this stuff through g_log() with G_LOG_LEVEL_INFO. - libraries shouldn't use printf(), g_print() or g_printerr() at all. - -Tue Aug 18 02:46:44 1998 Tim Janik <timj@gtk.org> - - - * glib.h (__STRICT_ANSI__): if __STRICT_ANSI__ is defined, make - `inline' a noop, since strict ANSI rules don't permit `inline'. - -Mon Aug 17 15:21:42 1998 Tim Janik <timj@gtk.org> - - * grel.c: made private functions static. - -Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to - EXTRA_DIST - * glib.spec: version = 1.1.3 - -Mon Aug 17 01:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.m4: feature an extra MODULES parameter, so glib-config can - be invoked with the "gmodule" argument. - - * glib.h: changed the log level to G_LOG_LEVEL_CRITICAL for all - g_return*_if_fail statements, and made them issue a message - like "assertion `%s' failed". - - * gmessages.c (g_logv): ugh, don't pass log_domain as NULL to - g_log_find_domain. - -Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org> - - * version bump to 1.1.3, binary age 0, interface age 0. - - * glib.h: be nice to platforms that don't have gint64 and don't - issue #warning on every compilation. since glib doesn't require - gint64 itself, packages that need gint64 should test for this - themselves. - - * glib.h: - * gutils.c: added a new function g_vsnprintf(). - -Sun Aug 16 Elliot Lee - - glib.h: #error out if we don't recognize the SIZEOF_VOID_P - #warning if no gint64 - -Fri Aug 14 16:41:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: added static inline functions for bit mask tests: - g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage. - -Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: - revised the message handling system, which is now based on a new - mechanism g_log*. most of the assertment macros got adapted to - feature the new g_log() call with an additional specification of - the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN - is undefined upon the includion of glib.h, it'll be defined with a - value of (NULL) and thus preserves the original bahaviour for - warning and error messages. the message handler setting functions - for g_warning, g_error and g_message are only provided for backwards - compatibility and might get removed somewhen. - - * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain - to "GLib" upon compilation. we currently have to add this definition - to the DEFS variable. - * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start - of this file currently, since automake doesn't support per target - _CFLAGS yet. - - * glib.h: changed some gints to gbooleans, made a few const corrections, - removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some - in other required places. - - * gnode.c: - (g_node_prepend): - (g_node_insert_before): - (g_node_insert): - (g_node_append_data): - (g_node_prepend_data): - (g_node_insert_data_before): - (g_node_insert_data): - (g_node_append): - return (node), so these macros/functions can be usefully chained with - g_node_new(). - -Mon Aug 10 17:56:11 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: it's GTime now, and it's back! - -Mon Aug 10 02:17:19 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: minor hack to cause SUBDIRS (gmodule) to be build - last. we do this by making all-recursive-am depend on all-am. - -Sun Aug 9 15:56:11 1998 Tim Janik <timj@gtk.org> - - * configure.in: added GModule checks. generate files in gmodule/. - * glib-config.in: support library specifications `glib' and `gmodule'. - * Makefile.am: feature the gmodule/ subdir. - -Wed Aug 5 10:04:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.2 - -Wed Aug 05 01:15:36 1998 George Lebl <jirka@5z.com> - - * testglib.c: fix 64-bitness in g_prints, sizeof doesn't - seem to return int so I cast it for printing, probably - just cosmetic - -Tue Aug 4 19:54:06 PDT 1998 Shawn T. Amundson <amundson@gkt.org> - - * Released GLib 1.1.1 - -Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.1, binary age 1, interface age 0. - * NEWS: updates. - * README: updates. - * INSTALL: updates and fixes. - * COPYING: include the GNU LGPL, rather than shipping an empty file. - * AUTHORS: listed original authors here, and added people who made - significant improvements to glib. - - * glib.h: - * gutils.c: implement g_get_current_dir() which returns a newly - allocated string, instead of a g_getcwd() variant that operates - on a static buffer. - export glib_interface_age and glib_binary_age. - as a convenience, macro definitions have been added for - g_node_insert_data, g_node_insert_data_before, g_node_append_data and - g_node_prepend_data. - - * testglib.c: minor cleanups, print current dir. - -Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gnode.c: change order of gpointer data; field in struct _GNode to - be partly binary compatible with GList and GSList. - -1998-08-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * garray.c (g_ptr_array_remove_index): bugfix: index check for - array has been wrong. - -Fri Jul 31 22:17:05 1998 Tim Janik <timj@gtk.org> - - * testglib.c (g_node_test): added a GNode test. - -Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: compile gnode.c. - - * glib.h: - * gnode.c: added implementation of n-way trees. - - * gtree.c (g_tree_traverse): added a warning to the switch() statement - which says that G_LEVEL_ORDER is not implemented. - -Mon Jul 27 00:17:30 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.0 - -Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: #if 0'ed out the GTime definition, until it is definitively - needed. #if 0'ed out the g_getcwd() version, because it is the wrong - implementation. - -Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu> - - * glib.h: gtime changed to g_time. gtime is used in - /usr/include/time.h in NetBSD, causing multiple headaches. - If this isn't the right way of fixing it.... ;) - -Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: new functions to make a scanner scope sensitive wrt - symbol lookups. - g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol, - g_scanner_scope_remove_symbol, g_scanner_scope_add_symbol and - g_scanner_set_scope. - g_scanner_add_symbol, g_scanner_remove_symbol and - g_scanner_foreach_symbol are now aliases for scope 0. - -Mon Jul 20 23:05:34 1998 George Lebl <jirka@5z.com> - - * glib.h: typo fixed for alphas for gint64 - -Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.c: new fuction g_dirname() which returns a newlly - allocated string. - -Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.h: added a bunch of utility/wrapper functions: - g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(), - g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname(). - - * gutils.c: removed all g_str* functions. - * gstrfuncs.c: moved the bunch g_str* functions from gutils.c in this - place. this file shall never include <unistd.h> to avoid clashes for - some of the g_str* functions on some OSes. - -Fri Jul 10 00:29:03 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Renamed g_hash_table_lookup_full to - g_hash_table_lookup_extended to conform with naming conventions. - -Tue Jul 7 03:18:58 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Generic cleanup, added a function: - (g_hash_table_lookup_full): Return whether the lookup succeeded, - and also retrieve the key and value. This allows one to - distinguish between failed lookup and finding a NULL, and also - allows one to free a key in the hash. - -Mon Jul 6 10:12:05 PDT 1998 Manish Singh <yosh@gimp.org> - - * ltconfig: fix for properly detecting shared lib support on - SunPro cc (taken from libtool 1.2.a) - -Sat Jul 4 13:38:52 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: added g_array_length - -Tue Jun 30 11:58:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): take symbol_2_token into - account. react on valid/invalid string pairs. - -Sat Jun 27 21:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.m4: ftp.glib.org -> ftp.gtk.org, since glib.org isn't - ours. ;) - -Fri Jun 19 03:11:02 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: removed g_dataset_try_key, g_dataset_force_id and - g_dataset_retrive_key in favour of GQuarks. - a GQuark is an numeric id wich is associated with a certain string. - (g_quark_try_string): try to get the quark associated with this string, - if the lookup failed return 0. - (g_quark_from_string): get the associated quark for a string, if there - isn't currently a GQuark associated with this string, then allocate a - new quark and return that. - (g_quark_from_static_string): like the above function, but the string - isn't strdup()ed to save memory. - (g_quark_to_string): get the string that is associated with a certain - GQuark. - - * gdataset.c (g_dataset_id_set_data_full): invoke the destroy function - _after_ the new data has been setup. - -Thu Jun 18 02:35:21 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Changed messages for g_return_[val]_if_fail to - be somewhat more clear: assertion "blah" failed. - -1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * testglib.c (main): Use GINT_TO_POINTER casts to remove compiler - warnings. - - * grel.c: #include <string.h> - -Fri Jun 12 15:39:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (GScanner): cleanups of the structure fields (binary - incompatible). - -Fri Jun 12 00:39:28 1998 Josh MacDonald <jmacd@icw.EECS.Berkeley.EDU> - - * glib.h: add new hash and equal functions g_int_*. complement - g_direct_hash with g_direct_equal. - - * grel.c: new file, GRelations implement tuples of N-N mappings. - A comment in glib.h briefly describes the interface. - - * ghash.c: new function, g_hash_table_size - - * glib.h: new typedefs, gsize, gssize, gtime. - - * garray.c: new functions implementing a simplified GArray. This - GPtrArray is an array of gpointers and has functions to add and - remove elements, much like java.lang.Vector. - - * garray.c: new functions for the single-byte special case of - GArray. The functions g_byte_array* operate on arrays of bytes. - Internally, a GArray is used. - - * testglib.c: tests for g_ptr_array, g_byte_array, and g_relation... - -1998-06-11 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gdataset.c: #include <string.h> - -Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: new function g_dataset_retrive_key. adjusted prealloc - sizes, to take up less space on initial allocation. - -1998-06-10 Raja R Harinath <harinath@cs.umn.edu> - - * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2, - the version from which glib's libtool forked. Needed for people - who use post-1.2 alphas of libtool. - * configure.in (enable_mem_check, enable_mem_profile): Replace - `echo -n' with AC_MSG_CHECKING. - (fd_set): Explain test for `fd_set' better. - -Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org> - - * Makefile.am glib.m4 configure.in: - - Moved out from GTK+; added AM_PATH_GLIB macro. - -Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: renamed g_const_pointer => gconstpointer - -Tue Jun 9 17:47:33 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Remove #error - HP/UX. - -Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org> - [ Combination of: - gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>) - gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ] - - * glib.h ghash.c gstring.c gdataset.c gutils.c: - - Added new typedef g_const_pointer; expunged all incorrect - uses of 'const gpointer'. - - Fixed up warnings that that created, - - Changed GHashFunc and GCompareFunc to take g_const_pointer - arguments. (Necessary, but will cause warnings in existing - code until fixed) - - Added other new const in harmless positions. - -Mon Jun 8 01:06:47 1998 Tim Janik <timj@gtk.org> - - * glib.h: added enum-helper macros for code generation. - added G_BREAKPOINT(). - -Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org> - - * gmem.c: commented out MEM_PROFILE and MEM_CHECK, causing weird - problems - -Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_chunk_new0): convenience macro, for allocating small chunks - like g_chunk_new() with additional 0 initialization. - -Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org> - - * ghash.c (g_hash_table_insert): wrote a comment describing why - a hash node's key should not also get replaced when overriding - previous entries. - -Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_string_sized_new): new function to controll the preallocated - size of a GString. - - * glib.h (g_strreversed): new function to reverse a string. - -Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org> -(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch) - - * gutils.c: Restored a missing prototype for g_vsprintf. - -Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: conditionally define NULL, FALSE and TRUE. - (g_mem_chunk_create): new convenience macro as a short hand for - g_mem_chunk_new(). - (g_chunk_free): new convenience macro to be consistent with g_chunk_new. - -Tue, 19 May 1998 09:00:02 +0200 Paolo Molaro <lupus@debian.org> - - * gcompletion.c: generic functions for com<TAB>pletion... - -Sun May 17 10:48:27 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): provide usefull default - specifications for identifier_spec and symbol_spec. - - * glib.h: new functions g_slist_nth_data and g_list_nth_data to return - the data of the nth element in the list. - -Fri May 15 22:31:49 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) - that for some reason didn't produce a compiler warning on my machine - (is va_end defined to nothing for i386?). - -Fri May 15 12:32:08 1998 rodo <doulik@karlin.mff.cuni.cz> - - * gscanner.c: replaced some snprintf with g_snprintf - -Fri May 15 00:56:59 1998 Tim Janik <timj@gtk.org> - - * glib.h: further support for gcc function attributes: G_GNUC_FORMAT, - G_GNUC_NORETURN and G_GNUC_CONST. - - * gscanner.c (g_scanner_stat_mode): changed stat() to lstat(). - (g_scanner_msg_handler): "\n" at end of line! - (g_scanner_foreach_symbol): new function to iterate over the symbol - table (GScanner does value-wrapping). - -Thu May 14 04:14:12 1998 Tim Janik <timj@gtk.org> - - * glib.h: typedef gint gboolean; - this is needed to provide portability with big-endian platforms (e.g. - try sizeof(bool) for c++ on big-endians - it's 4). - this is also needed to maintain some_union.d_gint==some_union.d_gboolean. - plus, gint to gboolean casts and vice versa need to be possible without - loss. - -Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib/glib.h: Added macros G[U]INT_TO_POINTER() and - GPOINTER_TO_[U]INT for storing small integers integers - inside pointers. - - * glib/testglib.c: Print sizeof() results - as g_print("%ld", (glong)sizeof(foo)), to deal with - size_t being long on Alpha's. - -Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org> - (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch) - - * glib.h gstring.c gmessages.c: Added some missing - const to arguments. - - * gutils.c (g_strsignal.c): Added missing return statements. - -Mon May 11 21:11:54 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c gmessages.c: Moved g_error, g_warning, g_message and - g_print from gutils.c to new file gmessages.c, to avoid having to - include <unistd.h> in gutils.c which was causing problems for the - g_strsignal implementation on FreeBSD boxes. - -Mon May 11 09:53:43 1998 Tim Janik <timj@gtk.org> - - * configure.in: preserve automake CFLAGS. - - * Makefile.am: fully rename the created library to libglib-1.1.la. - this means we need to change certain portions of the Makefile.am on - major/minor version bumps. - - * ltmain.sh: the -release option is not required anymore. - - * glib.h: provide G_GNUC_FUNCTION and G_GNUC_PRETTY_FUNCTION to - avoid conditionals. unconditionally define NULL, TRUE, FALSE, MAX, - MIN, ABS and CLAMP, these macros might be screwed from other headers. - -Mon May 11 01:44:10 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: new file, gdatasets implement the object data - mechanism from GtkObject. a generic data pointer is associated with - a certain location and a key id. - -Sat May 9 20:08:12 1998 Owen Taylor <otaylor@gtk.org> - - * glib/gmem.c: Experimentally restore GMemChunk - to its primeval state - where mem areas are - freed incrementally instead of searching the tree - every time a mem area is completely empty. Also, - always keep one mem chunk around. (Reduced calls - to malloc() a lot, but doesn't really improve - performance significiantly) - -Thu May 7 08:17:28 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_GNUC_PRINTF): - (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument - checking of gcc. - - * gstring.c: const corrections, string!=NULL checks at function entry. - (g_string_down): new function for tolower(3) conversion. - (g_string_up): new function for toupper(3) conversion. - - * gutils.c: const corrections. - (g_strdown): g_string_down() counterpart. - (g_strup): g_string_up() counterpart. - - * gscanner.c (g_scanner_unexp_token): - (g_scanner_error): - (g_scanner_warn): new functions to let a scanner put out warnings - or errors, especially to react on unexpected tokens. - - * gslist.c: - (g_slist_index): find out about about the position of a - certain data pointer. - (g_slist_position): find out about about the position of a - certain node. - - * glist.c: - (g_list_index): find out about about the position of a - certain data pointer. - -Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org> - - * ltmain.sh: added a new commandline flag -postfix similar to -release, - but will immediately change the library name. - - * Makefile.am: specify -postfix and -version-info - - * configure.in: version bump to 1.1.0. added GLIB_INTERFACE_AGE and - GLIB_BINARY_AGE. calculate LT_* variables for libtool. - -Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c: (g_strcasecmp). Check for isupper before - taking tolower, and account for macroized tolower. - - * gutils.c (g_error): Check for recursion. - -1998-04-27 Elliot Lee <sopwith@cuc.ml.org> - - * glist.c (g_list_position): New function to find the position of - a link in a list - should be the inverse of g_list_nth(), but - haven't tested it so poof. - -Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org> - - * gstring.c : Check arguments more carefully, - (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de) - -Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_direct_compare): Removed, because that's what - a NULL comparison function means. And it wasn't 64 bit safe. - -Mon Apr 6 18:43:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_get_token_ll): fixed a bug that caused floats - of the format ".xxx" to be parsed as "xxx". - -Fri Apr 3 20:36:35 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_parse_debug_string): Make debug string - parsine case-insensitive - -Fri Apr 3 17:03:18 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: corrected possible overrun when inserting into - GStrings (thanks Elrond) - -Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu> - - * testglib.c: Removed literal german from strings - to appease SGI compiler. - -Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in glib glibconfig.h.in: Add test for atexit/on_exit - - use on_exit if atexit not found in definition of ATEXIT. - -Wed Mar 25 15:23:37 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Switched glibconfig.h rule from HEADERS - to DATA, so that it is not added to DISTFILES - -Wed Mar 18 22:27:08 PST 1998 Manish Singh <yosh@gimp.org> - - * garray.c: g_rarray_truncate length done correctly - -Sun Mar 15 07:13:34 1998 Tim Janik <timj@gimp.org> - - * gutils.c: changed *_handler variables to be named glib_*_handler, - so you can easily access them from gdb. - -Sat Mar 14 17:47:43 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Don't refer to current directory as $(top_builddir) - to avoid confusing non-gmakes - -Sat Mar 14 01:37:35 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am (configincludedir): Moved glibconfig.h to - $(pkglibdir)/include - -Tue Mar 10 02:03:12 1998 Tim Janik <timj@gimp.org> - - * gscanner.c (g_scanner_destroy_symbol_table_entry): new function to - free symbol table entries upon destruction - (gtk-gronlund-980309-0.patch.gz). - -Mon Mar 9 15:02:21 1998 Tim Janik <timj@gimp.org> - - * glib.h: changed *_length functions to return guint. - changed *_nth functions to take guint as argument. - - * glist.c: adapted g_list_length and g_list_length. - - * gslist.c: adapted g_slist_length and g_slist_length. - -Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gutils.c : changed g_strcasecmp - to take gchar* not guchar* - - * testglib.c: Remove trailing ; after functions - -Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gstring.c: Added g_string_insert[_c]() - and g_string_erase(). - - From: Stefan Wille <1wille@vsys1.informatik.uni-hamburg.de> - -Mon Feb 16 23:05:06 1998 Owen Taylor <owt1@cornell.edu> - - * glist.c (g_list_insert_sorted): Changed function - so elements are always inserted, even if they compare - equal with another. - -Thu Feb 12 22:48:11 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c glib.h: removed deprecated g_string_equal - and g_string_hash. - -Tue Feb 10 13:04:36 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in: Add check to see if the C library's - iswalnum can actually be used. (Not true for - Linux libc-5.4.38) - -Sat Feb 7 11:48:09 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c gutils.c: added some additional consts in - appropriate places to remove a warning - -Sat Feb 7 11:15:54 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c: include <ctype.h> for tolower() - -Fri Jan 30 23:57:17 PST 1998 Manish Singh <yosh@gimp.org> - - * added and autoconfigured in a new utility function - g_strcasecmp - -Wed Jan 28 23:53:27 PST 1998 Manish Singh <yosh@gimp.org> - - * glist.c - * gslist.c - * testglib.c: the sort functions compared backwards. Fixed - * glib.h: list iterator macros now check for NULL pointers - -Tue Jan 27 09:46:57 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: g_string_prepend and g_string_prepend_c had - interchanged src and dest parameters for g_memmove. Fixed. - -Tue Jan 27 01:38:52 PST 1998 Manish Singh <yosh@gimp.org> - - * gslist.c: fixed a really, really lame error. g_slist_insert - didn't hook the data in! Reworked the routine to reflect the - functionality of g_list - -Wed Jan 21 01:13:25 1998 Tim Janik <timj@psynet.net> - - * Applied patch from (Raja R Harinath <harinath@cs.umn.edu>) - to add function g_snprintf. - * configure.in (AC_CHECK_FUNCS): Check for vsnprintf. - * glib.h: Add prototype for g_snprintf. - * glibconfig.h.in: Add HAVE_VSNPRINTF. - * gutils.c (g_snprintf): new function. - -Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.{c,h} gscanner.c: - renamed g_string_equal => g_str_equal - renamed g_string_hash => g_str_hash - And const corrected. Old functions left in for now. - -Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net> - - * gutils.c (g_strerror): changed message for EAGAIN from - "no more processes" to "try again" since EAGAIN is used with - functions else than fork(). - - * gscanner.c (g_scanner_get_token_ll): use strtol() instead of - strtoul() to avoid conflicts with solaris. - - * merged the glib portions from Jan 2 to Jan 7 out of gtk+/ChangeLog - into this file. - -Wed Jan 7 02:14:30 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: - * glist.c: - * gslist.c: - * testglib.c: Added g_[s]list_insert_sorted function - and appropriate tests in testglib - -Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h: Changed guint32 -> guint for bitfields. - (Bitfields must be int or unsigned int?) - -Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: reverted glibconfig.h and glib.h files back to the - way they were before my ugly hack. - - * gscanner.c: removed inlines from clist and gscanner - -Tue Dec 23 02:49:51 1997 Tim Janik <timj@psynet.net> - - * gscanner.c: new file for GScanner: Flexible lexical scanner for - general purpose. - * glib_pre2.h: added GScanner includes. added g_strconcat and g_strtod. - gutils.c (g_strconcat): new function for string concatenation of NULL - terminated parameter list. - (g_strtod): new function to perform best string to double conversion - with or without consideration of the current locale. - -Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net> - - * glist.c: minor optimizations: - (g_list_append): `if' optimized for common code path, commented out - unneccessary `assert', saved one variable assignment. - (g_list_prepend): saved two (conditioned) variable assignment. - (g_list_insert): saved one (conditioned) variable assignment, - saved one variable assignment. - (g_list_remove): `if' optimized for common code path, saved two - variable assignments by using `g_list_free_1' (which is even - faster) instead of `g_list_free'. - (g_list_reverse): saved allocation of one variable, saved one - variable assignment. - -Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: this file now gets concatenated by makeglib_h from - glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got - created by configure (done by Jay Painter). - - * glib_pre2.h: the g_assert*() and g_return_*_fail() macros - are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts - when used within if (...) g_macro(); else ... conditionals. - -Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to - not call 'g_string' but to simply stringify the - expression. Calling 'g_string' causes the expression to be - expanded which is undesired. - -Sun Dec 1 01:30:48 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * Started ChangeLog + * configure.in: set glib version to 1.3.0. diff --git a/ChangeLog.pre-2-12 b/ChangeLog.pre-2-12 index 7add274d9..f9b8b0664 100644 --- a/ChangeLog.pre-2-12 +++ b/ChangeLog.pre-2-12 @@ -1,2841 +1,23 @@ -Thu Feb 04 20:42:24 1999 Tor Lillqvist <tml@iki.fi> +Sat Mar 6 11:03:08 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) - * glibconfig.h.win32 config.h.win32: Update GLIB_MICRO_VERSION. + * gutils.c (g_get_any_init): add OS/2 changes. + change '\\' in HOME to '/'. -1999-02-04 Christopher Blizzard <blizzard@redhat.com> +1999-03-03 Josh MacDonald <jmacd@spin.dsl.pacbell.net> - * glib.spec (Packager): Change my email address + * glib.def: g_spaced_primes_closest was omitted here, so I + couldn't build Xdelta on Windows. -Thu Feb 4 01:45:01 PST 1999 Shawn T. Amundson <amundson@gtk.org> +1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - * ChangeLog - NEWS - README - configure.in - glib.spec - docs/glib-config.1: version=1.1.15 + * gutils.c (g_get_any_init): Fixed yet another bloody + implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche + <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure + test better than that, but have no idea, how to do that easily. - * Released GLib 1.1.15 +Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org> -Tue Feb 02 00:08:54 1999 Tor Lillqvist <tml@iki.fi> + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. - * gmessages.c (g_log_default_handler): (Win32:) Don't call - ensure_stdout_valid (which would open an unneeded console window) - if we're calling a logging function. Define ensure_stdout_valid - as an empty macro on Unix. - - * gutils.c (g_get_any_init): (Win32:) Trust HOME first if defined, - then try HOMEDRIVE and HOMEPATH. - -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). - -Fri Jan 22 16:51:44 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Added galloca.c. - - * galloca.c: - Compile even if G_NATIVE_ALLOCA is not defined. - Don't use g_free and g_malloc [yet?]. Code appears to depend on - internal malloc() alignment sizes. - - * tests/alloca-test.c: - Always test internal alloca replacement too, even if we have a - working alloca. - Make tests a little bit better by adding recursion - (more stack activity). - -Fri Jan 22 13:41:41 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * configure.in: - Add checks for alloca, defining G_NATIVE_ALLOCA if present. - - * galloca.c: - Import replacement alloca implementation from gettext 0.10.35. - Begin to convert to using GLib types and functions. - - * glib.h: - New macros g_alloca, g_alloca_gc, g_alloca_new, to perform - stack-based memory allocations. - - * tests/Makefile.am, tests/queue-test.c, tests/alloca-test.c: - New tests for g_alloca_*, GQueue ADT. - - * tests/stack-test.c: - Fix pointer casts, include config.h, and - call g_stack_free at end of run. - -Fri Jan 22 11:58:13 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Add gqueue.c. - - * glib.h: - Add GQueue struct and prototypes. - Remove g_stack_free macro. - - * gqueue.c - New file. Implementation of a queue ADT. - - * gstack.c: - Rename _g_stack_free back to g_stack_free. - - * tests/Makefile.am, tests/stack-test.c: - New test for GStack objects. - -Fri Jan 22 02:06:10 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * gstack.c: - New stack ADT implementation. - - * glib.h: - Add g_stack function prototypes and macros. - -Thu Jan 21 23:55:54 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * TODO: - New file. Short notes on what has been said in e-mail, plus a - couple other new items. - - * glib.h, glist.c: - New function g_list_delete(). Removes a node from the list, - then frees it. - -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 - expiration times > 1sec. - -1998-12-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in (have_threads): Changed the last pthread_cond_init - to pthread_attr_init. - -Fri Dec 18 00:03:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmain.c: - (g_main_is_running): new function to check whether a main loop has been - quitted. - (g_main_new): added a gboolean argument to determine whether the loop - should be considered initially running or not. however, g_main_run () - will still reset the main loops running state to TRUE upon initial - entrance. - - * gmain.c: - (g_main_iterate): documented this function's purpose in 5 steps. - for step 2), flag sources as G_SOURCE_READY even if !dispatch and - check G_SOURCE_READY prior to (*prepare), so we don't call (*prepare) - on them multiple times. - -Thu Dec 17 23:43:47 1998 Tim Janik <timj@gtk.org> - - * gmain.c (g_main_add_poll): reordered arguments, so GPollFD* comes - first, <sigh> (sorry Snorfle, i should have let you know in the first - place). - (g_main_dispatch): stack G_HOOK_FLAG_IN_CALL flags. call source's - destructor when destroying a source. - -1998-12-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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. - -Wed Dec 16 23:04:26 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.9 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: version=1.1.9 - -Wed Dec 16 22:32:13 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * glib.h: - giounix.c: s/g_main_poll_add/g_main_remove_add/g - s/g_main_poll_remove/g_main_remove_poll/g - s/g_main_poll_add_unlocking/g_main_add_unlocking_poll/g - (from Tim Janik) - -Wed Dec 16 20:04:10 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: check for pthread_attr_init in all cases, du4 - needs this since most of the other functions are just #defines - -Thu Dec 17 04:10:49 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_LOCK_DECLARE_*): if !G_THREADS_ENABLED, eat the - trailing semicolon with a bogus function declaration, instead - of with a bogus variable declarations, so we avoid unused - variable warnings. - -Wed Dec 16 07:49:16 PST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.8 (CVS tag is GLIB_1_1_8a) - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * giounix.c (g_io_channel_unix_get_fd): Fixed small bug. - -1998-12-16 Joel Becker <jlbec@ocala.cs.miami.edu> - - * glib.h, gscanner.c: changed func_data to user_data in - g_scanner_scope_symbol_foreach and associated friends, because - AIX headers #define func_data. - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Fixed stupid bug, that made - g_static_mutex_lock(*mutex) not work as expected. - - * docs/glib-config.1: Updated to reflect the existence of gthread. - - * gmain.c (g_main_poll_add_unlocking): Changed - g_main_poll_add_unlocked to g_main_poll_add_unlocking to match - semantic, (indeed, main_loop must be locked, when calling this - function). Removed the unlocking from the end of that function, as - that is not right. Made a 'HOLDS' comment above the function. - -Wed Dec 16 03:16:58 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.8, binary age 0, interface age 0. - - * glib.h: changed g_lock() to G_LOCK(), g_unlock() to G_UNLOCK() and - g_trylock() to G_TRYLOCK(), since these are macros that expand to - nothing with --disable-threads. - changed G_LOCK_DEFINE() to G_LOCK_DECLARE() and introduced - G_LOCK_DECLARE_STATIC() to achive the results of static G_LOCK_DECLARE(). - changed semantics of g_thread_supported to g_thread_supported() so it - can be used as a function like g_module_supported(). the actuall - definition is still a macro that expands into a variable for - performance reasons though. - various indentation and coding style cleanups. - - * configure.in: added --enable-threads that defaults to yes. - - * gmutex.c: changed tests g_thread_supported to g_thread_supported (), - changed variable settings of g_thread_supported - to g_threads_got_initialized. - - garray.c: - gcache.c: - gdataset.c: - gdate.c: - ghash.c: - glist.c: - gmain.c: - gnode.c: - gslist.c: - gstring.c: - gtree.c: - gutils.c: - changed s/g_lock/G_LOCK/, s/g_unlock/G_UNLOCK/, - s/static G_LOCK_DEFINE/G_LOCK_DECLARE_STATIC/. - -Tue Dec 15 23:16:05 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README - configure.in: - glib.spec: - docs/glib-config.1: Incremented version - -Wed Dec 16 22:29:48 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * configure.in: fixed the AIX thread checking. - Just an error on the wildcard. BTW, -D_THREAD_SAFE - is correct for AIX. - -Wed Dec 16 02:02:48 1998 Tim Janik <timj@gtk.org> - - * glib-config.in (lib_glib): fixed library and flag ordering for - --libs - -Tue Dec 15 17:17:46 1998 Owen Taylor <otaylor@redhat.com> - - * glib.h giounix.c giochannel.c: Use an "inheritance" - scheme for IO channel memory allocation.h - -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 - set up the parser. So use a different date that Solaris seems - to like. - -1998-12-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Dont complain, if --without-threads or - --with-threads=none is supplied; Test for pthread_attr_init - instead of pthread_cond_init, if threads seems to be supported by - standard glib. (CFLAGS): Use G_THREAD_CFLAGS for compiling of glib - as well. - - * glib.h, gmutex.c: Changed private to private_key to avoid - problems when compiling with under C++. - -1998-12-15 Jeff Garzik <jgarzik@Pobox.com> - - * configure.in: - bugfixes, correctly support --without-threads and friends - - * gthread/testgthread.c: corrected 64-bitness problem - -Tue Dec 15 10:40:09 1998 Owen Taylor <otaylor@redhat.com> - - * gnode.c glist.c gslist.c: Make sure all - calls to g_node_validate_allocator are within - current_allocator lock, so we have consistency - on that point. (Should not really matter, - but this way we match the comments) - - * glist.c (g_list_free_1): Removed some lines - that should never have been committed. (For - debugging) - -1998-12-11 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/gthread-nspr.c, configure.in: Added new default thread - implementation on top of the mozilla nspr library. - - * gmem.c, gmessaged.c, gthread/gthread.c, gthread/gthread-*.c: - Changed GStaticMutex and GStaticPrivate in gmem.c and gmessages.c - into GMutex and GPrivate resp. to make error reporting and use of - gmem possible in most (not all, though) gthread functions. Also - initialized the modules via new init functions. - - * configure.in: Fixed syntax bug in definition of type - GStaticMutex. - - * gthread/testgthread.c: Updated to work with nspr, but see note - there for remaining problems. - -1998-12-10 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gmutex.c, glib.h: Now abort, if a mutex/cond/private is - allocated before the thread system is set up. - - * gthread/gthread.c (g_thread_init): Removed g_thread_try_init(), - as it is not necessary. Changed the error message. Corrected logic - for g_thread_use_default_impl. - - * gmutex.c (g_mutex_init): Keep the thread private data array - after calling g_thread_init(). - -1998-12-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/testgthread.c (new_thread): Now also working for posix - threads; (wait_thread): Now a better implementation, that does not - use 100% CPU. - - * Made the thread related code follow GNU coding standard. - - * Made a comment (HOLDS:) above each function, that expects the - given locks to be held. - - * Changed try_lock to trylock throughout. - - * glib.c: Eventually removed the #if 0'ed code for old GStaticMutex. - - * glib.c: Corrected g_trylock macro for G_DEBUG_LOCKS. - - * 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. - - * gthread/gthread-solaris.c: do not use g_log for errors, as g_log - uses these module and endless recursions might happen, just use a - plain fprintf(stderr,...). - - * 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 - of Sebastian Wilhelmi <wilhelmi@ira.uka.de>) - - - configure.in now looks for a system thread implementation. - Currently support is included for POSIX threads - and Solaris threads. The default support is built - into a separate library -lgthread. - - - The thread implementation can be modified by passing - a vector of functions g_thread_init(). - - - The default or supplied functions are used to - implement a small set of thread functions for - mutexes, condition variables, and thread-private - data. - - - GLib now uses these functions to provide thread - safety. (In the sense that all global static - data is locked... individual structures must still - be locked by the caller.) - -Sat Dec 12 19:08:59 1998 Tim Janik <timj@gtk.org> - - * configure.in: always define G_HAVE_INLINE if __cplusplus is - defined, reported by Wan-Teh Chang <wtc@netscape.com>. - -Thu Dec 10 21:49:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.7 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: Increased version to 1.1.7 - -Wed Dec 9 22:44:44 EST 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * Removed #define of G_COMPILED_WITH_DEBUGGING from glibconfig.h - It shouldn't be there, and it was causing a double #define. - (config.h defines it also) - -Tue Dec 8 12:18:38 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.6 - - * NEWS: updated - -Mon Dec 7 23:10:41 PST 1998 Manish Singh <yosh@gimp.org> - - * gmain.c: fixes to #undef HAVE_POLL case - -1998-12-02 Havoc Pennington <hp@pobox.com> - - * 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. - (g_date_set_year): Same. - -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 - 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 - flags, rather than re-checking the validity of the actual - values. This should be the correct behavior, the old way was - leftover cruft. - - * glib.h, gdate.c: Changed MDY to DMY throughout. - -Sat Nov 28 12:53:47 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am configure.in acconfig.h giochannel.c - glib.h glist.c gmain.c gutils.c: - - - Revised GIOChannel to provide a generic virtual-function - based interface. - - Added unix fd-based GIOChannel's - - Added generic main-loop abstraction - - Added timeouts and idle functions using main-loop abstraction. - -1998-12-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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 - include time.h. - -Tue Dec 1 23:01:44 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - 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/ - include time.h. - - * glib.h: removed #include <time.h>, changed time_t paramter of - 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> - - * glib.h: - * ghook.c: added g_hook_list_marshal_check() to eventually destroy - hooks after they got marshalled. - -Sun Nov 29 17:31:43 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * configure.in, Makefile.am, gmodule/Makefile.am: - Put -DFOO stuff into Makefile.am INCLUDES. - -Sun Nov 29 14:17:09 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: put debug -DFOO stuff into CPPFLAGS, not CFLAGS, - so CFLAGS can be overridden at make time properly - -Sat Nov 28 01:23:25 1998 Tim Janik <timj@gtk.org> - - * ghash.c: implemented incremental freezing facility. - -Thu Nov 26 01:36:20 1998 Tim Janik <timj@gtk.org> - - * 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. - -Tue Nov 24 18:57:59 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981120-0, change log appended below. - - * glibconfig.h.win32: passthrough 64-bit constants unchanged, VC++ - infers them - -Fri Nov 20 22:26:43 1998 Tor Lillqvist <tml@iki.fi> - - * glib.h: Moved MSC pragmas from glib.h to glibconfig.h.win32. - peer_offset field in WIN32 part of GIOChannel removed, need_wakeups - added. Added "extern" to __declspec(dllimport). - - * gutils.c: Initialise need_wakeups. - - * glibconfig.h.win32: Pragmas moved here. Define G_GINT64_CONSTANT. - - * gmodule/gmodule.def: Added g_module_build_path. - - * gscanner.c: (g_scanner_cur_value) Move initailisation of v - to before its use. - - * glib.def: Added g_(s)list_sort. - - * makefile.msc: A few more comments. - -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 - 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 - or source incompatibilities. It does add a member to the - GHashTable structure. - -Tue Nov 24 09:40:00 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed the GListAllocator type and its g_*_allocator_*() - function variants (which weren't working anyways) in favour of a - generic GAllocator type. new functions: - g_allocator_new, g_allocator_free, g_slist_push_allocator, - g_slist_pop_allocator, g_list_push_allocator, g_list_pop_allocator, - g_node_push_allocator and g_node_pop_allocator. - - * gstring.c: removed bogus slist allocator code. - * gtree.c: maintain own list of free tree nodes and don't waste - GSLists for that, removed bogus slist allocator code. - * glist.c: use GAllocators for node allocation. - * gslist.c: use GAllocators for node allocation. - * gnode.c: use GAllocators for node allocation. - - * gdataset.c: cleanups wrt automatic initialization. - -Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h garray.[ch]: added g_array_insert_vals() to - insert elements at an arbitrary index, and - g_array_insert_val() macro. - -Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gslist.c: new function g_slist_copy() to duplicate a list with all its - data pointers. - * glist.c: new function g_list_copy. - -Sat Nov 21 14:57:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: Updated to version 1.1.5 - - * Released GLib 1.1.5 - -Wed Nov 18 1998 Elliot Lee <sopwith@redhat.com> - - * gdataset.c: There was a code path into g_data_set_internal - through a function (g_datalist_id_set_full). Neither function - checked for g_dataset_init having been run, but - g_data_set_internal used the memchunk. I added - a check into g_data_set_internal so it will do the - initialization if needed. (There's probably a better way.) - -Mon Nov 16 07:48:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_bit_nth_msf): fixed off-by-one error, so we don't waste - a loop iteration if (-1) was passed, reported by Andreas Bombe - <andreas.bombe@munich.netsurf.de>. - -Fri Nov 13 15:17:34 1998 Owen Taylor <otaylor@redhat.com> - - * glist.c gslist.c glib.h: Added g_list_sort() and - g_slist_sort() to merge sort GLists and GSLists. - Submitted by Sven Over <sven.over@ob.kamp.net> - over a year ago! - - * testglib.c: Test the new sort functions. - -Wed Nov 11 23:23:22 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am : INCLUDES is the right way to add to CFLAGS, not - DEFS. Also there are bugs with '+=' in makefiles. - Got rid of DEFS line by moving G_LOG_DOMAIN setting into INCLUDES. - Removed redundant -I from INCLUDES. - -Wed Nov 11 18:11:24 EST 1998 Gregory McLean <gregm@comstar.net> - - * docs/*.sgml : Batch of new documentation that should be easier - to maintain and extend. Plus generate whatever sort of doc file - you would like. I didn't change the Makefile stuff as I'm not sure - what default doc type people want. Oh and this is all DocBook format. - Enjoy! - -Tue Nov 10 17:12:45 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: use __extension__ for long long on gcc >= 2.8 and - egcs, and provide a G_GINT64_CONSTANT wrapper so -ansi -pedantic - compiles clean. - - * glib.h: make the endian x86 asm __const__ so the compiler can do - better optimizations. Also remove the cc clobber, these shouldn't - be changing condition codes. Ditch some redundant casts. Add an - optimization for 64-bit endian conversions in x86. Use constant - wrapper for the generic method. - - * testglib.c: use constant wrappers for 64-bit constants - -1998-11-04 Phil Schwan <pschwan@cmu.edu> - - * configure.in: Added 'strncasecmp' to the list of functions to be - searched for. - * glib.h: Added a prototype for 'g_strncasecmp' - * gstrfuncs.c: (g_strncasecmp) new function modeled closely after - 'g_strcasecmp' - -Wed Nov 4 15:06:44 PST 1998 Manish Singh <yosh@gimp.org> - - * config.h.win32 (new file) - * glibconfig.h.win32 - * glib.def - * makefile.msc: applied glib-tml-981104, win32 sync - -1998-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * glib.h: - * garray.c: - (g_array_remove_index): new function for removing an entry from an - array while preserving the order - (g_array_remove_index_fast): new function for removing an entry - from an array. the order might be distorted - (g_ptr_array_remove_index_fast, g_ptr_array_remove_fast): new - functions; working similiar to the above. (they have the semantic - of the old g_ptr_array_remove[_index] functions) - (g_ptr_array_remove_index, g_ptr_array_remove): new semantic. now - the order of the elements in the array is not changed - (g_byte_array_remove_index, g_byte_array_remove_index_fast): new - functions; byte_array wrapper for g_array_remove_index[_fast] - -Sun Nov 1 23:00:18 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * configure.in: endian macros defined using the glibconfig.h - mechanism now - - * ghook.c: casts for GHookFunc and GHookCheckFunc to avoid warnings - -Sat Oct 31 20:14:22 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981101-1 patch from Tor Lillqvist (ChangeLog - entry appended below) - - * testglib.c - * gstrfuncs.c - * glib.h: use G_HAVE_GINT64, since HAVE_GINT64 is gone - - * 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. - - * gutils.c: - (g_getenv): Better implementation on Win32. No loop necessary. - (g_get_any_init): Use P_tmpdir if defined as tmp directory. Don't - set home dir always to NULL on Win32. Don't use tmp directory as - last resort home directory, but return NULL if no home - directory is known (application must check). - - * makefile.msc: Better touch command, just COPYing a single file - sets the timestamp from that file, which isn't what touching should - do. - -1998-10-31 Raja R Harinath <harinath@cs.umn.edu> - - Land glib-rrh-19981025-0.patch. - * 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 - concluding "broken wctype". - (glibconfig.h): Use AC_OUTPUT_COMMANDS to put generation code into - config.status. - * glib.h: Remove a lot of tests and defines. All these have been - moved to `configure.in (glibconfig.h)'. - * gerror.c: Include <config.h>. - * 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. - added macros G_STRUCT_OFFSET(), G_STRUCT_MEMBER_P() and - G_STRUCT_MEMBER() for handling structure fields through their offsets. - (struct _GHookList): added a hook_free function member, that can be used - to free additional fields in derived hook structures. - g_hook_free(): if hook_list->hook_free != NULL, call this function prior - to freeing the hook. (this functionality should have been there in the - first place, it just got forgotten as an implementation detail). - -Wed Oct 28 00:49:32 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: G_BREAKPOINT for alpha from Robert Wilhelm - <robert@physiol.med.tu-muenchen.de> - -Tue Oct 27 07:25:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: - (g_scanner_sync_file_offset): new function for file input. - rewind the filedescriptor to the current buffer position and blow - the file read ahead buffer. usefull for third party uses of our - filedescriptor, which hooks onto the current scanning position. - (this became neccessary with the implementation of buffered - reads). - (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. - -Tue Oct 27 00:27:31 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: get rid of duplicate #g_htonl and friends in the - NATIVE_WIN32 part - -Mon Oct 26 22:42:01 PST 1998 Manish Singh <yosh@gimp.org> - - * glibconfig.h.win32 - * gutils.c - * makefile.msc: win32 patch from Tor Lillqvist (glib-tml-981027-0), - fixes some minor win32 buglets - -Mon Oct 26 22:12:03 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: reimplemented the endian stuff, using inline asm - for x86. #define g_htonl and friends. - - * testglib.c: new tests for the endian stuff - - * configure.in: care for AIX in gmodule linker flags test (from - Joel Becker <jlbec@raleigh.ibm.com>). Check $host_os for linux - instead of existance of /usr/include/linux - - * gutils.c: buh-bye evil warning. Thou hast been #ifdef'd out - of thine existance! - -Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed dummy structure definitions for struct _GCache, - _GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk. - - * gutils.c: implement glib's inline functions _after_ all include - statements have been processed. - removed Tor's MAXPATHLEN check since there already was one supplied - further down in this file. - (LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32, - since lcc maybe used on other platforms as well. why in hell is this - stuff required? - (g_get_any_init): for windows, if the user name is supplied, use it as - realname also. - in general, if there is no homedir specified, use the tmpdir that - we already figured. - - * gtimer.c (g_timer_elapsed): changed a g_assert() statement to - g_return_if_fail(). - - * applied glib-tml-981020-0.patch for WIN32 portability, added some - comments and g_return_if_fail() statements, minor indentation fixes. - ChangeLog entry from Tor Lillqvist is appended. - - * glib.h (struct dirent): use lower case structure members. - - * glib.h: - * makefile.lcc: - * makefile.msc: - s/COMPILING_GLIB/GLIB_COMPILATION/ - -1998-10-20: Tor Lillqvist <tml@iki.fi> - - * README.win32 glib.def gmodule.def - * glibconfig.h.win32 gmodule/gmoduleconf.h.win32: - New files for the Windows port. The .def files list exported - symbols for the Microsoft linker and compatibles. - - * configure.in: - Added checks for some platform-dependent headers: pwd.h sys/param.h - sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat. - - * gerror.c: - Conditionalized inclusion of system-dependent headers. Changes - for Windows: no gdb to do a stack trace. Just call abort(). - - * glib.h: - Changes for Windows: - - Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for - platform-dependent file name syntax elements. Added macros - G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for - platform-dependent search path syntax conventions. - - Added pragmas for Microsoft C to make it more pedantic. - - Marked GLib's global variables for export from DLL. - - Added the function g_strescape that escapes backslashes. - - Added functions g_path_is_absolute and g_path_skip_root to - handle platform-dependent file name syntax. - - Added the function g_getenv that expands environment variables - that contain references to other environment variables, as is - typical on Windows NT. - - Added the GIOChannel structure which is used to encapsulate the - IPC mechanism used by the GIMP's plug-ins, and possibly other - things later. On Unix a GIOChannel encapsulates just a file - descriptor. On Windows it contains a file handle from _pipe() and a - few other things related to the implementation of gdk_input_add - and GIMP plug-in communication. Subject to change. - - Removed duplicate declarations of the version variables. - - For the Microsoft compiler, declare own implementation of - ftruncate and the <dirent.h> functions. - - * gmem.c: - Define a symbolic name for the profiling table size. - - * gmessages.c: - Conditionalized inclusion of unistd.h. On Windows, output using - stdio to stdout. - - * gscanner.c: - 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. - - * gtimer.c: - Conditionalized inclusion of unistd.h and sys/time.h. Added - implementations for Windows. - - * gutils.c: - Conditionalized inclusion of platform-dependent headers. Use - the platform-independent file name syntax macros. - Conditionalize code on platform-dependent features. Added the - functions g_path_is_absolute g_path_skip_root and g_getenv. - Added the GIOChannel-related functions. Added - compiler-dependent Unix compatibility functions for Windows. - - * 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 - from gtk-config.1 in gtk - - * configure.in: - * Makefile.am: - * sanity_check: added in docs directory, change rule 'release' - to 'snapshot' and created a new 'release' rule for doing the - distribution. Added in a 'sanity' rule. - - * NEWS: - * 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_get_char): no more characters are available if read() returns - anything less than 1, not only on 0 return. - - * 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(). - (g_strjoinv): renamed from g_str_array_joinv(), string array is - now passed as last parameter. removed `const' qualifier from string - array pointer (again). - (g_strjoin): new function from sopwith to concatenate strings with - an additional seperator. - (g_strfreev): renamed from g_str_array_free. - -Sat Oct 24 22:23:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * gnode.c: small fix to g_node_children_foreach to make it work right. - From Paco Moya <paco@cadnotebk17.eecs.berkeley.edu> - -Wed Oct 21 19:22:58 1998 Tim Janik <timj@gtk.org> - - * configure.in (G_MODULE_HAVE_DLERROR): reverted part of the changes - from Sebastian Wilhelmi (1998-10-20). don't specify a specific loading - behaviour (i.e. RTLD_NOW) when we are not sure whether it is supplied. - changed the return value from (!f2 && f1) to (!f2 || f1) so we default - to not needing an underscore. reverted the extra plugin.c building, - because .lo files are not ELF libraries, this can't work. This needs - further investigation on Solaris... - -Wed Oct 21 17:03:05 1998 Tim Janik <timj@gtk.org> - - * 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 - the in_place arguments were skipped, the caller is supposed to pass a - g_strdup()ed string if he wants to retrive a new copy. indentation and - coding style fixups. added some g_return_if_fail() statements. - string array functions are prefixed with g_str_array_. - (g_strdelimit): return the modified string like all other g_str* - functions, that operate in place. - (g_strchug): renamed from g_str_chug(), removed in_place argument. - (g_strchomp): renamed from g_str_chomp(), removed in_place argument. - (g_strstrip): renamed from g_str_strip(), removed in_place argument. - (g_str_array_join): renamed from g_strconcatv(), since it actually - operates on a string array and has totaly different semantics from - g_strconcat(). check for separator != NULL, don't segfault if the first - string is NULL. removed the `const' from the string array that's passed, - so users can operate on gchar** string arrays. - (g_str_array_split): renamed from g_str_split() because we actually - produce a string array. reimplemented this function for efficiency. - removed macro aliases g_str_joinv and g_str_join. - -1998-10-20 Elliot Lee <sopwith@redhat.com> - - * glib.h, gstrfuncs.c: Move string join/split/free routines from - libgnome/gnome-string, rename, and add g_str_chug. - -1998-10-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: made the check for needed _ in module's func-names - work on solaris. (G_MODULE_NEED_USCORE must be set outside - AC_CACHE_VAL, dlopen(0,0) refused to work on solaris). - -Tue Oct 20 03:32:58 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in - * acconfig.h: added test for endianness - - * glib.h: #define endian macros for system and some conversions - between byte order - -Thu Oct 8 06:47:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: removed functions g_dataset_id_set_destroy and - g_datalist_id_set_destroy and macros g_dataset_set_destroy and - g_datalist_set_destroy. - added new functions g_dataset_id_remove_no_notify and - g_datalist_id_remove_no_notify plus associated macros - g_dataset_remove_no_notify and g_datalist_remove_no_notify, which - will remove a certain data portion without invokation of its destroy - notifier, this should only be used in very controled circumstances. - -Wed Oct 7 05:31:24 1998 Tim Janik <timj@gtk.org> - - * glib.h: - removed the #pragma } statement after extern "C" {. use - (c-set-offset 'inextern-lang 0) to fixup emacs cc-mode indentation. - - * glib.h: - * ghook.c: API and code cleanups. changed the G_HOOK_ACTIVE and - G_HOOK_IN_CALL enum vals to G_HOOK_FLAG_ACTIVE and G_HOOK_FLAG_IN_CALL. - changed the G_HOOK_IS_ACTIVE() and G_HOOK_IS_IN_CALL() macros to - G_HOOK_ACTIVE() and G_HOOK_IN_CALL(). - fixed the g_hook_find* functions, so they iterate over non-active - hooks as well. - (g_hook_first_valid): - (g_hook_next_valid): added an extra argument gboolean may_be_in_call, - which indicates whether G_HOOK_IN_CALL() hooks are considered valid - or not. these two functions are meant as iterators for the hook list - invocation, so they need to a) provide functionality to implement - may_recurse bahaviour and b) only walk active hooks. - -Tue Oct 6 14:29:47 1998 Tim Janik <timj@gtk.org> - - * gmem.c (g_malloc0): fixed memory offsett when ENABLE_MEM_CHECK is - defined and ENABLE_MEM_PROFILE is not (patch from Martin Pool - <mbp@wistful.humbug.org.au>). - -Sat Oct 3 01:18:10 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: - (g_hook_list_invoke): - (g_hook_list_invoke): - (g_hook_list_marshal): properly handle the first valid hook to call, - it maybe IN_CALL already. - (g_hook_list_marshal): minor name change. - -Fri Oct 2 23:21:21 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: renamed GHook.id to GHook.hook_id so we don't get troubles - with ObjC which reserves "id" as a keyword (Raja R Harinath - <harinath@cs.umn.edu>). - -Wed Sep 30 10:53:03 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: added ghook.c. - - * glib.h: - * ghook.c: generic callback maintenance functions. - - * glib.h: define G_GNUC_UNUSED. - -Fri Sep 25 00:04:37 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.4, binary age 0, interface age 0. - - * glib.h (struct _GScanner): dumped peeked_char and text_len in favour - of *text_end and *buffer for buffered read()s. - - * gscanner.c: changed peeking and retrival of next character so we - have buffered reads. fixed minor bug with number parsing error - reporting. made some static!!! variables local ones (why did we use - static temporary variables in the lowlevel tokenization code anyways?). - -Mon Sep 21 23:23:10 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.3 - -Mon Sep 21 07:43:13 1998 Tim Janik <timj@gtk.org> - - * glib.h: added g_renew() which works as g_new() for g_realloc(). - -Mon Sep 21 02:22:12 1998 Tim Janik <timj@gtk.org> - - * NEWS file update for upcoming release of GLib + GModule - version 1.1.3, binary age 0, interface age 0. (GModule uses - the same version numbers as GLib.) - - * glib.h: swap the inclusion of of float.h and limits.h to work - around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by - Per Abrahamsen <abraham@dina.kvl.dk>). - - * glib.h: - * gscanner.c: renamed the GValue union to GTokenValue, this should - not affect source compatibility in most cases. - - * ghash.c: added some g_return_if_fail() statements. make - g_hash_table_lookup_node() an inline function so we save an extra - function invokation on lookups. - -Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com> - - * ltmain.sh: Patch to libtool-1.2b to make --disable-static - work. - -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). - Returns the number of elements deleted. - -Fri Sep 18 11:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_memdup implementation - -Fri Sep 18 18:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: make the datalists a safe type (not using a generic - gpointer) by expecting a GData* argument in the g_datalist functions. - provide g_dataset_foreach() and g_datalist_foreach() functions that - allow a GDataForeachFunc function to walk the data lists. - (g_dataset_destroy_internal): made this function truely reentrant (i.e. - can be called from within destroy notifiers as well). - the *_foreach functions are _not_ reentrant (unless all the other - dataset and datalist functions). - -Fri Sep 18 03:41:20 1998 Tim Janik <timj@gtk.org> - - * gtree.c (g_tree_new): check for key_compare_func != NULL (reported - by Michal Kara). - -Thu Sep 17 18:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * config.h.in: removed from repository - - * install-sh - * missing - * mkinstalldirs: updated to latest automake version - -Thu Sep 17 06:36:25 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: implemented g_datalist_* along the lines of g_dataset, - but operates on an opaque gpointer *datalist; pointer, e.g. for the - implementation of GtkObject named data. - we cache a certain portion of the already freed data entries now, to - gain a slight performance improve with data reallocation. - -Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am glib-config.in l*: Update to libtool-1.2b, - change library versioning scheme to drop LT_RELEASE - from the -l line, while keeping it in the soname. - -Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org> - - * glib.h: explicitely include the prototypes for inline functions - to cure gcc warnings for -Wmissing-prototypes. - -Wed Sep 9 02:52:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -posix check for NeXTStep - -Tue Sep 8 05:04:06 1998 Tim Janik <timj@gtk.org> - - * glib.h: abandon the use of ATEXIT(), we keep the fallback - macros for backwards compatibility. people ought to use g_atexit(). - - * gutils.c (g_atexit): new function to take over the implementation - of ATEXIT. this function is guarranteed to succeed, similar to - g_malloc(). - -Mon Sep 7 20:07:38 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: comment the -std1 check and save LIBS properly - -Mon Sep 7 07:53:21 1998 Tim Janik <timj@gtk.org> - - * configure.in: check for all three inline keywords individually. - - * 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'. - 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 - prototypes if no inlinig can be performed. we special case most of the - stuff, so inline functions can have a normal implementation by defining - G_INLINE_FUNC to extern and G_CAN_INLINE to 1. - - * ltconfig: (compiler PIC flag test): special case linux for non - aout systems to honour lcc's position independant code (cases - "linux*aout)" and "linux*)" got added). (this needs to go into - libtool which does an advanced test, checking for __LCC__). - - * autogen.sh: take $CC=lcc into account by invoking automake with - --include-deps so lcc isn't scared by gcc's auto-dependancy - generation code. care about $ACLOCAL_FLAGS. optionally feature - autoheader. - - * minor fixups in other places to cure some of lcc's warnings. - -Sun Sep 6 19:08:53 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -std1 check for ANSI compliance (from gtk) - -Sun Sep 6 12:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: provide proper ATEXIT behavior on NeXTStep by !atexit - -Sat Sep 5 18:03:36 1998 Tom Tromey <tromey@cygnus.com> - - * gutils.c (GLIB_INLINE): Define. - * glib.h (GLIB_INLINE): New define. - (g_bit_nth_msf): Use it. Also, add prototype. - (g_bit_storage): Likewise. - (g_bit_storage): Likewise. - -Sat Sep 5 04:40:02 1998 Tim Janik <timj@gtk.org> - - * 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. - - * gmem.c: new function g_mem_chunk_alloc0() which will initialize - a memory area allocated with g_mem_chunk_alloc() with 0's. - -Wed Sep 2 19:13:28 1998 Owen Taylor <otaylor@redhat.com> - - * garray.c glib.h (g_array_[ap/pre]pend_vals): make - data argument const. - -Wed Aug 26 06:32:40 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstrfuncs.c: new function g_strnfill() to return a new string - of specified length, filled with a specific character. - -Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu> - - * testglib.c (main): Update the array tests. Reduce the number of - iterations for the prepend test from 10000 to 100 since it is - O(n^2) and was taking longer than I would like to wait. - - * garray.c: I've worked on the GArray interface, mostly. It was - seriously broken before and I hate to do it, but this is going to - break some code. It is important to do this now, because more and - more people are starting to use glib and the interface was both - broken and inconsistent. First, rename the _truncate functions of - both the GArray and GPtrArray classes to _set_size, since this - function can also be used to extend the arrays. GArray now - accepts two more initialization arguments: clear and element_size. - Instead of providing the type to each access function, the array - now stores the element size. Clear, if set, causes the library to - zero element's memory as the array expands. The major broken-ness - here was that array->len was in bytes, not elements. Now, since - the array knows its element size, array->len is correct and I have - removed the g_array_length macro. The only macro which now - accepts the type as an argument is g_array_index, which casts the - element to the right type--this interface does not change. The - append and prepend functions simply need the types removed. - g_ptr_array_remove_index now returns the removed element. - - * gprimes.c (g_spaced_primes_closest): Move this function out of - ghash.c and rename it from g_hash_closest_prime. Fix the primes - so that they are actually prime (they weren't all -- isn't that - nice?). - -Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstring.c: - * gstrfuncs.c: - (g_vsprintf): removed this function which was not publically - exported in glib.h. to export it, it should have been named - differently in the first place, since its semantics differ from - vsprintf(). apart from that, it was a possible cause for - problems since it worked on a previously allocated memory area and - was used in a lot places of glib. exporting it would have been a - guararant for problems with threaded programs. - (g_printf_string_upper_bound): exported this function to return - a string size, guarranteed to be big enough to hold the fully - expanded format+args string. added 'q', 'L' and 'll' flag handling. - in fact, the newly allocated area is in most cases much bigger than - required. - (g_strdup_vprintf()): new function returning a newly allocated string - containing the contents of *format and associated args (size is - calculated with g_printf_string_upper_bound()). - (g_strdup_printf): new function which wraps g_strdup_vprintf(). - - * configure.in: check for va_copy() or __va_copy() alternatively. - check whether va_lists can be copyied by value. - - * glib.h: provide a definition for G_VA_COPY. - - * glib.h: - * gmessages.c: - (g_logv): - (g_vsnprintf): - pass va_lists by value, not by reference, since this causes problems - on platforms that implement va_list as as arrays. internaly, use - G_VA_COPY (new_arg, org_arg); va_end (new_arg); to produce a second - va_list variable, if multiple passes are required. changed all - callers. - - * glib.h: - * gerror.h: - renamed g_debug() to g_on_error_query(), cleaned up a bit. - renamed g_stack_trace() to g_on_error_stack_trace() since both - functions cluttered different namespaces. - there is an appropriate comment in glib.h now that explains the - unix and gdb specific dependencies of both functions. - removed g_attach_process(). - g_on_error_stack_trace() should probably be handled with caution, - i've seem several different linux versions (2.0.x) become unstable - after invokation of this function. - -1998-08-18: Elliot Lee <sopwith@redhat.com> - - * In gmem.c, add the ability to exclude memory chunks from the - memory profiling information. - -Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_strndup - -Tue Aug 18 04:40:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: new function g_log_set_always_fatal() to set an - additional fatal_mask for log levels that are considered to be fatal - globally (required by gtk). since this mask is not domain-associated, - it is restricted to the log levels, introduced by glib itself. - - * gmem.c: - * grel.c: - * gtree.c (g_tree_node_check): - don't use g_print() calls for informational/debugging output, - but log all this stuff through g_log() with G_LOG_LEVEL_INFO. - libraries shouldn't use printf(), g_print() or g_printerr() at all. - -Tue Aug 18 02:46:44 1998 Tim Janik <timj@gtk.org> - - - * glib.h (__STRICT_ANSI__): if __STRICT_ANSI__ is defined, make - `inline' a noop, since strict ANSI rules don't permit `inline'. - -Mon Aug 17 15:21:42 1998 Tim Janik <timj@gtk.org> - - * grel.c: made private functions static. - -Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to - EXTRA_DIST - * glib.spec: version = 1.1.3 - -Mon Aug 17 01:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.m4: feature an extra MODULES parameter, so glib-config can - be invoked with the "gmodule" argument. - - * glib.h: changed the log level to G_LOG_LEVEL_CRITICAL for all - g_return*_if_fail statements, and made them issue a message - like "assertion `%s' failed". - - * gmessages.c (g_logv): ugh, don't pass log_domain as NULL to - g_log_find_domain. - -Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org> - - * version bump to 1.1.3, binary age 0, interface age 0. - - * glib.h: be nice to platforms that don't have gint64 and don't - issue #warning on every compilation. since glib doesn't require - gint64 itself, packages that need gint64 should test for this - themselves. - - * glib.h: - * gutils.c: added a new function g_vsnprintf(). - -Sun Aug 16 Elliot Lee - - glib.h: #error out if we don't recognize the SIZEOF_VOID_P - #warning if no gint64 - -Fri Aug 14 16:41:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: added static inline functions for bit mask tests: - g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage. - -Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: - revised the message handling system, which is now based on a new - mechanism g_log*. most of the assertment macros got adapted to - feature the new g_log() call with an additional specification of - the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN - is undefined upon the includion of glib.h, it'll be defined with a - value of (NULL) and thus preserves the original bahaviour for - warning and error messages. the message handler setting functions - for g_warning, g_error and g_message are only provided for backwards - compatibility and might get removed somewhen. - - * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain - to "GLib" upon compilation. we currently have to add this definition - to the DEFS variable. - * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start - of this file currently, since automake doesn't support per target - _CFLAGS yet. - - * glib.h: changed some gints to gbooleans, made a few const corrections, - removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some - in other required places. - - * gnode.c: - (g_node_prepend): - (g_node_insert_before): - (g_node_insert): - (g_node_append_data): - (g_node_prepend_data): - (g_node_insert_data_before): - (g_node_insert_data): - (g_node_append): - return (node), so these macros/functions can be usefully chained with - g_node_new(). - -Mon Aug 10 17:56:11 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: it's GTime now, and it's back! - -Mon Aug 10 02:17:19 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: minor hack to cause SUBDIRS (gmodule) to be build - last. we do this by making all-recursive-am depend on all-am. - -Sun Aug 9 15:56:11 1998 Tim Janik <timj@gtk.org> - - * configure.in: added GModule checks. generate files in gmodule/. - * glib-config.in: support library specifications `glib' and `gmodule'. - * Makefile.am: feature the gmodule/ subdir. - -Wed Aug 5 10:04:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.2 - -Wed Aug 05 01:15:36 1998 George Lebl <jirka@5z.com> - - * testglib.c: fix 64-bitness in g_prints, sizeof doesn't - seem to return int so I cast it for printing, probably - just cosmetic - -Tue Aug 4 19:54:06 PDT 1998 Shawn T. Amundson <amundson@gkt.org> - - * Released GLib 1.1.1 - -Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.1, binary age 1, interface age 0. - * NEWS: updates. - * README: updates. - * INSTALL: updates and fixes. - * COPYING: include the GNU LGPL, rather than shipping an empty file. - * AUTHORS: listed original authors here, and added people who made - significant improvements to glib. - - * glib.h: - * gutils.c: implement g_get_current_dir() which returns a newly - allocated string, instead of a g_getcwd() variant that operates - on a static buffer. - export glib_interface_age and glib_binary_age. - as a convenience, macro definitions have been added for - g_node_insert_data, g_node_insert_data_before, g_node_append_data and - g_node_prepend_data. - - * testglib.c: minor cleanups, print current dir. - -Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gnode.c: change order of gpointer data; field in struct _GNode to - be partly binary compatible with GList and GSList. - -1998-08-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * garray.c (g_ptr_array_remove_index): bugfix: index check for - array has been wrong. - -Fri Jul 31 22:17:05 1998 Tim Janik <timj@gtk.org> - - * testglib.c (g_node_test): added a GNode test. - -Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: compile gnode.c. - - * glib.h: - * gnode.c: added implementation of n-way trees. - - * gtree.c (g_tree_traverse): added a warning to the switch() statement - which says that G_LEVEL_ORDER is not implemented. - -Mon Jul 27 00:17:30 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.0 - -Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: #if 0'ed out the GTime definition, until it is definitively - needed. #if 0'ed out the g_getcwd() version, because it is the wrong - implementation. - -Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu> - - * glib.h: gtime changed to g_time. gtime is used in - /usr/include/time.h in NetBSD, causing multiple headaches. - If this isn't the right way of fixing it.... ;) - -Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: new functions to make a scanner scope sensitive wrt - symbol lookups. - g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol, - g_scanner_scope_remove_symbol, g_scanner_scope_add_symbol and - g_scanner_set_scope. - g_scanner_add_symbol, g_scanner_remove_symbol and - g_scanner_foreach_symbol are now aliases for scope 0. - -Mon Jul 20 23:05:34 1998 George Lebl <jirka@5z.com> - - * glib.h: typo fixed for alphas for gint64 - -Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.c: new fuction g_dirname() which returns a newlly - allocated string. - -Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.h: added a bunch of utility/wrapper functions: - g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(), - g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname(). - - * gutils.c: removed all g_str* functions. - * gstrfuncs.c: moved the bunch g_str* functions from gutils.c in this - place. this file shall never include <unistd.h> to avoid clashes for - some of the g_str* functions on some OSes. - -Fri Jul 10 00:29:03 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Renamed g_hash_table_lookup_full to - g_hash_table_lookup_extended to conform with naming conventions. - -Tue Jul 7 03:18:58 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Generic cleanup, added a function: - (g_hash_table_lookup_full): Return whether the lookup succeeded, - and also retrieve the key and value. This allows one to - distinguish between failed lookup and finding a NULL, and also - allows one to free a key in the hash. - -Mon Jul 6 10:12:05 PDT 1998 Manish Singh <yosh@gimp.org> - - * ltconfig: fix for properly detecting shared lib support on - SunPro cc (taken from libtool 1.2.a) - -Sat Jul 4 13:38:52 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: added g_array_length - -Tue Jun 30 11:58:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): take symbol_2_token into - account. react on valid/invalid string pairs. - -Sat Jun 27 21:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.m4: ftp.glib.org -> ftp.gtk.org, since glib.org isn't - ours. ;) - -Fri Jun 19 03:11:02 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: removed g_dataset_try_key, g_dataset_force_id and - g_dataset_retrive_key in favour of GQuarks. - a GQuark is an numeric id wich is associated with a certain string. - (g_quark_try_string): try to get the quark associated with this string, - if the lookup failed return 0. - (g_quark_from_string): get the associated quark for a string, if there - isn't currently a GQuark associated with this string, then allocate a - new quark and return that. - (g_quark_from_static_string): like the above function, but the string - isn't strdup()ed to save memory. - (g_quark_to_string): get the string that is associated with a certain - GQuark. - - * gdataset.c (g_dataset_id_set_data_full): invoke the destroy function - _after_ the new data has been setup. - -Thu Jun 18 02:35:21 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Changed messages for g_return_[val]_if_fail to - be somewhat more clear: assertion "blah" failed. - -1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * testglib.c (main): Use GINT_TO_POINTER casts to remove compiler - warnings. - - * grel.c: #include <string.h> - -Fri Jun 12 15:39:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (GScanner): cleanups of the structure fields (binary - incompatible). - -Fri Jun 12 00:39:28 1998 Josh MacDonald <jmacd@icw.EECS.Berkeley.EDU> - - * glib.h: add new hash and equal functions g_int_*. complement - g_direct_hash with g_direct_equal. - - * grel.c: new file, GRelations implement tuples of N-N mappings. - A comment in glib.h briefly describes the interface. - - * ghash.c: new function, g_hash_table_size - - * glib.h: new typedefs, gsize, gssize, gtime. - - * garray.c: new functions implementing a simplified GArray. This - GPtrArray is an array of gpointers and has functions to add and - remove elements, much like java.lang.Vector. - - * garray.c: new functions for the single-byte special case of - GArray. The functions g_byte_array* operate on arrays of bytes. - Internally, a GArray is used. - - * testglib.c: tests for g_ptr_array, g_byte_array, and g_relation... - -1998-06-11 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gdataset.c: #include <string.h> - -Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: new function g_dataset_retrive_key. adjusted prealloc - sizes, to take up less space on initial allocation. - -1998-06-10 Raja R Harinath <harinath@cs.umn.edu> - - * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2, - the version from which glib's libtool forked. Needed for people - who use post-1.2 alphas of libtool. - * configure.in (enable_mem_check, enable_mem_profile): Replace - `echo -n' with AC_MSG_CHECKING. - (fd_set): Explain test for `fd_set' better. - -Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org> - - * Makefile.am glib.m4 configure.in: - - Moved out from GTK+; added AM_PATH_GLIB macro. - -Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: renamed g_const_pointer => gconstpointer - -Tue Jun 9 17:47:33 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Remove #error - HP/UX. - -Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org> - [ Combination of: - gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>) - gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ] - - * glib.h ghash.c gstring.c gdataset.c gutils.c: - - Added new typedef g_const_pointer; expunged all incorrect - uses of 'const gpointer'. - - Fixed up warnings that that created, - - Changed GHashFunc and GCompareFunc to take g_const_pointer - arguments. (Necessary, but will cause warnings in existing - code until fixed) - - Added other new const in harmless positions. - -Mon Jun 8 01:06:47 1998 Tim Janik <timj@gtk.org> - - * glib.h: added enum-helper macros for code generation. - added G_BREAKPOINT(). - -Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org> - - * gmem.c: commented out MEM_PROFILE and MEM_CHECK, causing weird - problems - -Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_chunk_new0): convenience macro, for allocating small chunks - like g_chunk_new() with additional 0 initialization. - -Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org> - - * ghash.c (g_hash_table_insert): wrote a comment describing why - a hash node's key should not also get replaced when overriding - previous entries. - -Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_string_sized_new): new function to controll the preallocated - size of a GString. - - * glib.h (g_strreversed): new function to reverse a string. - -Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org> -(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch) - - * gutils.c: Restored a missing prototype for g_vsprintf. - -Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: conditionally define NULL, FALSE and TRUE. - (g_mem_chunk_create): new convenience macro as a short hand for - g_mem_chunk_new(). - (g_chunk_free): new convenience macro to be consistent with g_chunk_new. - -Tue, 19 May 1998 09:00:02 +0200 Paolo Molaro <lupus@debian.org> - - * gcompletion.c: generic functions for com<TAB>pletion... - -Sun May 17 10:48:27 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): provide usefull default - specifications for identifier_spec and symbol_spec. - - * glib.h: new functions g_slist_nth_data and g_list_nth_data to return - the data of the nth element in the list. - -Fri May 15 22:31:49 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) - that for some reason didn't produce a compiler warning on my machine - (is va_end defined to nothing for i386?). - -Fri May 15 12:32:08 1998 rodo <doulik@karlin.mff.cuni.cz> - - * gscanner.c: replaced some snprintf with g_snprintf - -Fri May 15 00:56:59 1998 Tim Janik <timj@gtk.org> - - * glib.h: further support for gcc function attributes: G_GNUC_FORMAT, - G_GNUC_NORETURN and G_GNUC_CONST. - - * gscanner.c (g_scanner_stat_mode): changed stat() to lstat(). - (g_scanner_msg_handler): "\n" at end of line! - (g_scanner_foreach_symbol): new function to iterate over the symbol - table (GScanner does value-wrapping). - -Thu May 14 04:14:12 1998 Tim Janik <timj@gtk.org> - - * glib.h: typedef gint gboolean; - this is needed to provide portability with big-endian platforms (e.g. - try sizeof(bool) for c++ on big-endians - it's 4). - this is also needed to maintain some_union.d_gint==some_union.d_gboolean. - plus, gint to gboolean casts and vice versa need to be possible without - loss. - -Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib/glib.h: Added macros G[U]INT_TO_POINTER() and - GPOINTER_TO_[U]INT for storing small integers integers - inside pointers. - - * glib/testglib.c: Print sizeof() results - as g_print("%ld", (glong)sizeof(foo)), to deal with - size_t being long on Alpha's. - -Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org> - (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch) - - * glib.h gstring.c gmessages.c: Added some missing - const to arguments. - - * gutils.c (g_strsignal.c): Added missing return statements. - -Mon May 11 21:11:54 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c gmessages.c: Moved g_error, g_warning, g_message and - g_print from gutils.c to new file gmessages.c, to avoid having to - include <unistd.h> in gutils.c which was causing problems for the - g_strsignal implementation on FreeBSD boxes. - -Mon May 11 09:53:43 1998 Tim Janik <timj@gtk.org> - - * configure.in: preserve automake CFLAGS. - - * Makefile.am: fully rename the created library to libglib-1.1.la. - this means we need to change certain portions of the Makefile.am on - major/minor version bumps. - - * ltmain.sh: the -release option is not required anymore. - - * glib.h: provide G_GNUC_FUNCTION and G_GNUC_PRETTY_FUNCTION to - avoid conditionals. unconditionally define NULL, TRUE, FALSE, MAX, - MIN, ABS and CLAMP, these macros might be screwed from other headers. - -Mon May 11 01:44:10 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: new file, gdatasets implement the object data - mechanism from GtkObject. a generic data pointer is associated with - a certain location and a key id. - -Sat May 9 20:08:12 1998 Owen Taylor <otaylor@gtk.org> - - * glib/gmem.c: Experimentally restore GMemChunk - to its primeval state - where mem areas are - freed incrementally instead of searching the tree - every time a mem area is completely empty. Also, - always keep one mem chunk around. (Reduced calls - to malloc() a lot, but doesn't really improve - performance significiantly) - -Thu May 7 08:17:28 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_GNUC_PRINTF): - (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument - checking of gcc. - - * gstring.c: const corrections, string!=NULL checks at function entry. - (g_string_down): new function for tolower(3) conversion. - (g_string_up): new function for toupper(3) conversion. - - * gutils.c: const corrections. - (g_strdown): g_string_down() counterpart. - (g_strup): g_string_up() counterpart. - - * gscanner.c (g_scanner_unexp_token): - (g_scanner_error): - (g_scanner_warn): new functions to let a scanner put out warnings - or errors, especially to react on unexpected tokens. - - * gslist.c: - (g_slist_index): find out about about the position of a - certain data pointer. - (g_slist_position): find out about about the position of a - certain node. - - * glist.c: - (g_list_index): find out about about the position of a - certain data pointer. - -Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org> - - * ltmain.sh: added a new commandline flag -postfix similar to -release, - but will immediately change the library name. - - * Makefile.am: specify -postfix and -version-info - - * configure.in: version bump to 1.1.0. added GLIB_INTERFACE_AGE and - GLIB_BINARY_AGE. calculate LT_* variables for libtool. - -Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c: (g_strcasecmp). Check for isupper before - taking tolower, and account for macroized tolower. - - * gutils.c (g_error): Check for recursion. - -1998-04-27 Elliot Lee <sopwith@cuc.ml.org> - - * glist.c (g_list_position): New function to find the position of - a link in a list - should be the inverse of g_list_nth(), but - haven't tested it so poof. - -Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org> - - * gstring.c : Check arguments more carefully, - (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de) - -Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_direct_compare): Removed, because that's what - a NULL comparison function means. And it wasn't 64 bit safe. - -Mon Apr 6 18:43:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_get_token_ll): fixed a bug that caused floats - of the format ".xxx" to be parsed as "xxx". - -Fri Apr 3 20:36:35 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_parse_debug_string): Make debug string - parsine case-insensitive - -Fri Apr 3 17:03:18 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: corrected possible overrun when inserting into - GStrings (thanks Elrond) - -Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu> - - * testglib.c: Removed literal german from strings - to appease SGI compiler. - -Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in glib glibconfig.h.in: Add test for atexit/on_exit - - use on_exit if atexit not found in definition of ATEXIT. - -Wed Mar 25 15:23:37 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Switched glibconfig.h rule from HEADERS - to DATA, so that it is not added to DISTFILES - -Wed Mar 18 22:27:08 PST 1998 Manish Singh <yosh@gimp.org> - - * garray.c: g_rarray_truncate length done correctly - -Sun Mar 15 07:13:34 1998 Tim Janik <timj@gimp.org> - - * gutils.c: changed *_handler variables to be named glib_*_handler, - so you can easily access them from gdb. - -Sat Mar 14 17:47:43 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Don't refer to current directory as $(top_builddir) - to avoid confusing non-gmakes - -Sat Mar 14 01:37:35 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am (configincludedir): Moved glibconfig.h to - $(pkglibdir)/include - -Tue Mar 10 02:03:12 1998 Tim Janik <timj@gimp.org> - - * gscanner.c (g_scanner_destroy_symbol_table_entry): new function to - free symbol table entries upon destruction - (gtk-gronlund-980309-0.patch.gz). - -Mon Mar 9 15:02:21 1998 Tim Janik <timj@gimp.org> - - * glib.h: changed *_length functions to return guint. - changed *_nth functions to take guint as argument. - - * glist.c: adapted g_list_length and g_list_length. - - * gslist.c: adapted g_slist_length and g_slist_length. - -Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gutils.c : changed g_strcasecmp - to take gchar* not guchar* - - * testglib.c: Remove trailing ; after functions - -Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gstring.c: Added g_string_insert[_c]() - and g_string_erase(). - - From: Stefan Wille <1wille@vsys1.informatik.uni-hamburg.de> - -Mon Feb 16 23:05:06 1998 Owen Taylor <owt1@cornell.edu> - - * glist.c (g_list_insert_sorted): Changed function - so elements are always inserted, even if they compare - equal with another. - -Thu Feb 12 22:48:11 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c glib.h: removed deprecated g_string_equal - and g_string_hash. - -Tue Feb 10 13:04:36 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in: Add check to see if the C library's - iswalnum can actually be used. (Not true for - Linux libc-5.4.38) - -Sat Feb 7 11:48:09 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c gutils.c: added some additional consts in - appropriate places to remove a warning - -Sat Feb 7 11:15:54 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c: include <ctype.h> for tolower() - -Fri Jan 30 23:57:17 PST 1998 Manish Singh <yosh@gimp.org> - - * added and autoconfigured in a new utility function - g_strcasecmp - -Wed Jan 28 23:53:27 PST 1998 Manish Singh <yosh@gimp.org> - - * glist.c - * gslist.c - * testglib.c: the sort functions compared backwards. Fixed - * glib.h: list iterator macros now check for NULL pointers - -Tue Jan 27 09:46:57 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: g_string_prepend and g_string_prepend_c had - interchanged src and dest parameters for g_memmove. Fixed. - -Tue Jan 27 01:38:52 PST 1998 Manish Singh <yosh@gimp.org> - - * gslist.c: fixed a really, really lame error. g_slist_insert - didn't hook the data in! Reworked the routine to reflect the - functionality of g_list - -Wed Jan 21 01:13:25 1998 Tim Janik <timj@psynet.net> - - * Applied patch from (Raja R Harinath <harinath@cs.umn.edu>) - to add function g_snprintf. - * configure.in (AC_CHECK_FUNCS): Check for vsnprintf. - * glib.h: Add prototype for g_snprintf. - * glibconfig.h.in: Add HAVE_VSNPRINTF. - * gutils.c (g_snprintf): new function. - -Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.{c,h} gscanner.c: - renamed g_string_equal => g_str_equal - renamed g_string_hash => g_str_hash - And const corrected. Old functions left in for now. - -Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net> - - * gutils.c (g_strerror): changed message for EAGAIN from - "no more processes" to "try again" since EAGAIN is used with - functions else than fork(). - - * gscanner.c (g_scanner_get_token_ll): use strtol() instead of - strtoul() to avoid conflicts with solaris. - - * merged the glib portions from Jan 2 to Jan 7 out of gtk+/ChangeLog - into this file. - -Wed Jan 7 02:14:30 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: - * glist.c: - * gslist.c: - * testglib.c: Added g_[s]list_insert_sorted function - and appropriate tests in testglib - -Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h: Changed guint32 -> guint for bitfields. - (Bitfields must be int or unsigned int?) - -Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: reverted glibconfig.h and glib.h files back to the - way they were before my ugly hack. - - * gscanner.c: removed inlines from clist and gscanner - -Tue Dec 23 02:49:51 1997 Tim Janik <timj@psynet.net> - - * gscanner.c: new file for GScanner: Flexible lexical scanner for - general purpose. - * glib_pre2.h: added GScanner includes. added g_strconcat and g_strtod. - gutils.c (g_strconcat): new function for string concatenation of NULL - terminated parameter list. - (g_strtod): new function to perform best string to double conversion - with or without consideration of the current locale. - -Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net> - - * glist.c: minor optimizations: - (g_list_append): `if' optimized for common code path, commented out - unneccessary `assert', saved one variable assignment. - (g_list_prepend): saved two (conditioned) variable assignment. - (g_list_insert): saved one (conditioned) variable assignment, - saved one variable assignment. - (g_list_remove): `if' optimized for common code path, saved two - variable assignments by using `g_list_free_1' (which is even - faster) instead of `g_list_free'. - (g_list_reverse): saved allocation of one variable, saved one - variable assignment. - -Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: this file now gets concatenated by makeglib_h from - glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got - created by configure (done by Jay Painter). - - * glib_pre2.h: the g_assert*() and g_return_*_fail() macros - are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts - when used within if (...) g_macro(); else ... conditionals. - -Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to - not call 'g_string' but to simply stringify the - expression. Calling 'g_string' causes the expression to be - expanded which is undesired. - -Sun Dec 1 01:30:48 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * Started ChangeLog + * configure.in: set glib version to 1.3.0. diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index 7add274d9..f9b8b0664 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,2841 +1,23 @@ -Thu Feb 04 20:42:24 1999 Tor Lillqvist <tml@iki.fi> +Sat Mar 6 11:03:08 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) - * glibconfig.h.win32 config.h.win32: Update GLIB_MICRO_VERSION. + * gutils.c (g_get_any_init): add OS/2 changes. + change '\\' in HOME to '/'. -1999-02-04 Christopher Blizzard <blizzard@redhat.com> +1999-03-03 Josh MacDonald <jmacd@spin.dsl.pacbell.net> - * glib.spec (Packager): Change my email address + * glib.def: g_spaced_primes_closest was omitted here, so I + couldn't build Xdelta on Windows. -Thu Feb 4 01:45:01 PST 1999 Shawn T. Amundson <amundson@gtk.org> +1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - * ChangeLog - NEWS - README - configure.in - glib.spec - docs/glib-config.1: version=1.1.15 + * gutils.c (g_get_any_init): Fixed yet another bloody + implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche + <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure + test better than that, but have no idea, how to do that easily. - * Released GLib 1.1.15 +Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org> -Tue Feb 02 00:08:54 1999 Tor Lillqvist <tml@iki.fi> + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. - * gmessages.c (g_log_default_handler): (Win32:) Don't call - ensure_stdout_valid (which would open an unneeded console window) - if we're calling a logging function. Define ensure_stdout_valid - as an empty macro on Unix. - - * gutils.c (g_get_any_init): (Win32:) Trust HOME first if defined, - then try HOMEDRIVE and HOMEPATH. - -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). - -Fri Jan 22 16:51:44 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Added galloca.c. - - * galloca.c: - Compile even if G_NATIVE_ALLOCA is not defined. - Don't use g_free and g_malloc [yet?]. Code appears to depend on - internal malloc() alignment sizes. - - * tests/alloca-test.c: - Always test internal alloca replacement too, even if we have a - working alloca. - Make tests a little bit better by adding recursion - (more stack activity). - -Fri Jan 22 13:41:41 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * configure.in: - Add checks for alloca, defining G_NATIVE_ALLOCA if present. - - * galloca.c: - Import replacement alloca implementation from gettext 0.10.35. - Begin to convert to using GLib types and functions. - - * glib.h: - New macros g_alloca, g_alloca_gc, g_alloca_new, to perform - stack-based memory allocations. - - * tests/Makefile.am, tests/queue-test.c, tests/alloca-test.c: - New tests for g_alloca_*, GQueue ADT. - - * tests/stack-test.c: - Fix pointer casts, include config.h, and - call g_stack_free at end of run. - -Fri Jan 22 11:58:13 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Add gqueue.c. - - * glib.h: - Add GQueue struct and prototypes. - Remove g_stack_free macro. - - * gqueue.c - New file. Implementation of a queue ADT. - - * gstack.c: - Rename _g_stack_free back to g_stack_free. - - * tests/Makefile.am, tests/stack-test.c: - New test for GStack objects. - -Fri Jan 22 02:06:10 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * gstack.c: - New stack ADT implementation. - - * glib.h: - Add g_stack function prototypes and macros. - -Thu Jan 21 23:55:54 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * TODO: - New file. Short notes on what has been said in e-mail, plus a - couple other new items. - - * glib.h, glist.c: - New function g_list_delete(). Removes a node from the list, - then frees it. - -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 - expiration times > 1sec. - -1998-12-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in (have_threads): Changed the last pthread_cond_init - to pthread_attr_init. - -Fri Dec 18 00:03:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmain.c: - (g_main_is_running): new function to check whether a main loop has been - quitted. - (g_main_new): added a gboolean argument to determine whether the loop - should be considered initially running or not. however, g_main_run () - will still reset the main loops running state to TRUE upon initial - entrance. - - * gmain.c: - (g_main_iterate): documented this function's purpose in 5 steps. - for step 2), flag sources as G_SOURCE_READY even if !dispatch and - check G_SOURCE_READY prior to (*prepare), so we don't call (*prepare) - on them multiple times. - -Thu Dec 17 23:43:47 1998 Tim Janik <timj@gtk.org> - - * gmain.c (g_main_add_poll): reordered arguments, so GPollFD* comes - first, <sigh> (sorry Snorfle, i should have let you know in the first - place). - (g_main_dispatch): stack G_HOOK_FLAG_IN_CALL flags. call source's - destructor when destroying a source. - -1998-12-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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. - -Wed Dec 16 23:04:26 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.9 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: version=1.1.9 - -Wed Dec 16 22:32:13 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * glib.h: - giounix.c: s/g_main_poll_add/g_main_remove_add/g - s/g_main_poll_remove/g_main_remove_poll/g - s/g_main_poll_add_unlocking/g_main_add_unlocking_poll/g - (from Tim Janik) - -Wed Dec 16 20:04:10 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: check for pthread_attr_init in all cases, du4 - needs this since most of the other functions are just #defines - -Thu Dec 17 04:10:49 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_LOCK_DECLARE_*): if !G_THREADS_ENABLED, eat the - trailing semicolon with a bogus function declaration, instead - of with a bogus variable declarations, so we avoid unused - variable warnings. - -Wed Dec 16 07:49:16 PST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.8 (CVS tag is GLIB_1_1_8a) - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * giounix.c (g_io_channel_unix_get_fd): Fixed small bug. - -1998-12-16 Joel Becker <jlbec@ocala.cs.miami.edu> - - * glib.h, gscanner.c: changed func_data to user_data in - g_scanner_scope_symbol_foreach and associated friends, because - AIX headers #define func_data. - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Fixed stupid bug, that made - g_static_mutex_lock(*mutex) not work as expected. - - * docs/glib-config.1: Updated to reflect the existence of gthread. - - * gmain.c (g_main_poll_add_unlocking): Changed - g_main_poll_add_unlocked to g_main_poll_add_unlocking to match - semantic, (indeed, main_loop must be locked, when calling this - function). Removed the unlocking from the end of that function, as - that is not right. Made a 'HOLDS' comment above the function. - -Wed Dec 16 03:16:58 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.8, binary age 0, interface age 0. - - * glib.h: changed g_lock() to G_LOCK(), g_unlock() to G_UNLOCK() and - g_trylock() to G_TRYLOCK(), since these are macros that expand to - nothing with --disable-threads. - changed G_LOCK_DEFINE() to G_LOCK_DECLARE() and introduced - G_LOCK_DECLARE_STATIC() to achive the results of static G_LOCK_DECLARE(). - changed semantics of g_thread_supported to g_thread_supported() so it - can be used as a function like g_module_supported(). the actuall - definition is still a macro that expands into a variable for - performance reasons though. - various indentation and coding style cleanups. - - * configure.in: added --enable-threads that defaults to yes. - - * gmutex.c: changed tests g_thread_supported to g_thread_supported (), - changed variable settings of g_thread_supported - to g_threads_got_initialized. - - garray.c: - gcache.c: - gdataset.c: - gdate.c: - ghash.c: - glist.c: - gmain.c: - gnode.c: - gslist.c: - gstring.c: - gtree.c: - gutils.c: - changed s/g_lock/G_LOCK/, s/g_unlock/G_UNLOCK/, - s/static G_LOCK_DEFINE/G_LOCK_DECLARE_STATIC/. - -Tue Dec 15 23:16:05 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README - configure.in: - glib.spec: - docs/glib-config.1: Incremented version - -Wed Dec 16 22:29:48 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * configure.in: fixed the AIX thread checking. - Just an error on the wildcard. BTW, -D_THREAD_SAFE - is correct for AIX. - -Wed Dec 16 02:02:48 1998 Tim Janik <timj@gtk.org> - - * glib-config.in (lib_glib): fixed library and flag ordering for - --libs - -Tue Dec 15 17:17:46 1998 Owen Taylor <otaylor@redhat.com> - - * glib.h giounix.c giochannel.c: Use an "inheritance" - scheme for IO channel memory allocation.h - -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 - set up the parser. So use a different date that Solaris seems - to like. - -1998-12-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Dont complain, if --without-threads or - --with-threads=none is supplied; Test for pthread_attr_init - instead of pthread_cond_init, if threads seems to be supported by - standard glib. (CFLAGS): Use G_THREAD_CFLAGS for compiling of glib - as well. - - * glib.h, gmutex.c: Changed private to private_key to avoid - problems when compiling with under C++. - -1998-12-15 Jeff Garzik <jgarzik@Pobox.com> - - * configure.in: - bugfixes, correctly support --without-threads and friends - - * gthread/testgthread.c: corrected 64-bitness problem - -Tue Dec 15 10:40:09 1998 Owen Taylor <otaylor@redhat.com> - - * gnode.c glist.c gslist.c: Make sure all - calls to g_node_validate_allocator are within - current_allocator lock, so we have consistency - on that point. (Should not really matter, - but this way we match the comments) - - * glist.c (g_list_free_1): Removed some lines - that should never have been committed. (For - debugging) - -1998-12-11 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/gthread-nspr.c, configure.in: Added new default thread - implementation on top of the mozilla nspr library. - - * gmem.c, gmessaged.c, gthread/gthread.c, gthread/gthread-*.c: - Changed GStaticMutex and GStaticPrivate in gmem.c and gmessages.c - into GMutex and GPrivate resp. to make error reporting and use of - gmem possible in most (not all, though) gthread functions. Also - initialized the modules via new init functions. - - * configure.in: Fixed syntax bug in definition of type - GStaticMutex. - - * gthread/testgthread.c: Updated to work with nspr, but see note - there for remaining problems. - -1998-12-10 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gmutex.c, glib.h: Now abort, if a mutex/cond/private is - allocated before the thread system is set up. - - * gthread/gthread.c (g_thread_init): Removed g_thread_try_init(), - as it is not necessary. Changed the error message. Corrected logic - for g_thread_use_default_impl. - - * gmutex.c (g_mutex_init): Keep the thread private data array - after calling g_thread_init(). - -1998-12-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/testgthread.c (new_thread): Now also working for posix - threads; (wait_thread): Now a better implementation, that does not - use 100% CPU. - - * Made the thread related code follow GNU coding standard. - - * Made a comment (HOLDS:) above each function, that expects the - given locks to be held. - - * Changed try_lock to trylock throughout. - - * glib.c: Eventually removed the #if 0'ed code for old GStaticMutex. - - * glib.c: Corrected g_trylock macro for G_DEBUG_LOCKS. - - * 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. - - * gthread/gthread-solaris.c: do not use g_log for errors, as g_log - uses these module and endless recursions might happen, just use a - plain fprintf(stderr,...). - - * 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 - of Sebastian Wilhelmi <wilhelmi@ira.uka.de>) - - - configure.in now looks for a system thread implementation. - Currently support is included for POSIX threads - and Solaris threads. The default support is built - into a separate library -lgthread. - - - The thread implementation can be modified by passing - a vector of functions g_thread_init(). - - - The default or supplied functions are used to - implement a small set of thread functions for - mutexes, condition variables, and thread-private - data. - - - GLib now uses these functions to provide thread - safety. (In the sense that all global static - data is locked... individual structures must still - be locked by the caller.) - -Sat Dec 12 19:08:59 1998 Tim Janik <timj@gtk.org> - - * configure.in: always define G_HAVE_INLINE if __cplusplus is - defined, reported by Wan-Teh Chang <wtc@netscape.com>. - -Thu Dec 10 21:49:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.7 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: Increased version to 1.1.7 - -Wed Dec 9 22:44:44 EST 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * Removed #define of G_COMPILED_WITH_DEBUGGING from glibconfig.h - It shouldn't be there, and it was causing a double #define. - (config.h defines it also) - -Tue Dec 8 12:18:38 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.6 - - * NEWS: updated - -Mon Dec 7 23:10:41 PST 1998 Manish Singh <yosh@gimp.org> - - * gmain.c: fixes to #undef HAVE_POLL case - -1998-12-02 Havoc Pennington <hp@pobox.com> - - * 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. - (g_date_set_year): Same. - -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 - 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 - flags, rather than re-checking the validity of the actual - values. This should be the correct behavior, the old way was - leftover cruft. - - * glib.h, gdate.c: Changed MDY to DMY throughout. - -Sat Nov 28 12:53:47 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am configure.in acconfig.h giochannel.c - glib.h glist.c gmain.c gutils.c: - - - Revised GIOChannel to provide a generic virtual-function - based interface. - - Added unix fd-based GIOChannel's - - Added generic main-loop abstraction - - Added timeouts and idle functions using main-loop abstraction. - -1998-12-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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 - include time.h. - -Tue Dec 1 23:01:44 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - 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/ - include time.h. - - * glib.h: removed #include <time.h>, changed time_t paramter of - 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> - - * glib.h: - * ghook.c: added g_hook_list_marshal_check() to eventually destroy - hooks after they got marshalled. - -Sun Nov 29 17:31:43 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * configure.in, Makefile.am, gmodule/Makefile.am: - Put -DFOO stuff into Makefile.am INCLUDES. - -Sun Nov 29 14:17:09 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: put debug -DFOO stuff into CPPFLAGS, not CFLAGS, - so CFLAGS can be overridden at make time properly - -Sat Nov 28 01:23:25 1998 Tim Janik <timj@gtk.org> - - * ghash.c: implemented incremental freezing facility. - -Thu Nov 26 01:36:20 1998 Tim Janik <timj@gtk.org> - - * 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. - -Tue Nov 24 18:57:59 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981120-0, change log appended below. - - * glibconfig.h.win32: passthrough 64-bit constants unchanged, VC++ - infers them - -Fri Nov 20 22:26:43 1998 Tor Lillqvist <tml@iki.fi> - - * glib.h: Moved MSC pragmas from glib.h to glibconfig.h.win32. - peer_offset field in WIN32 part of GIOChannel removed, need_wakeups - added. Added "extern" to __declspec(dllimport). - - * gutils.c: Initialise need_wakeups. - - * glibconfig.h.win32: Pragmas moved here. Define G_GINT64_CONSTANT. - - * gmodule/gmodule.def: Added g_module_build_path. - - * gscanner.c: (g_scanner_cur_value) Move initailisation of v - to before its use. - - * glib.def: Added g_(s)list_sort. - - * makefile.msc: A few more comments. - -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 - 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 - or source incompatibilities. It does add a member to the - GHashTable structure. - -Tue Nov 24 09:40:00 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed the GListAllocator type and its g_*_allocator_*() - function variants (which weren't working anyways) in favour of a - generic GAllocator type. new functions: - g_allocator_new, g_allocator_free, g_slist_push_allocator, - g_slist_pop_allocator, g_list_push_allocator, g_list_pop_allocator, - g_node_push_allocator and g_node_pop_allocator. - - * gstring.c: removed bogus slist allocator code. - * gtree.c: maintain own list of free tree nodes and don't waste - GSLists for that, removed bogus slist allocator code. - * glist.c: use GAllocators for node allocation. - * gslist.c: use GAllocators for node allocation. - * gnode.c: use GAllocators for node allocation. - - * gdataset.c: cleanups wrt automatic initialization. - -Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h garray.[ch]: added g_array_insert_vals() to - insert elements at an arbitrary index, and - g_array_insert_val() macro. - -Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gslist.c: new function g_slist_copy() to duplicate a list with all its - data pointers. - * glist.c: new function g_list_copy. - -Sat Nov 21 14:57:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: Updated to version 1.1.5 - - * Released GLib 1.1.5 - -Wed Nov 18 1998 Elliot Lee <sopwith@redhat.com> - - * gdataset.c: There was a code path into g_data_set_internal - through a function (g_datalist_id_set_full). Neither function - checked for g_dataset_init having been run, but - g_data_set_internal used the memchunk. I added - a check into g_data_set_internal so it will do the - initialization if needed. (There's probably a better way.) - -Mon Nov 16 07:48:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_bit_nth_msf): fixed off-by-one error, so we don't waste - a loop iteration if (-1) was passed, reported by Andreas Bombe - <andreas.bombe@munich.netsurf.de>. - -Fri Nov 13 15:17:34 1998 Owen Taylor <otaylor@redhat.com> - - * glist.c gslist.c glib.h: Added g_list_sort() and - g_slist_sort() to merge sort GLists and GSLists. - Submitted by Sven Over <sven.over@ob.kamp.net> - over a year ago! - - * testglib.c: Test the new sort functions. - -Wed Nov 11 23:23:22 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am : INCLUDES is the right way to add to CFLAGS, not - DEFS. Also there are bugs with '+=' in makefiles. - Got rid of DEFS line by moving G_LOG_DOMAIN setting into INCLUDES. - Removed redundant -I from INCLUDES. - -Wed Nov 11 18:11:24 EST 1998 Gregory McLean <gregm@comstar.net> - - * docs/*.sgml : Batch of new documentation that should be easier - to maintain and extend. Plus generate whatever sort of doc file - you would like. I didn't change the Makefile stuff as I'm not sure - what default doc type people want. Oh and this is all DocBook format. - Enjoy! - -Tue Nov 10 17:12:45 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: use __extension__ for long long on gcc >= 2.8 and - egcs, and provide a G_GINT64_CONSTANT wrapper so -ansi -pedantic - compiles clean. - - * glib.h: make the endian x86 asm __const__ so the compiler can do - better optimizations. Also remove the cc clobber, these shouldn't - be changing condition codes. Ditch some redundant casts. Add an - optimization for 64-bit endian conversions in x86. Use constant - wrapper for the generic method. - - * testglib.c: use constant wrappers for 64-bit constants - -1998-11-04 Phil Schwan <pschwan@cmu.edu> - - * configure.in: Added 'strncasecmp' to the list of functions to be - searched for. - * glib.h: Added a prototype for 'g_strncasecmp' - * gstrfuncs.c: (g_strncasecmp) new function modeled closely after - 'g_strcasecmp' - -Wed Nov 4 15:06:44 PST 1998 Manish Singh <yosh@gimp.org> - - * config.h.win32 (new file) - * glibconfig.h.win32 - * glib.def - * makefile.msc: applied glib-tml-981104, win32 sync - -1998-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * glib.h: - * garray.c: - (g_array_remove_index): new function for removing an entry from an - array while preserving the order - (g_array_remove_index_fast): new function for removing an entry - from an array. the order might be distorted - (g_ptr_array_remove_index_fast, g_ptr_array_remove_fast): new - functions; working similiar to the above. (they have the semantic - of the old g_ptr_array_remove[_index] functions) - (g_ptr_array_remove_index, g_ptr_array_remove): new semantic. now - the order of the elements in the array is not changed - (g_byte_array_remove_index, g_byte_array_remove_index_fast): new - functions; byte_array wrapper for g_array_remove_index[_fast] - -Sun Nov 1 23:00:18 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * configure.in: endian macros defined using the glibconfig.h - mechanism now - - * ghook.c: casts for GHookFunc and GHookCheckFunc to avoid warnings - -Sat Oct 31 20:14:22 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981101-1 patch from Tor Lillqvist (ChangeLog - entry appended below) - - * testglib.c - * gstrfuncs.c - * glib.h: use G_HAVE_GINT64, since HAVE_GINT64 is gone - - * 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. - - * gutils.c: - (g_getenv): Better implementation on Win32. No loop necessary. - (g_get_any_init): Use P_tmpdir if defined as tmp directory. Don't - set home dir always to NULL on Win32. Don't use tmp directory as - last resort home directory, but return NULL if no home - directory is known (application must check). - - * makefile.msc: Better touch command, just COPYing a single file - sets the timestamp from that file, which isn't what touching should - do. - -1998-10-31 Raja R Harinath <harinath@cs.umn.edu> - - Land glib-rrh-19981025-0.patch. - * 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 - concluding "broken wctype". - (glibconfig.h): Use AC_OUTPUT_COMMANDS to put generation code into - config.status. - * glib.h: Remove a lot of tests and defines. All these have been - moved to `configure.in (glibconfig.h)'. - * gerror.c: Include <config.h>. - * 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. - added macros G_STRUCT_OFFSET(), G_STRUCT_MEMBER_P() and - G_STRUCT_MEMBER() for handling structure fields through their offsets. - (struct _GHookList): added a hook_free function member, that can be used - to free additional fields in derived hook structures. - g_hook_free(): if hook_list->hook_free != NULL, call this function prior - to freeing the hook. (this functionality should have been there in the - first place, it just got forgotten as an implementation detail). - -Wed Oct 28 00:49:32 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: G_BREAKPOINT for alpha from Robert Wilhelm - <robert@physiol.med.tu-muenchen.de> - -Tue Oct 27 07:25:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: - (g_scanner_sync_file_offset): new function for file input. - rewind the filedescriptor to the current buffer position and blow - the file read ahead buffer. usefull for third party uses of our - filedescriptor, which hooks onto the current scanning position. - (this became neccessary with the implementation of buffered - reads). - (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. - -Tue Oct 27 00:27:31 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: get rid of duplicate #g_htonl and friends in the - NATIVE_WIN32 part - -Mon Oct 26 22:42:01 PST 1998 Manish Singh <yosh@gimp.org> - - * glibconfig.h.win32 - * gutils.c - * makefile.msc: win32 patch from Tor Lillqvist (glib-tml-981027-0), - fixes some minor win32 buglets - -Mon Oct 26 22:12:03 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: reimplemented the endian stuff, using inline asm - for x86. #define g_htonl and friends. - - * testglib.c: new tests for the endian stuff - - * configure.in: care for AIX in gmodule linker flags test (from - Joel Becker <jlbec@raleigh.ibm.com>). Check $host_os for linux - instead of existance of /usr/include/linux - - * gutils.c: buh-bye evil warning. Thou hast been #ifdef'd out - of thine existance! - -Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed dummy structure definitions for struct _GCache, - _GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk. - - * gutils.c: implement glib's inline functions _after_ all include - statements have been processed. - removed Tor's MAXPATHLEN check since there already was one supplied - further down in this file. - (LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32, - since lcc maybe used on other platforms as well. why in hell is this - stuff required? - (g_get_any_init): for windows, if the user name is supplied, use it as - realname also. - in general, if there is no homedir specified, use the tmpdir that - we already figured. - - * gtimer.c (g_timer_elapsed): changed a g_assert() statement to - g_return_if_fail(). - - * applied glib-tml-981020-0.patch for WIN32 portability, added some - comments and g_return_if_fail() statements, minor indentation fixes. - ChangeLog entry from Tor Lillqvist is appended. - - * glib.h (struct dirent): use lower case structure members. - - * glib.h: - * makefile.lcc: - * makefile.msc: - s/COMPILING_GLIB/GLIB_COMPILATION/ - -1998-10-20: Tor Lillqvist <tml@iki.fi> - - * README.win32 glib.def gmodule.def - * glibconfig.h.win32 gmodule/gmoduleconf.h.win32: - New files for the Windows port. The .def files list exported - symbols for the Microsoft linker and compatibles. - - * configure.in: - Added checks for some platform-dependent headers: pwd.h sys/param.h - sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat. - - * gerror.c: - Conditionalized inclusion of system-dependent headers. Changes - for Windows: no gdb to do a stack trace. Just call abort(). - - * glib.h: - Changes for Windows: - - Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for - platform-dependent file name syntax elements. Added macros - G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for - platform-dependent search path syntax conventions. - - Added pragmas for Microsoft C to make it more pedantic. - - Marked GLib's global variables for export from DLL. - - Added the function g_strescape that escapes backslashes. - - Added functions g_path_is_absolute and g_path_skip_root to - handle platform-dependent file name syntax. - - Added the function g_getenv that expands environment variables - that contain references to other environment variables, as is - typical on Windows NT. - - Added the GIOChannel structure which is used to encapsulate the - IPC mechanism used by the GIMP's plug-ins, and possibly other - things later. On Unix a GIOChannel encapsulates just a file - descriptor. On Windows it contains a file handle from _pipe() and a - few other things related to the implementation of gdk_input_add - and GIMP plug-in communication. Subject to change. - - Removed duplicate declarations of the version variables. - - For the Microsoft compiler, declare own implementation of - ftruncate and the <dirent.h> functions. - - * gmem.c: - Define a symbolic name for the profiling table size. - - * gmessages.c: - Conditionalized inclusion of unistd.h. On Windows, output using - stdio to stdout. - - * gscanner.c: - 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. - - * gtimer.c: - Conditionalized inclusion of unistd.h and sys/time.h. Added - implementations for Windows. - - * gutils.c: - Conditionalized inclusion of platform-dependent headers. Use - the platform-independent file name syntax macros. - Conditionalize code on platform-dependent features. Added the - functions g_path_is_absolute g_path_skip_root and g_getenv. - Added the GIOChannel-related functions. Added - compiler-dependent Unix compatibility functions for Windows. - - * 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 - from gtk-config.1 in gtk - - * configure.in: - * Makefile.am: - * sanity_check: added in docs directory, change rule 'release' - to 'snapshot' and created a new 'release' rule for doing the - distribution. Added in a 'sanity' rule. - - * NEWS: - * 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_get_char): no more characters are available if read() returns - anything less than 1, not only on 0 return. - - * 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(). - (g_strjoinv): renamed from g_str_array_joinv(), string array is - now passed as last parameter. removed `const' qualifier from string - array pointer (again). - (g_strjoin): new function from sopwith to concatenate strings with - an additional seperator. - (g_strfreev): renamed from g_str_array_free. - -Sat Oct 24 22:23:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * gnode.c: small fix to g_node_children_foreach to make it work right. - From Paco Moya <paco@cadnotebk17.eecs.berkeley.edu> - -Wed Oct 21 19:22:58 1998 Tim Janik <timj@gtk.org> - - * configure.in (G_MODULE_HAVE_DLERROR): reverted part of the changes - from Sebastian Wilhelmi (1998-10-20). don't specify a specific loading - behaviour (i.e. RTLD_NOW) when we are not sure whether it is supplied. - changed the return value from (!f2 && f1) to (!f2 || f1) so we default - to not needing an underscore. reverted the extra plugin.c building, - because .lo files are not ELF libraries, this can't work. This needs - further investigation on Solaris... - -Wed Oct 21 17:03:05 1998 Tim Janik <timj@gtk.org> - - * 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 - the in_place arguments were skipped, the caller is supposed to pass a - g_strdup()ed string if he wants to retrive a new copy. indentation and - coding style fixups. added some g_return_if_fail() statements. - string array functions are prefixed with g_str_array_. - (g_strdelimit): return the modified string like all other g_str* - functions, that operate in place. - (g_strchug): renamed from g_str_chug(), removed in_place argument. - (g_strchomp): renamed from g_str_chomp(), removed in_place argument. - (g_strstrip): renamed from g_str_strip(), removed in_place argument. - (g_str_array_join): renamed from g_strconcatv(), since it actually - operates on a string array and has totaly different semantics from - g_strconcat(). check for separator != NULL, don't segfault if the first - string is NULL. removed the `const' from the string array that's passed, - so users can operate on gchar** string arrays. - (g_str_array_split): renamed from g_str_split() because we actually - produce a string array. reimplemented this function for efficiency. - removed macro aliases g_str_joinv and g_str_join. - -1998-10-20 Elliot Lee <sopwith@redhat.com> - - * glib.h, gstrfuncs.c: Move string join/split/free routines from - libgnome/gnome-string, rename, and add g_str_chug. - -1998-10-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: made the check for needed _ in module's func-names - work on solaris. (G_MODULE_NEED_USCORE must be set outside - AC_CACHE_VAL, dlopen(0,0) refused to work on solaris). - -Tue Oct 20 03:32:58 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in - * acconfig.h: added test for endianness - - * glib.h: #define endian macros for system and some conversions - between byte order - -Thu Oct 8 06:47:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: removed functions g_dataset_id_set_destroy and - g_datalist_id_set_destroy and macros g_dataset_set_destroy and - g_datalist_set_destroy. - added new functions g_dataset_id_remove_no_notify and - g_datalist_id_remove_no_notify plus associated macros - g_dataset_remove_no_notify and g_datalist_remove_no_notify, which - will remove a certain data portion without invokation of its destroy - notifier, this should only be used in very controled circumstances. - -Wed Oct 7 05:31:24 1998 Tim Janik <timj@gtk.org> - - * glib.h: - removed the #pragma } statement after extern "C" {. use - (c-set-offset 'inextern-lang 0) to fixup emacs cc-mode indentation. - - * glib.h: - * ghook.c: API and code cleanups. changed the G_HOOK_ACTIVE and - G_HOOK_IN_CALL enum vals to G_HOOK_FLAG_ACTIVE and G_HOOK_FLAG_IN_CALL. - changed the G_HOOK_IS_ACTIVE() and G_HOOK_IS_IN_CALL() macros to - G_HOOK_ACTIVE() and G_HOOK_IN_CALL(). - fixed the g_hook_find* functions, so they iterate over non-active - hooks as well. - (g_hook_first_valid): - (g_hook_next_valid): added an extra argument gboolean may_be_in_call, - which indicates whether G_HOOK_IN_CALL() hooks are considered valid - or not. these two functions are meant as iterators for the hook list - invocation, so they need to a) provide functionality to implement - may_recurse bahaviour and b) only walk active hooks. - -Tue Oct 6 14:29:47 1998 Tim Janik <timj@gtk.org> - - * gmem.c (g_malloc0): fixed memory offsett when ENABLE_MEM_CHECK is - defined and ENABLE_MEM_PROFILE is not (patch from Martin Pool - <mbp@wistful.humbug.org.au>). - -Sat Oct 3 01:18:10 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: - (g_hook_list_invoke): - (g_hook_list_invoke): - (g_hook_list_marshal): properly handle the first valid hook to call, - it maybe IN_CALL already. - (g_hook_list_marshal): minor name change. - -Fri Oct 2 23:21:21 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: renamed GHook.id to GHook.hook_id so we don't get troubles - with ObjC which reserves "id" as a keyword (Raja R Harinath - <harinath@cs.umn.edu>). - -Wed Sep 30 10:53:03 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: added ghook.c. - - * glib.h: - * ghook.c: generic callback maintenance functions. - - * glib.h: define G_GNUC_UNUSED. - -Fri Sep 25 00:04:37 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.4, binary age 0, interface age 0. - - * glib.h (struct _GScanner): dumped peeked_char and text_len in favour - of *text_end and *buffer for buffered read()s. - - * gscanner.c: changed peeking and retrival of next character so we - have buffered reads. fixed minor bug with number parsing error - reporting. made some static!!! variables local ones (why did we use - static temporary variables in the lowlevel tokenization code anyways?). - -Mon Sep 21 23:23:10 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.3 - -Mon Sep 21 07:43:13 1998 Tim Janik <timj@gtk.org> - - * glib.h: added g_renew() which works as g_new() for g_realloc(). - -Mon Sep 21 02:22:12 1998 Tim Janik <timj@gtk.org> - - * NEWS file update for upcoming release of GLib + GModule - version 1.1.3, binary age 0, interface age 0. (GModule uses - the same version numbers as GLib.) - - * glib.h: swap the inclusion of of float.h and limits.h to work - around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by - Per Abrahamsen <abraham@dina.kvl.dk>). - - * glib.h: - * gscanner.c: renamed the GValue union to GTokenValue, this should - not affect source compatibility in most cases. - - * ghash.c: added some g_return_if_fail() statements. make - g_hash_table_lookup_node() an inline function so we save an extra - function invokation on lookups. - -Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com> - - * ltmain.sh: Patch to libtool-1.2b to make --disable-static - work. - -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). - Returns the number of elements deleted. - -Fri Sep 18 11:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_memdup implementation - -Fri Sep 18 18:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: make the datalists a safe type (not using a generic - gpointer) by expecting a GData* argument in the g_datalist functions. - provide g_dataset_foreach() and g_datalist_foreach() functions that - allow a GDataForeachFunc function to walk the data lists. - (g_dataset_destroy_internal): made this function truely reentrant (i.e. - can be called from within destroy notifiers as well). - the *_foreach functions are _not_ reentrant (unless all the other - dataset and datalist functions). - -Fri Sep 18 03:41:20 1998 Tim Janik <timj@gtk.org> - - * gtree.c (g_tree_new): check for key_compare_func != NULL (reported - by Michal Kara). - -Thu Sep 17 18:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * config.h.in: removed from repository - - * install-sh - * missing - * mkinstalldirs: updated to latest automake version - -Thu Sep 17 06:36:25 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: implemented g_datalist_* along the lines of g_dataset, - but operates on an opaque gpointer *datalist; pointer, e.g. for the - implementation of GtkObject named data. - we cache a certain portion of the already freed data entries now, to - gain a slight performance improve with data reallocation. - -Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am glib-config.in l*: Update to libtool-1.2b, - change library versioning scheme to drop LT_RELEASE - from the -l line, while keeping it in the soname. - -Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org> - - * glib.h: explicitely include the prototypes for inline functions - to cure gcc warnings for -Wmissing-prototypes. - -Wed Sep 9 02:52:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -posix check for NeXTStep - -Tue Sep 8 05:04:06 1998 Tim Janik <timj@gtk.org> - - * glib.h: abandon the use of ATEXIT(), we keep the fallback - macros for backwards compatibility. people ought to use g_atexit(). - - * gutils.c (g_atexit): new function to take over the implementation - of ATEXIT. this function is guarranteed to succeed, similar to - g_malloc(). - -Mon Sep 7 20:07:38 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: comment the -std1 check and save LIBS properly - -Mon Sep 7 07:53:21 1998 Tim Janik <timj@gtk.org> - - * configure.in: check for all three inline keywords individually. - - * 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'. - 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 - prototypes if no inlinig can be performed. we special case most of the - stuff, so inline functions can have a normal implementation by defining - G_INLINE_FUNC to extern and G_CAN_INLINE to 1. - - * ltconfig: (compiler PIC flag test): special case linux for non - aout systems to honour lcc's position independant code (cases - "linux*aout)" and "linux*)" got added). (this needs to go into - libtool which does an advanced test, checking for __LCC__). - - * autogen.sh: take $CC=lcc into account by invoking automake with - --include-deps so lcc isn't scared by gcc's auto-dependancy - generation code. care about $ACLOCAL_FLAGS. optionally feature - autoheader. - - * minor fixups in other places to cure some of lcc's warnings. - -Sun Sep 6 19:08:53 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -std1 check for ANSI compliance (from gtk) - -Sun Sep 6 12:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: provide proper ATEXIT behavior on NeXTStep by !atexit - -Sat Sep 5 18:03:36 1998 Tom Tromey <tromey@cygnus.com> - - * gutils.c (GLIB_INLINE): Define. - * glib.h (GLIB_INLINE): New define. - (g_bit_nth_msf): Use it. Also, add prototype. - (g_bit_storage): Likewise. - (g_bit_storage): Likewise. - -Sat Sep 5 04:40:02 1998 Tim Janik <timj@gtk.org> - - * 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. - - * gmem.c: new function g_mem_chunk_alloc0() which will initialize - a memory area allocated with g_mem_chunk_alloc() with 0's. - -Wed Sep 2 19:13:28 1998 Owen Taylor <otaylor@redhat.com> - - * garray.c glib.h (g_array_[ap/pre]pend_vals): make - data argument const. - -Wed Aug 26 06:32:40 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstrfuncs.c: new function g_strnfill() to return a new string - of specified length, filled with a specific character. - -Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu> - - * testglib.c (main): Update the array tests. Reduce the number of - iterations for the prepend test from 10000 to 100 since it is - O(n^2) and was taking longer than I would like to wait. - - * garray.c: I've worked on the GArray interface, mostly. It was - seriously broken before and I hate to do it, but this is going to - break some code. It is important to do this now, because more and - more people are starting to use glib and the interface was both - broken and inconsistent. First, rename the _truncate functions of - both the GArray and GPtrArray classes to _set_size, since this - function can also be used to extend the arrays. GArray now - accepts two more initialization arguments: clear and element_size. - Instead of providing the type to each access function, the array - now stores the element size. Clear, if set, causes the library to - zero element's memory as the array expands. The major broken-ness - here was that array->len was in bytes, not elements. Now, since - the array knows its element size, array->len is correct and I have - removed the g_array_length macro. The only macro which now - accepts the type as an argument is g_array_index, which casts the - element to the right type--this interface does not change. The - append and prepend functions simply need the types removed. - g_ptr_array_remove_index now returns the removed element. - - * gprimes.c (g_spaced_primes_closest): Move this function out of - ghash.c and rename it from g_hash_closest_prime. Fix the primes - so that they are actually prime (they weren't all -- isn't that - nice?). - -Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstring.c: - * gstrfuncs.c: - (g_vsprintf): removed this function which was not publically - exported in glib.h. to export it, it should have been named - differently in the first place, since its semantics differ from - vsprintf(). apart from that, it was a possible cause for - problems since it worked on a previously allocated memory area and - was used in a lot places of glib. exporting it would have been a - guararant for problems with threaded programs. - (g_printf_string_upper_bound): exported this function to return - a string size, guarranteed to be big enough to hold the fully - expanded format+args string. added 'q', 'L' and 'll' flag handling. - in fact, the newly allocated area is in most cases much bigger than - required. - (g_strdup_vprintf()): new function returning a newly allocated string - containing the contents of *format and associated args (size is - calculated with g_printf_string_upper_bound()). - (g_strdup_printf): new function which wraps g_strdup_vprintf(). - - * configure.in: check for va_copy() or __va_copy() alternatively. - check whether va_lists can be copyied by value. - - * glib.h: provide a definition for G_VA_COPY. - - * glib.h: - * gmessages.c: - (g_logv): - (g_vsnprintf): - pass va_lists by value, not by reference, since this causes problems - on platforms that implement va_list as as arrays. internaly, use - G_VA_COPY (new_arg, org_arg); va_end (new_arg); to produce a second - va_list variable, if multiple passes are required. changed all - callers. - - * glib.h: - * gerror.h: - renamed g_debug() to g_on_error_query(), cleaned up a bit. - renamed g_stack_trace() to g_on_error_stack_trace() since both - functions cluttered different namespaces. - there is an appropriate comment in glib.h now that explains the - unix and gdb specific dependencies of both functions. - removed g_attach_process(). - g_on_error_stack_trace() should probably be handled with caution, - i've seem several different linux versions (2.0.x) become unstable - after invokation of this function. - -1998-08-18: Elliot Lee <sopwith@redhat.com> - - * In gmem.c, add the ability to exclude memory chunks from the - memory profiling information. - -Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_strndup - -Tue Aug 18 04:40:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: new function g_log_set_always_fatal() to set an - additional fatal_mask for log levels that are considered to be fatal - globally (required by gtk). since this mask is not domain-associated, - it is restricted to the log levels, introduced by glib itself. - - * gmem.c: - * grel.c: - * gtree.c (g_tree_node_check): - don't use g_print() calls for informational/debugging output, - but log all this stuff through g_log() with G_LOG_LEVEL_INFO. - libraries shouldn't use printf(), g_print() or g_printerr() at all. - -Tue Aug 18 02:46:44 1998 Tim Janik <timj@gtk.org> - - - * glib.h (__STRICT_ANSI__): if __STRICT_ANSI__ is defined, make - `inline' a noop, since strict ANSI rules don't permit `inline'. - -Mon Aug 17 15:21:42 1998 Tim Janik <timj@gtk.org> - - * grel.c: made private functions static. - -Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to - EXTRA_DIST - * glib.spec: version = 1.1.3 - -Mon Aug 17 01:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.m4: feature an extra MODULES parameter, so glib-config can - be invoked with the "gmodule" argument. - - * glib.h: changed the log level to G_LOG_LEVEL_CRITICAL for all - g_return*_if_fail statements, and made them issue a message - like "assertion `%s' failed". - - * gmessages.c (g_logv): ugh, don't pass log_domain as NULL to - g_log_find_domain. - -Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org> - - * version bump to 1.1.3, binary age 0, interface age 0. - - * glib.h: be nice to platforms that don't have gint64 and don't - issue #warning on every compilation. since glib doesn't require - gint64 itself, packages that need gint64 should test for this - themselves. - - * glib.h: - * gutils.c: added a new function g_vsnprintf(). - -Sun Aug 16 Elliot Lee - - glib.h: #error out if we don't recognize the SIZEOF_VOID_P - #warning if no gint64 - -Fri Aug 14 16:41:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: added static inline functions for bit mask tests: - g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage. - -Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: - revised the message handling system, which is now based on a new - mechanism g_log*. most of the assertment macros got adapted to - feature the new g_log() call with an additional specification of - the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN - is undefined upon the includion of glib.h, it'll be defined with a - value of (NULL) and thus preserves the original bahaviour for - warning and error messages. the message handler setting functions - for g_warning, g_error and g_message are only provided for backwards - compatibility and might get removed somewhen. - - * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain - to "GLib" upon compilation. we currently have to add this definition - to the DEFS variable. - * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start - of this file currently, since automake doesn't support per target - _CFLAGS yet. - - * glib.h: changed some gints to gbooleans, made a few const corrections, - removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some - in other required places. - - * gnode.c: - (g_node_prepend): - (g_node_insert_before): - (g_node_insert): - (g_node_append_data): - (g_node_prepend_data): - (g_node_insert_data_before): - (g_node_insert_data): - (g_node_append): - return (node), so these macros/functions can be usefully chained with - g_node_new(). - -Mon Aug 10 17:56:11 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: it's GTime now, and it's back! - -Mon Aug 10 02:17:19 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: minor hack to cause SUBDIRS (gmodule) to be build - last. we do this by making all-recursive-am depend on all-am. - -Sun Aug 9 15:56:11 1998 Tim Janik <timj@gtk.org> - - * configure.in: added GModule checks. generate files in gmodule/. - * glib-config.in: support library specifications `glib' and `gmodule'. - * Makefile.am: feature the gmodule/ subdir. - -Wed Aug 5 10:04:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.2 - -Wed Aug 05 01:15:36 1998 George Lebl <jirka@5z.com> - - * testglib.c: fix 64-bitness in g_prints, sizeof doesn't - seem to return int so I cast it for printing, probably - just cosmetic - -Tue Aug 4 19:54:06 PDT 1998 Shawn T. Amundson <amundson@gkt.org> - - * Released GLib 1.1.1 - -Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.1, binary age 1, interface age 0. - * NEWS: updates. - * README: updates. - * INSTALL: updates and fixes. - * COPYING: include the GNU LGPL, rather than shipping an empty file. - * AUTHORS: listed original authors here, and added people who made - significant improvements to glib. - - * glib.h: - * gutils.c: implement g_get_current_dir() which returns a newly - allocated string, instead of a g_getcwd() variant that operates - on a static buffer. - export glib_interface_age and glib_binary_age. - as a convenience, macro definitions have been added for - g_node_insert_data, g_node_insert_data_before, g_node_append_data and - g_node_prepend_data. - - * testglib.c: minor cleanups, print current dir. - -Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gnode.c: change order of gpointer data; field in struct _GNode to - be partly binary compatible with GList and GSList. - -1998-08-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * garray.c (g_ptr_array_remove_index): bugfix: index check for - array has been wrong. - -Fri Jul 31 22:17:05 1998 Tim Janik <timj@gtk.org> - - * testglib.c (g_node_test): added a GNode test. - -Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: compile gnode.c. - - * glib.h: - * gnode.c: added implementation of n-way trees. - - * gtree.c (g_tree_traverse): added a warning to the switch() statement - which says that G_LEVEL_ORDER is not implemented. - -Mon Jul 27 00:17:30 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.0 - -Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: #if 0'ed out the GTime definition, until it is definitively - needed. #if 0'ed out the g_getcwd() version, because it is the wrong - implementation. - -Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu> - - * glib.h: gtime changed to g_time. gtime is used in - /usr/include/time.h in NetBSD, causing multiple headaches. - If this isn't the right way of fixing it.... ;) - -Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: new functions to make a scanner scope sensitive wrt - symbol lookups. - g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol, - g_scanner_scope_remove_symbol, g_scanner_scope_add_symbol and - g_scanner_set_scope. - g_scanner_add_symbol, g_scanner_remove_symbol and - g_scanner_foreach_symbol are now aliases for scope 0. - -Mon Jul 20 23:05:34 1998 George Lebl <jirka@5z.com> - - * glib.h: typo fixed for alphas for gint64 - -Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.c: new fuction g_dirname() which returns a newlly - allocated string. - -Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.h: added a bunch of utility/wrapper functions: - g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(), - g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname(). - - * gutils.c: removed all g_str* functions. - * gstrfuncs.c: moved the bunch g_str* functions from gutils.c in this - place. this file shall never include <unistd.h> to avoid clashes for - some of the g_str* functions on some OSes. - -Fri Jul 10 00:29:03 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Renamed g_hash_table_lookup_full to - g_hash_table_lookup_extended to conform with naming conventions. - -Tue Jul 7 03:18:58 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Generic cleanup, added a function: - (g_hash_table_lookup_full): Return whether the lookup succeeded, - and also retrieve the key and value. This allows one to - distinguish between failed lookup and finding a NULL, and also - allows one to free a key in the hash. - -Mon Jul 6 10:12:05 PDT 1998 Manish Singh <yosh@gimp.org> - - * ltconfig: fix for properly detecting shared lib support on - SunPro cc (taken from libtool 1.2.a) - -Sat Jul 4 13:38:52 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: added g_array_length - -Tue Jun 30 11:58:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): take symbol_2_token into - account. react on valid/invalid string pairs. - -Sat Jun 27 21:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.m4: ftp.glib.org -> ftp.gtk.org, since glib.org isn't - ours. ;) - -Fri Jun 19 03:11:02 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: removed g_dataset_try_key, g_dataset_force_id and - g_dataset_retrive_key in favour of GQuarks. - a GQuark is an numeric id wich is associated with a certain string. - (g_quark_try_string): try to get the quark associated with this string, - if the lookup failed return 0. - (g_quark_from_string): get the associated quark for a string, if there - isn't currently a GQuark associated with this string, then allocate a - new quark and return that. - (g_quark_from_static_string): like the above function, but the string - isn't strdup()ed to save memory. - (g_quark_to_string): get the string that is associated with a certain - GQuark. - - * gdataset.c (g_dataset_id_set_data_full): invoke the destroy function - _after_ the new data has been setup. - -Thu Jun 18 02:35:21 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Changed messages for g_return_[val]_if_fail to - be somewhat more clear: assertion "blah" failed. - -1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * testglib.c (main): Use GINT_TO_POINTER casts to remove compiler - warnings. - - * grel.c: #include <string.h> - -Fri Jun 12 15:39:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (GScanner): cleanups of the structure fields (binary - incompatible). - -Fri Jun 12 00:39:28 1998 Josh MacDonald <jmacd@icw.EECS.Berkeley.EDU> - - * glib.h: add new hash and equal functions g_int_*. complement - g_direct_hash with g_direct_equal. - - * grel.c: new file, GRelations implement tuples of N-N mappings. - A comment in glib.h briefly describes the interface. - - * ghash.c: new function, g_hash_table_size - - * glib.h: new typedefs, gsize, gssize, gtime. - - * garray.c: new functions implementing a simplified GArray. This - GPtrArray is an array of gpointers and has functions to add and - remove elements, much like java.lang.Vector. - - * garray.c: new functions for the single-byte special case of - GArray. The functions g_byte_array* operate on arrays of bytes. - Internally, a GArray is used. - - * testglib.c: tests for g_ptr_array, g_byte_array, and g_relation... - -1998-06-11 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gdataset.c: #include <string.h> - -Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: new function g_dataset_retrive_key. adjusted prealloc - sizes, to take up less space on initial allocation. - -1998-06-10 Raja R Harinath <harinath@cs.umn.edu> - - * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2, - the version from which glib's libtool forked. Needed for people - who use post-1.2 alphas of libtool. - * configure.in (enable_mem_check, enable_mem_profile): Replace - `echo -n' with AC_MSG_CHECKING. - (fd_set): Explain test for `fd_set' better. - -Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org> - - * Makefile.am glib.m4 configure.in: - - Moved out from GTK+; added AM_PATH_GLIB macro. - -Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: renamed g_const_pointer => gconstpointer - -Tue Jun 9 17:47:33 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Remove #error - HP/UX. - -Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org> - [ Combination of: - gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>) - gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ] - - * glib.h ghash.c gstring.c gdataset.c gutils.c: - - Added new typedef g_const_pointer; expunged all incorrect - uses of 'const gpointer'. - - Fixed up warnings that that created, - - Changed GHashFunc and GCompareFunc to take g_const_pointer - arguments. (Necessary, but will cause warnings in existing - code until fixed) - - Added other new const in harmless positions. - -Mon Jun 8 01:06:47 1998 Tim Janik <timj@gtk.org> - - * glib.h: added enum-helper macros for code generation. - added G_BREAKPOINT(). - -Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org> - - * gmem.c: commented out MEM_PROFILE and MEM_CHECK, causing weird - problems - -Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_chunk_new0): convenience macro, for allocating small chunks - like g_chunk_new() with additional 0 initialization. - -Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org> - - * ghash.c (g_hash_table_insert): wrote a comment describing why - a hash node's key should not also get replaced when overriding - previous entries. - -Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_string_sized_new): new function to controll the preallocated - size of a GString. - - * glib.h (g_strreversed): new function to reverse a string. - -Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org> -(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch) - - * gutils.c: Restored a missing prototype for g_vsprintf. - -Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: conditionally define NULL, FALSE and TRUE. - (g_mem_chunk_create): new convenience macro as a short hand for - g_mem_chunk_new(). - (g_chunk_free): new convenience macro to be consistent with g_chunk_new. - -Tue, 19 May 1998 09:00:02 +0200 Paolo Molaro <lupus@debian.org> - - * gcompletion.c: generic functions for com<TAB>pletion... - -Sun May 17 10:48:27 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): provide usefull default - specifications for identifier_spec and symbol_spec. - - * glib.h: new functions g_slist_nth_data and g_list_nth_data to return - the data of the nth element in the list. - -Fri May 15 22:31:49 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) - that for some reason didn't produce a compiler warning on my machine - (is va_end defined to nothing for i386?). - -Fri May 15 12:32:08 1998 rodo <doulik@karlin.mff.cuni.cz> - - * gscanner.c: replaced some snprintf with g_snprintf - -Fri May 15 00:56:59 1998 Tim Janik <timj@gtk.org> - - * glib.h: further support for gcc function attributes: G_GNUC_FORMAT, - G_GNUC_NORETURN and G_GNUC_CONST. - - * gscanner.c (g_scanner_stat_mode): changed stat() to lstat(). - (g_scanner_msg_handler): "\n" at end of line! - (g_scanner_foreach_symbol): new function to iterate over the symbol - table (GScanner does value-wrapping). - -Thu May 14 04:14:12 1998 Tim Janik <timj@gtk.org> - - * glib.h: typedef gint gboolean; - this is needed to provide portability with big-endian platforms (e.g. - try sizeof(bool) for c++ on big-endians - it's 4). - this is also needed to maintain some_union.d_gint==some_union.d_gboolean. - plus, gint to gboolean casts and vice versa need to be possible without - loss. - -Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib/glib.h: Added macros G[U]INT_TO_POINTER() and - GPOINTER_TO_[U]INT for storing small integers integers - inside pointers. - - * glib/testglib.c: Print sizeof() results - as g_print("%ld", (glong)sizeof(foo)), to deal with - size_t being long on Alpha's. - -Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org> - (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch) - - * glib.h gstring.c gmessages.c: Added some missing - const to arguments. - - * gutils.c (g_strsignal.c): Added missing return statements. - -Mon May 11 21:11:54 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c gmessages.c: Moved g_error, g_warning, g_message and - g_print from gutils.c to new file gmessages.c, to avoid having to - include <unistd.h> in gutils.c which was causing problems for the - g_strsignal implementation on FreeBSD boxes. - -Mon May 11 09:53:43 1998 Tim Janik <timj@gtk.org> - - * configure.in: preserve automake CFLAGS. - - * Makefile.am: fully rename the created library to libglib-1.1.la. - this means we need to change certain portions of the Makefile.am on - major/minor version bumps. - - * ltmain.sh: the -release option is not required anymore. - - * glib.h: provide G_GNUC_FUNCTION and G_GNUC_PRETTY_FUNCTION to - avoid conditionals. unconditionally define NULL, TRUE, FALSE, MAX, - MIN, ABS and CLAMP, these macros might be screwed from other headers. - -Mon May 11 01:44:10 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: new file, gdatasets implement the object data - mechanism from GtkObject. a generic data pointer is associated with - a certain location and a key id. - -Sat May 9 20:08:12 1998 Owen Taylor <otaylor@gtk.org> - - * glib/gmem.c: Experimentally restore GMemChunk - to its primeval state - where mem areas are - freed incrementally instead of searching the tree - every time a mem area is completely empty. Also, - always keep one mem chunk around. (Reduced calls - to malloc() a lot, but doesn't really improve - performance significiantly) - -Thu May 7 08:17:28 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_GNUC_PRINTF): - (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument - checking of gcc. - - * gstring.c: const corrections, string!=NULL checks at function entry. - (g_string_down): new function for tolower(3) conversion. - (g_string_up): new function for toupper(3) conversion. - - * gutils.c: const corrections. - (g_strdown): g_string_down() counterpart. - (g_strup): g_string_up() counterpart. - - * gscanner.c (g_scanner_unexp_token): - (g_scanner_error): - (g_scanner_warn): new functions to let a scanner put out warnings - or errors, especially to react on unexpected tokens. - - * gslist.c: - (g_slist_index): find out about about the position of a - certain data pointer. - (g_slist_position): find out about about the position of a - certain node. - - * glist.c: - (g_list_index): find out about about the position of a - certain data pointer. - -Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org> - - * ltmain.sh: added a new commandline flag -postfix similar to -release, - but will immediately change the library name. - - * Makefile.am: specify -postfix and -version-info - - * configure.in: version bump to 1.1.0. added GLIB_INTERFACE_AGE and - GLIB_BINARY_AGE. calculate LT_* variables for libtool. - -Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c: (g_strcasecmp). Check for isupper before - taking tolower, and account for macroized tolower. - - * gutils.c (g_error): Check for recursion. - -1998-04-27 Elliot Lee <sopwith@cuc.ml.org> - - * glist.c (g_list_position): New function to find the position of - a link in a list - should be the inverse of g_list_nth(), but - haven't tested it so poof. - -Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org> - - * gstring.c : Check arguments more carefully, - (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de) - -Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_direct_compare): Removed, because that's what - a NULL comparison function means. And it wasn't 64 bit safe. - -Mon Apr 6 18:43:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_get_token_ll): fixed a bug that caused floats - of the format ".xxx" to be parsed as "xxx". - -Fri Apr 3 20:36:35 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_parse_debug_string): Make debug string - parsine case-insensitive - -Fri Apr 3 17:03:18 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: corrected possible overrun when inserting into - GStrings (thanks Elrond) - -Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu> - - * testglib.c: Removed literal german from strings - to appease SGI compiler. - -Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in glib glibconfig.h.in: Add test for atexit/on_exit - - use on_exit if atexit not found in definition of ATEXIT. - -Wed Mar 25 15:23:37 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Switched glibconfig.h rule from HEADERS - to DATA, so that it is not added to DISTFILES - -Wed Mar 18 22:27:08 PST 1998 Manish Singh <yosh@gimp.org> - - * garray.c: g_rarray_truncate length done correctly - -Sun Mar 15 07:13:34 1998 Tim Janik <timj@gimp.org> - - * gutils.c: changed *_handler variables to be named glib_*_handler, - so you can easily access them from gdb. - -Sat Mar 14 17:47:43 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Don't refer to current directory as $(top_builddir) - to avoid confusing non-gmakes - -Sat Mar 14 01:37:35 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am (configincludedir): Moved glibconfig.h to - $(pkglibdir)/include - -Tue Mar 10 02:03:12 1998 Tim Janik <timj@gimp.org> - - * gscanner.c (g_scanner_destroy_symbol_table_entry): new function to - free symbol table entries upon destruction - (gtk-gronlund-980309-0.patch.gz). - -Mon Mar 9 15:02:21 1998 Tim Janik <timj@gimp.org> - - * glib.h: changed *_length functions to return guint. - changed *_nth functions to take guint as argument. - - * glist.c: adapted g_list_length and g_list_length. - - * gslist.c: adapted g_slist_length and g_slist_length. - -Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gutils.c : changed g_strcasecmp - to take gchar* not guchar* - - * testglib.c: Remove trailing ; after functions - -Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gstring.c: Added g_string_insert[_c]() - and g_string_erase(). - - From: Stefan Wille <1wille@vsys1.informatik.uni-hamburg.de> - -Mon Feb 16 23:05:06 1998 Owen Taylor <owt1@cornell.edu> - - * glist.c (g_list_insert_sorted): Changed function - so elements are always inserted, even if they compare - equal with another. - -Thu Feb 12 22:48:11 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c glib.h: removed deprecated g_string_equal - and g_string_hash. - -Tue Feb 10 13:04:36 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in: Add check to see if the C library's - iswalnum can actually be used. (Not true for - Linux libc-5.4.38) - -Sat Feb 7 11:48:09 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c gutils.c: added some additional consts in - appropriate places to remove a warning - -Sat Feb 7 11:15:54 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c: include <ctype.h> for tolower() - -Fri Jan 30 23:57:17 PST 1998 Manish Singh <yosh@gimp.org> - - * added and autoconfigured in a new utility function - g_strcasecmp - -Wed Jan 28 23:53:27 PST 1998 Manish Singh <yosh@gimp.org> - - * glist.c - * gslist.c - * testglib.c: the sort functions compared backwards. Fixed - * glib.h: list iterator macros now check for NULL pointers - -Tue Jan 27 09:46:57 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: g_string_prepend and g_string_prepend_c had - interchanged src and dest parameters for g_memmove. Fixed. - -Tue Jan 27 01:38:52 PST 1998 Manish Singh <yosh@gimp.org> - - * gslist.c: fixed a really, really lame error. g_slist_insert - didn't hook the data in! Reworked the routine to reflect the - functionality of g_list - -Wed Jan 21 01:13:25 1998 Tim Janik <timj@psynet.net> - - * Applied patch from (Raja R Harinath <harinath@cs.umn.edu>) - to add function g_snprintf. - * configure.in (AC_CHECK_FUNCS): Check for vsnprintf. - * glib.h: Add prototype for g_snprintf. - * glibconfig.h.in: Add HAVE_VSNPRINTF. - * gutils.c (g_snprintf): new function. - -Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.{c,h} gscanner.c: - renamed g_string_equal => g_str_equal - renamed g_string_hash => g_str_hash - And const corrected. Old functions left in for now. - -Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net> - - * gutils.c (g_strerror): changed message for EAGAIN from - "no more processes" to "try again" since EAGAIN is used with - functions else than fork(). - - * gscanner.c (g_scanner_get_token_ll): use strtol() instead of - strtoul() to avoid conflicts with solaris. - - * merged the glib portions from Jan 2 to Jan 7 out of gtk+/ChangeLog - into this file. - -Wed Jan 7 02:14:30 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: - * glist.c: - * gslist.c: - * testglib.c: Added g_[s]list_insert_sorted function - and appropriate tests in testglib - -Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h: Changed guint32 -> guint for bitfields. - (Bitfields must be int or unsigned int?) - -Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: reverted glibconfig.h and glib.h files back to the - way they were before my ugly hack. - - * gscanner.c: removed inlines from clist and gscanner - -Tue Dec 23 02:49:51 1997 Tim Janik <timj@psynet.net> - - * gscanner.c: new file for GScanner: Flexible lexical scanner for - general purpose. - * glib_pre2.h: added GScanner includes. added g_strconcat and g_strtod. - gutils.c (g_strconcat): new function for string concatenation of NULL - terminated parameter list. - (g_strtod): new function to perform best string to double conversion - with or without consideration of the current locale. - -Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net> - - * glist.c: minor optimizations: - (g_list_append): `if' optimized for common code path, commented out - unneccessary `assert', saved one variable assignment. - (g_list_prepend): saved two (conditioned) variable assignment. - (g_list_insert): saved one (conditioned) variable assignment, - saved one variable assignment. - (g_list_remove): `if' optimized for common code path, saved two - variable assignments by using `g_list_free_1' (which is even - faster) instead of `g_list_free'. - (g_list_reverse): saved allocation of one variable, saved one - variable assignment. - -Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: this file now gets concatenated by makeglib_h from - glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got - created by configure (done by Jay Painter). - - * glib_pre2.h: the g_assert*() and g_return_*_fail() macros - are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts - when used within if (...) g_macro(); else ... conditionals. - -Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to - not call 'g_string' but to simply stringify the - expression. Calling 'g_string' causes the expression to be - expanded which is undesired. - -Sun Dec 1 01:30:48 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * Started ChangeLog + * configure.in: set glib version to 1.3.0. diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 7add274d9..f9b8b0664 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,2841 +1,23 @@ -Thu Feb 04 20:42:24 1999 Tor Lillqvist <tml@iki.fi> +Sat Mar 6 11:03:08 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) - * glibconfig.h.win32 config.h.win32: Update GLIB_MICRO_VERSION. + * gutils.c (g_get_any_init): add OS/2 changes. + change '\\' in HOME to '/'. -1999-02-04 Christopher Blizzard <blizzard@redhat.com> +1999-03-03 Josh MacDonald <jmacd@spin.dsl.pacbell.net> - * glib.spec (Packager): Change my email address + * glib.def: g_spaced_primes_closest was omitted here, so I + couldn't build Xdelta on Windows. -Thu Feb 4 01:45:01 PST 1999 Shawn T. Amundson <amundson@gtk.org> +1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - * ChangeLog - NEWS - README - configure.in - glib.spec - docs/glib-config.1: version=1.1.15 + * gutils.c (g_get_any_init): Fixed yet another bloody + implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche + <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure + test better than that, but have no idea, how to do that easily. - * Released GLib 1.1.15 +Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org> -Tue Feb 02 00:08:54 1999 Tor Lillqvist <tml@iki.fi> + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. - * gmessages.c (g_log_default_handler): (Win32:) Don't call - ensure_stdout_valid (which would open an unneeded console window) - if we're calling a logging function. Define ensure_stdout_valid - as an empty macro on Unix. - - * gutils.c (g_get_any_init): (Win32:) Trust HOME first if defined, - then try HOMEDRIVE and HOMEPATH. - -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). - -Fri Jan 22 16:51:44 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Added galloca.c. - - * galloca.c: - Compile even if G_NATIVE_ALLOCA is not defined. - Don't use g_free and g_malloc [yet?]. Code appears to depend on - internal malloc() alignment sizes. - - * tests/alloca-test.c: - Always test internal alloca replacement too, even if we have a - working alloca. - Make tests a little bit better by adding recursion - (more stack activity). - -Fri Jan 22 13:41:41 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * configure.in: - Add checks for alloca, defining G_NATIVE_ALLOCA if present. - - * galloca.c: - Import replacement alloca implementation from gettext 0.10.35. - Begin to convert to using GLib types and functions. - - * glib.h: - New macros g_alloca, g_alloca_gc, g_alloca_new, to perform - stack-based memory allocations. - - * tests/Makefile.am, tests/queue-test.c, tests/alloca-test.c: - New tests for g_alloca_*, GQueue ADT. - - * tests/stack-test.c: - Fix pointer casts, include config.h, and - call g_stack_free at end of run. - -Fri Jan 22 11:58:13 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Add gqueue.c. - - * glib.h: - Add GQueue struct and prototypes. - Remove g_stack_free macro. - - * gqueue.c - New file. Implementation of a queue ADT. - - * gstack.c: - Rename _g_stack_free back to g_stack_free. - - * tests/Makefile.am, tests/stack-test.c: - New test for GStack objects. - -Fri Jan 22 02:06:10 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * gstack.c: - New stack ADT implementation. - - * glib.h: - Add g_stack function prototypes and macros. - -Thu Jan 21 23:55:54 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * TODO: - New file. Short notes on what has been said in e-mail, plus a - couple other new items. - - * glib.h, glist.c: - New function g_list_delete(). Removes a node from the list, - then frees it. - -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 - expiration times > 1sec. - -1998-12-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in (have_threads): Changed the last pthread_cond_init - to pthread_attr_init. - -Fri Dec 18 00:03:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmain.c: - (g_main_is_running): new function to check whether a main loop has been - quitted. - (g_main_new): added a gboolean argument to determine whether the loop - should be considered initially running or not. however, g_main_run () - will still reset the main loops running state to TRUE upon initial - entrance. - - * gmain.c: - (g_main_iterate): documented this function's purpose in 5 steps. - for step 2), flag sources as G_SOURCE_READY even if !dispatch and - check G_SOURCE_READY prior to (*prepare), so we don't call (*prepare) - on them multiple times. - -Thu Dec 17 23:43:47 1998 Tim Janik <timj@gtk.org> - - * gmain.c (g_main_add_poll): reordered arguments, so GPollFD* comes - first, <sigh> (sorry Snorfle, i should have let you know in the first - place). - (g_main_dispatch): stack G_HOOK_FLAG_IN_CALL flags. call source's - destructor when destroying a source. - -1998-12-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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. - -Wed Dec 16 23:04:26 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.9 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: version=1.1.9 - -Wed Dec 16 22:32:13 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * glib.h: - giounix.c: s/g_main_poll_add/g_main_remove_add/g - s/g_main_poll_remove/g_main_remove_poll/g - s/g_main_poll_add_unlocking/g_main_add_unlocking_poll/g - (from Tim Janik) - -Wed Dec 16 20:04:10 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: check for pthread_attr_init in all cases, du4 - needs this since most of the other functions are just #defines - -Thu Dec 17 04:10:49 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_LOCK_DECLARE_*): if !G_THREADS_ENABLED, eat the - trailing semicolon with a bogus function declaration, instead - of with a bogus variable declarations, so we avoid unused - variable warnings. - -Wed Dec 16 07:49:16 PST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.8 (CVS tag is GLIB_1_1_8a) - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * giounix.c (g_io_channel_unix_get_fd): Fixed small bug. - -1998-12-16 Joel Becker <jlbec@ocala.cs.miami.edu> - - * glib.h, gscanner.c: changed func_data to user_data in - g_scanner_scope_symbol_foreach and associated friends, because - AIX headers #define func_data. - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Fixed stupid bug, that made - g_static_mutex_lock(*mutex) not work as expected. - - * docs/glib-config.1: Updated to reflect the existence of gthread. - - * gmain.c (g_main_poll_add_unlocking): Changed - g_main_poll_add_unlocked to g_main_poll_add_unlocking to match - semantic, (indeed, main_loop must be locked, when calling this - function). Removed the unlocking from the end of that function, as - that is not right. Made a 'HOLDS' comment above the function. - -Wed Dec 16 03:16:58 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.8, binary age 0, interface age 0. - - * glib.h: changed g_lock() to G_LOCK(), g_unlock() to G_UNLOCK() and - g_trylock() to G_TRYLOCK(), since these are macros that expand to - nothing with --disable-threads. - changed G_LOCK_DEFINE() to G_LOCK_DECLARE() and introduced - G_LOCK_DECLARE_STATIC() to achive the results of static G_LOCK_DECLARE(). - changed semantics of g_thread_supported to g_thread_supported() so it - can be used as a function like g_module_supported(). the actuall - definition is still a macro that expands into a variable for - performance reasons though. - various indentation and coding style cleanups. - - * configure.in: added --enable-threads that defaults to yes. - - * gmutex.c: changed tests g_thread_supported to g_thread_supported (), - changed variable settings of g_thread_supported - to g_threads_got_initialized. - - garray.c: - gcache.c: - gdataset.c: - gdate.c: - ghash.c: - glist.c: - gmain.c: - gnode.c: - gslist.c: - gstring.c: - gtree.c: - gutils.c: - changed s/g_lock/G_LOCK/, s/g_unlock/G_UNLOCK/, - s/static G_LOCK_DEFINE/G_LOCK_DECLARE_STATIC/. - -Tue Dec 15 23:16:05 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README - configure.in: - glib.spec: - docs/glib-config.1: Incremented version - -Wed Dec 16 22:29:48 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * configure.in: fixed the AIX thread checking. - Just an error on the wildcard. BTW, -D_THREAD_SAFE - is correct for AIX. - -Wed Dec 16 02:02:48 1998 Tim Janik <timj@gtk.org> - - * glib-config.in (lib_glib): fixed library and flag ordering for - --libs - -Tue Dec 15 17:17:46 1998 Owen Taylor <otaylor@redhat.com> - - * glib.h giounix.c giochannel.c: Use an "inheritance" - scheme for IO channel memory allocation.h - -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 - set up the parser. So use a different date that Solaris seems - to like. - -1998-12-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Dont complain, if --without-threads or - --with-threads=none is supplied; Test for pthread_attr_init - instead of pthread_cond_init, if threads seems to be supported by - standard glib. (CFLAGS): Use G_THREAD_CFLAGS for compiling of glib - as well. - - * glib.h, gmutex.c: Changed private to private_key to avoid - problems when compiling with under C++. - -1998-12-15 Jeff Garzik <jgarzik@Pobox.com> - - * configure.in: - bugfixes, correctly support --without-threads and friends - - * gthread/testgthread.c: corrected 64-bitness problem - -Tue Dec 15 10:40:09 1998 Owen Taylor <otaylor@redhat.com> - - * gnode.c glist.c gslist.c: Make sure all - calls to g_node_validate_allocator are within - current_allocator lock, so we have consistency - on that point. (Should not really matter, - but this way we match the comments) - - * glist.c (g_list_free_1): Removed some lines - that should never have been committed. (For - debugging) - -1998-12-11 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/gthread-nspr.c, configure.in: Added new default thread - implementation on top of the mozilla nspr library. - - * gmem.c, gmessaged.c, gthread/gthread.c, gthread/gthread-*.c: - Changed GStaticMutex and GStaticPrivate in gmem.c and gmessages.c - into GMutex and GPrivate resp. to make error reporting and use of - gmem possible in most (not all, though) gthread functions. Also - initialized the modules via new init functions. - - * configure.in: Fixed syntax bug in definition of type - GStaticMutex. - - * gthread/testgthread.c: Updated to work with nspr, but see note - there for remaining problems. - -1998-12-10 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gmutex.c, glib.h: Now abort, if a mutex/cond/private is - allocated before the thread system is set up. - - * gthread/gthread.c (g_thread_init): Removed g_thread_try_init(), - as it is not necessary. Changed the error message. Corrected logic - for g_thread_use_default_impl. - - * gmutex.c (g_mutex_init): Keep the thread private data array - after calling g_thread_init(). - -1998-12-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/testgthread.c (new_thread): Now also working for posix - threads; (wait_thread): Now a better implementation, that does not - use 100% CPU. - - * Made the thread related code follow GNU coding standard. - - * Made a comment (HOLDS:) above each function, that expects the - given locks to be held. - - * Changed try_lock to trylock throughout. - - * glib.c: Eventually removed the #if 0'ed code for old GStaticMutex. - - * glib.c: Corrected g_trylock macro for G_DEBUG_LOCKS. - - * 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. - - * gthread/gthread-solaris.c: do not use g_log for errors, as g_log - uses these module and endless recursions might happen, just use a - plain fprintf(stderr,...). - - * 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 - of Sebastian Wilhelmi <wilhelmi@ira.uka.de>) - - - configure.in now looks for a system thread implementation. - Currently support is included for POSIX threads - and Solaris threads. The default support is built - into a separate library -lgthread. - - - The thread implementation can be modified by passing - a vector of functions g_thread_init(). - - - The default or supplied functions are used to - implement a small set of thread functions for - mutexes, condition variables, and thread-private - data. - - - GLib now uses these functions to provide thread - safety. (In the sense that all global static - data is locked... individual structures must still - be locked by the caller.) - -Sat Dec 12 19:08:59 1998 Tim Janik <timj@gtk.org> - - * configure.in: always define G_HAVE_INLINE if __cplusplus is - defined, reported by Wan-Teh Chang <wtc@netscape.com>. - -Thu Dec 10 21:49:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.7 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: Increased version to 1.1.7 - -Wed Dec 9 22:44:44 EST 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * Removed #define of G_COMPILED_WITH_DEBUGGING from glibconfig.h - It shouldn't be there, and it was causing a double #define. - (config.h defines it also) - -Tue Dec 8 12:18:38 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.6 - - * NEWS: updated - -Mon Dec 7 23:10:41 PST 1998 Manish Singh <yosh@gimp.org> - - * gmain.c: fixes to #undef HAVE_POLL case - -1998-12-02 Havoc Pennington <hp@pobox.com> - - * 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. - (g_date_set_year): Same. - -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 - 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 - flags, rather than re-checking the validity of the actual - values. This should be the correct behavior, the old way was - leftover cruft. - - * glib.h, gdate.c: Changed MDY to DMY throughout. - -Sat Nov 28 12:53:47 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am configure.in acconfig.h giochannel.c - glib.h glist.c gmain.c gutils.c: - - - Revised GIOChannel to provide a generic virtual-function - based interface. - - Added unix fd-based GIOChannel's - - Added generic main-loop abstraction - - Added timeouts and idle functions using main-loop abstraction. - -1998-12-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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 - include time.h. - -Tue Dec 1 23:01:44 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - 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/ - include time.h. - - * glib.h: removed #include <time.h>, changed time_t paramter of - 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> - - * glib.h: - * ghook.c: added g_hook_list_marshal_check() to eventually destroy - hooks after they got marshalled. - -Sun Nov 29 17:31:43 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * configure.in, Makefile.am, gmodule/Makefile.am: - Put -DFOO stuff into Makefile.am INCLUDES. - -Sun Nov 29 14:17:09 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: put debug -DFOO stuff into CPPFLAGS, not CFLAGS, - so CFLAGS can be overridden at make time properly - -Sat Nov 28 01:23:25 1998 Tim Janik <timj@gtk.org> - - * ghash.c: implemented incremental freezing facility. - -Thu Nov 26 01:36:20 1998 Tim Janik <timj@gtk.org> - - * 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. - -Tue Nov 24 18:57:59 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981120-0, change log appended below. - - * glibconfig.h.win32: passthrough 64-bit constants unchanged, VC++ - infers them - -Fri Nov 20 22:26:43 1998 Tor Lillqvist <tml@iki.fi> - - * glib.h: Moved MSC pragmas from glib.h to glibconfig.h.win32. - peer_offset field in WIN32 part of GIOChannel removed, need_wakeups - added. Added "extern" to __declspec(dllimport). - - * gutils.c: Initialise need_wakeups. - - * glibconfig.h.win32: Pragmas moved here. Define G_GINT64_CONSTANT. - - * gmodule/gmodule.def: Added g_module_build_path. - - * gscanner.c: (g_scanner_cur_value) Move initailisation of v - to before its use. - - * glib.def: Added g_(s)list_sort. - - * makefile.msc: A few more comments. - -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 - 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 - or source incompatibilities. It does add a member to the - GHashTable structure. - -Tue Nov 24 09:40:00 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed the GListAllocator type and its g_*_allocator_*() - function variants (which weren't working anyways) in favour of a - generic GAllocator type. new functions: - g_allocator_new, g_allocator_free, g_slist_push_allocator, - g_slist_pop_allocator, g_list_push_allocator, g_list_pop_allocator, - g_node_push_allocator and g_node_pop_allocator. - - * gstring.c: removed bogus slist allocator code. - * gtree.c: maintain own list of free tree nodes and don't waste - GSLists for that, removed bogus slist allocator code. - * glist.c: use GAllocators for node allocation. - * gslist.c: use GAllocators for node allocation. - * gnode.c: use GAllocators for node allocation. - - * gdataset.c: cleanups wrt automatic initialization. - -Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h garray.[ch]: added g_array_insert_vals() to - insert elements at an arbitrary index, and - g_array_insert_val() macro. - -Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gslist.c: new function g_slist_copy() to duplicate a list with all its - data pointers. - * glist.c: new function g_list_copy. - -Sat Nov 21 14:57:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: Updated to version 1.1.5 - - * Released GLib 1.1.5 - -Wed Nov 18 1998 Elliot Lee <sopwith@redhat.com> - - * gdataset.c: There was a code path into g_data_set_internal - through a function (g_datalist_id_set_full). Neither function - checked for g_dataset_init having been run, but - g_data_set_internal used the memchunk. I added - a check into g_data_set_internal so it will do the - initialization if needed. (There's probably a better way.) - -Mon Nov 16 07:48:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_bit_nth_msf): fixed off-by-one error, so we don't waste - a loop iteration if (-1) was passed, reported by Andreas Bombe - <andreas.bombe@munich.netsurf.de>. - -Fri Nov 13 15:17:34 1998 Owen Taylor <otaylor@redhat.com> - - * glist.c gslist.c glib.h: Added g_list_sort() and - g_slist_sort() to merge sort GLists and GSLists. - Submitted by Sven Over <sven.over@ob.kamp.net> - over a year ago! - - * testglib.c: Test the new sort functions. - -Wed Nov 11 23:23:22 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am : INCLUDES is the right way to add to CFLAGS, not - DEFS. Also there are bugs with '+=' in makefiles. - Got rid of DEFS line by moving G_LOG_DOMAIN setting into INCLUDES. - Removed redundant -I from INCLUDES. - -Wed Nov 11 18:11:24 EST 1998 Gregory McLean <gregm@comstar.net> - - * docs/*.sgml : Batch of new documentation that should be easier - to maintain and extend. Plus generate whatever sort of doc file - you would like. I didn't change the Makefile stuff as I'm not sure - what default doc type people want. Oh and this is all DocBook format. - Enjoy! - -Tue Nov 10 17:12:45 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: use __extension__ for long long on gcc >= 2.8 and - egcs, and provide a G_GINT64_CONSTANT wrapper so -ansi -pedantic - compiles clean. - - * glib.h: make the endian x86 asm __const__ so the compiler can do - better optimizations. Also remove the cc clobber, these shouldn't - be changing condition codes. Ditch some redundant casts. Add an - optimization for 64-bit endian conversions in x86. Use constant - wrapper for the generic method. - - * testglib.c: use constant wrappers for 64-bit constants - -1998-11-04 Phil Schwan <pschwan@cmu.edu> - - * configure.in: Added 'strncasecmp' to the list of functions to be - searched for. - * glib.h: Added a prototype for 'g_strncasecmp' - * gstrfuncs.c: (g_strncasecmp) new function modeled closely after - 'g_strcasecmp' - -Wed Nov 4 15:06:44 PST 1998 Manish Singh <yosh@gimp.org> - - * config.h.win32 (new file) - * glibconfig.h.win32 - * glib.def - * makefile.msc: applied glib-tml-981104, win32 sync - -1998-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * glib.h: - * garray.c: - (g_array_remove_index): new function for removing an entry from an - array while preserving the order - (g_array_remove_index_fast): new function for removing an entry - from an array. the order might be distorted - (g_ptr_array_remove_index_fast, g_ptr_array_remove_fast): new - functions; working similiar to the above. (they have the semantic - of the old g_ptr_array_remove[_index] functions) - (g_ptr_array_remove_index, g_ptr_array_remove): new semantic. now - the order of the elements in the array is not changed - (g_byte_array_remove_index, g_byte_array_remove_index_fast): new - functions; byte_array wrapper for g_array_remove_index[_fast] - -Sun Nov 1 23:00:18 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * configure.in: endian macros defined using the glibconfig.h - mechanism now - - * ghook.c: casts for GHookFunc and GHookCheckFunc to avoid warnings - -Sat Oct 31 20:14:22 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981101-1 patch from Tor Lillqvist (ChangeLog - entry appended below) - - * testglib.c - * gstrfuncs.c - * glib.h: use G_HAVE_GINT64, since HAVE_GINT64 is gone - - * 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. - - * gutils.c: - (g_getenv): Better implementation on Win32. No loop necessary. - (g_get_any_init): Use P_tmpdir if defined as tmp directory. Don't - set home dir always to NULL on Win32. Don't use tmp directory as - last resort home directory, but return NULL if no home - directory is known (application must check). - - * makefile.msc: Better touch command, just COPYing a single file - sets the timestamp from that file, which isn't what touching should - do. - -1998-10-31 Raja R Harinath <harinath@cs.umn.edu> - - Land glib-rrh-19981025-0.patch. - * 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 - concluding "broken wctype". - (glibconfig.h): Use AC_OUTPUT_COMMANDS to put generation code into - config.status. - * glib.h: Remove a lot of tests and defines. All these have been - moved to `configure.in (glibconfig.h)'. - * gerror.c: Include <config.h>. - * 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. - added macros G_STRUCT_OFFSET(), G_STRUCT_MEMBER_P() and - G_STRUCT_MEMBER() for handling structure fields through their offsets. - (struct _GHookList): added a hook_free function member, that can be used - to free additional fields in derived hook structures. - g_hook_free(): if hook_list->hook_free != NULL, call this function prior - to freeing the hook. (this functionality should have been there in the - first place, it just got forgotten as an implementation detail). - -Wed Oct 28 00:49:32 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: G_BREAKPOINT for alpha from Robert Wilhelm - <robert@physiol.med.tu-muenchen.de> - -Tue Oct 27 07:25:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: - (g_scanner_sync_file_offset): new function for file input. - rewind the filedescriptor to the current buffer position and blow - the file read ahead buffer. usefull for third party uses of our - filedescriptor, which hooks onto the current scanning position. - (this became neccessary with the implementation of buffered - reads). - (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. - -Tue Oct 27 00:27:31 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: get rid of duplicate #g_htonl and friends in the - NATIVE_WIN32 part - -Mon Oct 26 22:42:01 PST 1998 Manish Singh <yosh@gimp.org> - - * glibconfig.h.win32 - * gutils.c - * makefile.msc: win32 patch from Tor Lillqvist (glib-tml-981027-0), - fixes some minor win32 buglets - -Mon Oct 26 22:12:03 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: reimplemented the endian stuff, using inline asm - for x86. #define g_htonl and friends. - - * testglib.c: new tests for the endian stuff - - * configure.in: care for AIX in gmodule linker flags test (from - Joel Becker <jlbec@raleigh.ibm.com>). Check $host_os for linux - instead of existance of /usr/include/linux - - * gutils.c: buh-bye evil warning. Thou hast been #ifdef'd out - of thine existance! - -Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed dummy structure definitions for struct _GCache, - _GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk. - - * gutils.c: implement glib's inline functions _after_ all include - statements have been processed. - removed Tor's MAXPATHLEN check since there already was one supplied - further down in this file. - (LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32, - since lcc maybe used on other platforms as well. why in hell is this - stuff required? - (g_get_any_init): for windows, if the user name is supplied, use it as - realname also. - in general, if there is no homedir specified, use the tmpdir that - we already figured. - - * gtimer.c (g_timer_elapsed): changed a g_assert() statement to - g_return_if_fail(). - - * applied glib-tml-981020-0.patch for WIN32 portability, added some - comments and g_return_if_fail() statements, minor indentation fixes. - ChangeLog entry from Tor Lillqvist is appended. - - * glib.h (struct dirent): use lower case structure members. - - * glib.h: - * makefile.lcc: - * makefile.msc: - s/COMPILING_GLIB/GLIB_COMPILATION/ - -1998-10-20: Tor Lillqvist <tml@iki.fi> - - * README.win32 glib.def gmodule.def - * glibconfig.h.win32 gmodule/gmoduleconf.h.win32: - New files for the Windows port. The .def files list exported - symbols for the Microsoft linker and compatibles. - - * configure.in: - Added checks for some platform-dependent headers: pwd.h sys/param.h - sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat. - - * gerror.c: - Conditionalized inclusion of system-dependent headers. Changes - for Windows: no gdb to do a stack trace. Just call abort(). - - * glib.h: - Changes for Windows: - - Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for - platform-dependent file name syntax elements. Added macros - G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for - platform-dependent search path syntax conventions. - - Added pragmas for Microsoft C to make it more pedantic. - - Marked GLib's global variables for export from DLL. - - Added the function g_strescape that escapes backslashes. - - Added functions g_path_is_absolute and g_path_skip_root to - handle platform-dependent file name syntax. - - Added the function g_getenv that expands environment variables - that contain references to other environment variables, as is - typical on Windows NT. - - Added the GIOChannel structure which is used to encapsulate the - IPC mechanism used by the GIMP's plug-ins, and possibly other - things later. On Unix a GIOChannel encapsulates just a file - descriptor. On Windows it contains a file handle from _pipe() and a - few other things related to the implementation of gdk_input_add - and GIMP plug-in communication. Subject to change. - - Removed duplicate declarations of the version variables. - - For the Microsoft compiler, declare own implementation of - ftruncate and the <dirent.h> functions. - - * gmem.c: - Define a symbolic name for the profiling table size. - - * gmessages.c: - Conditionalized inclusion of unistd.h. On Windows, output using - stdio to stdout. - - * gscanner.c: - 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. - - * gtimer.c: - Conditionalized inclusion of unistd.h and sys/time.h. Added - implementations for Windows. - - * gutils.c: - Conditionalized inclusion of platform-dependent headers. Use - the platform-independent file name syntax macros. - Conditionalize code on platform-dependent features. Added the - functions g_path_is_absolute g_path_skip_root and g_getenv. - Added the GIOChannel-related functions. Added - compiler-dependent Unix compatibility functions for Windows. - - * 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 - from gtk-config.1 in gtk - - * configure.in: - * Makefile.am: - * sanity_check: added in docs directory, change rule 'release' - to 'snapshot' and created a new 'release' rule for doing the - distribution. Added in a 'sanity' rule. - - * NEWS: - * 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_get_char): no more characters are available if read() returns - anything less than 1, not only on 0 return. - - * 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(). - (g_strjoinv): renamed from g_str_array_joinv(), string array is - now passed as last parameter. removed `const' qualifier from string - array pointer (again). - (g_strjoin): new function from sopwith to concatenate strings with - an additional seperator. - (g_strfreev): renamed from g_str_array_free. - -Sat Oct 24 22:23:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * gnode.c: small fix to g_node_children_foreach to make it work right. - From Paco Moya <paco@cadnotebk17.eecs.berkeley.edu> - -Wed Oct 21 19:22:58 1998 Tim Janik <timj@gtk.org> - - * configure.in (G_MODULE_HAVE_DLERROR): reverted part of the changes - from Sebastian Wilhelmi (1998-10-20). don't specify a specific loading - behaviour (i.e. RTLD_NOW) when we are not sure whether it is supplied. - changed the return value from (!f2 && f1) to (!f2 || f1) so we default - to not needing an underscore. reverted the extra plugin.c building, - because .lo files are not ELF libraries, this can't work. This needs - further investigation on Solaris... - -Wed Oct 21 17:03:05 1998 Tim Janik <timj@gtk.org> - - * 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 - the in_place arguments were skipped, the caller is supposed to pass a - g_strdup()ed string if he wants to retrive a new copy. indentation and - coding style fixups. added some g_return_if_fail() statements. - string array functions are prefixed with g_str_array_. - (g_strdelimit): return the modified string like all other g_str* - functions, that operate in place. - (g_strchug): renamed from g_str_chug(), removed in_place argument. - (g_strchomp): renamed from g_str_chomp(), removed in_place argument. - (g_strstrip): renamed from g_str_strip(), removed in_place argument. - (g_str_array_join): renamed from g_strconcatv(), since it actually - operates on a string array and has totaly different semantics from - g_strconcat(). check for separator != NULL, don't segfault if the first - string is NULL. removed the `const' from the string array that's passed, - so users can operate on gchar** string arrays. - (g_str_array_split): renamed from g_str_split() because we actually - produce a string array. reimplemented this function for efficiency. - removed macro aliases g_str_joinv and g_str_join. - -1998-10-20 Elliot Lee <sopwith@redhat.com> - - * glib.h, gstrfuncs.c: Move string join/split/free routines from - libgnome/gnome-string, rename, and add g_str_chug. - -1998-10-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: made the check for needed _ in module's func-names - work on solaris. (G_MODULE_NEED_USCORE must be set outside - AC_CACHE_VAL, dlopen(0,0) refused to work on solaris). - -Tue Oct 20 03:32:58 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in - * acconfig.h: added test for endianness - - * glib.h: #define endian macros for system and some conversions - between byte order - -Thu Oct 8 06:47:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: removed functions g_dataset_id_set_destroy and - g_datalist_id_set_destroy and macros g_dataset_set_destroy and - g_datalist_set_destroy. - added new functions g_dataset_id_remove_no_notify and - g_datalist_id_remove_no_notify plus associated macros - g_dataset_remove_no_notify and g_datalist_remove_no_notify, which - will remove a certain data portion without invokation of its destroy - notifier, this should only be used in very controled circumstances. - -Wed Oct 7 05:31:24 1998 Tim Janik <timj@gtk.org> - - * glib.h: - removed the #pragma } statement after extern "C" {. use - (c-set-offset 'inextern-lang 0) to fixup emacs cc-mode indentation. - - * glib.h: - * ghook.c: API and code cleanups. changed the G_HOOK_ACTIVE and - G_HOOK_IN_CALL enum vals to G_HOOK_FLAG_ACTIVE and G_HOOK_FLAG_IN_CALL. - changed the G_HOOK_IS_ACTIVE() and G_HOOK_IS_IN_CALL() macros to - G_HOOK_ACTIVE() and G_HOOK_IN_CALL(). - fixed the g_hook_find* functions, so they iterate over non-active - hooks as well. - (g_hook_first_valid): - (g_hook_next_valid): added an extra argument gboolean may_be_in_call, - which indicates whether G_HOOK_IN_CALL() hooks are considered valid - or not. these two functions are meant as iterators for the hook list - invocation, so they need to a) provide functionality to implement - may_recurse bahaviour and b) only walk active hooks. - -Tue Oct 6 14:29:47 1998 Tim Janik <timj@gtk.org> - - * gmem.c (g_malloc0): fixed memory offsett when ENABLE_MEM_CHECK is - defined and ENABLE_MEM_PROFILE is not (patch from Martin Pool - <mbp@wistful.humbug.org.au>). - -Sat Oct 3 01:18:10 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: - (g_hook_list_invoke): - (g_hook_list_invoke): - (g_hook_list_marshal): properly handle the first valid hook to call, - it maybe IN_CALL already. - (g_hook_list_marshal): minor name change. - -Fri Oct 2 23:21:21 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: renamed GHook.id to GHook.hook_id so we don't get troubles - with ObjC which reserves "id" as a keyword (Raja R Harinath - <harinath@cs.umn.edu>). - -Wed Sep 30 10:53:03 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: added ghook.c. - - * glib.h: - * ghook.c: generic callback maintenance functions. - - * glib.h: define G_GNUC_UNUSED. - -Fri Sep 25 00:04:37 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.4, binary age 0, interface age 0. - - * glib.h (struct _GScanner): dumped peeked_char and text_len in favour - of *text_end and *buffer for buffered read()s. - - * gscanner.c: changed peeking and retrival of next character so we - have buffered reads. fixed minor bug with number parsing error - reporting. made some static!!! variables local ones (why did we use - static temporary variables in the lowlevel tokenization code anyways?). - -Mon Sep 21 23:23:10 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.3 - -Mon Sep 21 07:43:13 1998 Tim Janik <timj@gtk.org> - - * glib.h: added g_renew() which works as g_new() for g_realloc(). - -Mon Sep 21 02:22:12 1998 Tim Janik <timj@gtk.org> - - * NEWS file update for upcoming release of GLib + GModule - version 1.1.3, binary age 0, interface age 0. (GModule uses - the same version numbers as GLib.) - - * glib.h: swap the inclusion of of float.h and limits.h to work - around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by - Per Abrahamsen <abraham@dina.kvl.dk>). - - * glib.h: - * gscanner.c: renamed the GValue union to GTokenValue, this should - not affect source compatibility in most cases. - - * ghash.c: added some g_return_if_fail() statements. make - g_hash_table_lookup_node() an inline function so we save an extra - function invokation on lookups. - -Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com> - - * ltmain.sh: Patch to libtool-1.2b to make --disable-static - work. - -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). - Returns the number of elements deleted. - -Fri Sep 18 11:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_memdup implementation - -Fri Sep 18 18:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: make the datalists a safe type (not using a generic - gpointer) by expecting a GData* argument in the g_datalist functions. - provide g_dataset_foreach() and g_datalist_foreach() functions that - allow a GDataForeachFunc function to walk the data lists. - (g_dataset_destroy_internal): made this function truely reentrant (i.e. - can be called from within destroy notifiers as well). - the *_foreach functions are _not_ reentrant (unless all the other - dataset and datalist functions). - -Fri Sep 18 03:41:20 1998 Tim Janik <timj@gtk.org> - - * gtree.c (g_tree_new): check for key_compare_func != NULL (reported - by Michal Kara). - -Thu Sep 17 18:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * config.h.in: removed from repository - - * install-sh - * missing - * mkinstalldirs: updated to latest automake version - -Thu Sep 17 06:36:25 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: implemented g_datalist_* along the lines of g_dataset, - but operates on an opaque gpointer *datalist; pointer, e.g. for the - implementation of GtkObject named data. - we cache a certain portion of the already freed data entries now, to - gain a slight performance improve with data reallocation. - -Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am glib-config.in l*: Update to libtool-1.2b, - change library versioning scheme to drop LT_RELEASE - from the -l line, while keeping it in the soname. - -Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org> - - * glib.h: explicitely include the prototypes for inline functions - to cure gcc warnings for -Wmissing-prototypes. - -Wed Sep 9 02:52:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -posix check for NeXTStep - -Tue Sep 8 05:04:06 1998 Tim Janik <timj@gtk.org> - - * glib.h: abandon the use of ATEXIT(), we keep the fallback - macros for backwards compatibility. people ought to use g_atexit(). - - * gutils.c (g_atexit): new function to take over the implementation - of ATEXIT. this function is guarranteed to succeed, similar to - g_malloc(). - -Mon Sep 7 20:07:38 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: comment the -std1 check and save LIBS properly - -Mon Sep 7 07:53:21 1998 Tim Janik <timj@gtk.org> - - * configure.in: check for all three inline keywords individually. - - * 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'. - 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 - prototypes if no inlinig can be performed. we special case most of the - stuff, so inline functions can have a normal implementation by defining - G_INLINE_FUNC to extern and G_CAN_INLINE to 1. - - * ltconfig: (compiler PIC flag test): special case linux for non - aout systems to honour lcc's position independant code (cases - "linux*aout)" and "linux*)" got added). (this needs to go into - libtool which does an advanced test, checking for __LCC__). - - * autogen.sh: take $CC=lcc into account by invoking automake with - --include-deps so lcc isn't scared by gcc's auto-dependancy - generation code. care about $ACLOCAL_FLAGS. optionally feature - autoheader. - - * minor fixups in other places to cure some of lcc's warnings. - -Sun Sep 6 19:08:53 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -std1 check for ANSI compliance (from gtk) - -Sun Sep 6 12:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: provide proper ATEXIT behavior on NeXTStep by !atexit - -Sat Sep 5 18:03:36 1998 Tom Tromey <tromey@cygnus.com> - - * gutils.c (GLIB_INLINE): Define. - * glib.h (GLIB_INLINE): New define. - (g_bit_nth_msf): Use it. Also, add prototype. - (g_bit_storage): Likewise. - (g_bit_storage): Likewise. - -Sat Sep 5 04:40:02 1998 Tim Janik <timj@gtk.org> - - * 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. - - * gmem.c: new function g_mem_chunk_alloc0() which will initialize - a memory area allocated with g_mem_chunk_alloc() with 0's. - -Wed Sep 2 19:13:28 1998 Owen Taylor <otaylor@redhat.com> - - * garray.c glib.h (g_array_[ap/pre]pend_vals): make - data argument const. - -Wed Aug 26 06:32:40 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstrfuncs.c: new function g_strnfill() to return a new string - of specified length, filled with a specific character. - -Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu> - - * testglib.c (main): Update the array tests. Reduce the number of - iterations for the prepend test from 10000 to 100 since it is - O(n^2) and was taking longer than I would like to wait. - - * garray.c: I've worked on the GArray interface, mostly. It was - seriously broken before and I hate to do it, but this is going to - break some code. It is important to do this now, because more and - more people are starting to use glib and the interface was both - broken and inconsistent. First, rename the _truncate functions of - both the GArray and GPtrArray classes to _set_size, since this - function can also be used to extend the arrays. GArray now - accepts two more initialization arguments: clear and element_size. - Instead of providing the type to each access function, the array - now stores the element size. Clear, if set, causes the library to - zero element's memory as the array expands. The major broken-ness - here was that array->len was in bytes, not elements. Now, since - the array knows its element size, array->len is correct and I have - removed the g_array_length macro. The only macro which now - accepts the type as an argument is g_array_index, which casts the - element to the right type--this interface does not change. The - append and prepend functions simply need the types removed. - g_ptr_array_remove_index now returns the removed element. - - * gprimes.c (g_spaced_primes_closest): Move this function out of - ghash.c and rename it from g_hash_closest_prime. Fix the primes - so that they are actually prime (they weren't all -- isn't that - nice?). - -Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstring.c: - * gstrfuncs.c: - (g_vsprintf): removed this function which was not publically - exported in glib.h. to export it, it should have been named - differently in the first place, since its semantics differ from - vsprintf(). apart from that, it was a possible cause for - problems since it worked on a previously allocated memory area and - was used in a lot places of glib. exporting it would have been a - guararant for problems with threaded programs. - (g_printf_string_upper_bound): exported this function to return - a string size, guarranteed to be big enough to hold the fully - expanded format+args string. added 'q', 'L' and 'll' flag handling. - in fact, the newly allocated area is in most cases much bigger than - required. - (g_strdup_vprintf()): new function returning a newly allocated string - containing the contents of *format and associated args (size is - calculated with g_printf_string_upper_bound()). - (g_strdup_printf): new function which wraps g_strdup_vprintf(). - - * configure.in: check for va_copy() or __va_copy() alternatively. - check whether va_lists can be copyied by value. - - * glib.h: provide a definition for G_VA_COPY. - - * glib.h: - * gmessages.c: - (g_logv): - (g_vsnprintf): - pass va_lists by value, not by reference, since this causes problems - on platforms that implement va_list as as arrays. internaly, use - G_VA_COPY (new_arg, org_arg); va_end (new_arg); to produce a second - va_list variable, if multiple passes are required. changed all - callers. - - * glib.h: - * gerror.h: - renamed g_debug() to g_on_error_query(), cleaned up a bit. - renamed g_stack_trace() to g_on_error_stack_trace() since both - functions cluttered different namespaces. - there is an appropriate comment in glib.h now that explains the - unix and gdb specific dependencies of both functions. - removed g_attach_process(). - g_on_error_stack_trace() should probably be handled with caution, - i've seem several different linux versions (2.0.x) become unstable - after invokation of this function. - -1998-08-18: Elliot Lee <sopwith@redhat.com> - - * In gmem.c, add the ability to exclude memory chunks from the - memory profiling information. - -Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_strndup - -Tue Aug 18 04:40:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: new function g_log_set_always_fatal() to set an - additional fatal_mask for log levels that are considered to be fatal - globally (required by gtk). since this mask is not domain-associated, - it is restricted to the log levels, introduced by glib itself. - - * gmem.c: - * grel.c: - * gtree.c (g_tree_node_check): - don't use g_print() calls for informational/debugging output, - but log all this stuff through g_log() with G_LOG_LEVEL_INFO. - libraries shouldn't use printf(), g_print() or g_printerr() at all. - -Tue Aug 18 02:46:44 1998 Tim Janik <timj@gtk.org> - - - * glib.h (__STRICT_ANSI__): if __STRICT_ANSI__ is defined, make - `inline' a noop, since strict ANSI rules don't permit `inline'. - -Mon Aug 17 15:21:42 1998 Tim Janik <timj@gtk.org> - - * grel.c: made private functions static. - -Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to - EXTRA_DIST - * glib.spec: version = 1.1.3 - -Mon Aug 17 01:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.m4: feature an extra MODULES parameter, so glib-config can - be invoked with the "gmodule" argument. - - * glib.h: changed the log level to G_LOG_LEVEL_CRITICAL for all - g_return*_if_fail statements, and made them issue a message - like "assertion `%s' failed". - - * gmessages.c (g_logv): ugh, don't pass log_domain as NULL to - g_log_find_domain. - -Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org> - - * version bump to 1.1.3, binary age 0, interface age 0. - - * glib.h: be nice to platforms that don't have gint64 and don't - issue #warning on every compilation. since glib doesn't require - gint64 itself, packages that need gint64 should test for this - themselves. - - * glib.h: - * gutils.c: added a new function g_vsnprintf(). - -Sun Aug 16 Elliot Lee - - glib.h: #error out if we don't recognize the SIZEOF_VOID_P - #warning if no gint64 - -Fri Aug 14 16:41:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: added static inline functions for bit mask tests: - g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage. - -Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: - revised the message handling system, which is now based on a new - mechanism g_log*. most of the assertment macros got adapted to - feature the new g_log() call with an additional specification of - the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN - is undefined upon the includion of glib.h, it'll be defined with a - value of (NULL) and thus preserves the original bahaviour for - warning and error messages. the message handler setting functions - for g_warning, g_error and g_message are only provided for backwards - compatibility and might get removed somewhen. - - * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain - to "GLib" upon compilation. we currently have to add this definition - to the DEFS variable. - * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start - of this file currently, since automake doesn't support per target - _CFLAGS yet. - - * glib.h: changed some gints to gbooleans, made a few const corrections, - removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some - in other required places. - - * gnode.c: - (g_node_prepend): - (g_node_insert_before): - (g_node_insert): - (g_node_append_data): - (g_node_prepend_data): - (g_node_insert_data_before): - (g_node_insert_data): - (g_node_append): - return (node), so these macros/functions can be usefully chained with - g_node_new(). - -Mon Aug 10 17:56:11 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: it's GTime now, and it's back! - -Mon Aug 10 02:17:19 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: minor hack to cause SUBDIRS (gmodule) to be build - last. we do this by making all-recursive-am depend on all-am. - -Sun Aug 9 15:56:11 1998 Tim Janik <timj@gtk.org> - - * configure.in: added GModule checks. generate files in gmodule/. - * glib-config.in: support library specifications `glib' and `gmodule'. - * Makefile.am: feature the gmodule/ subdir. - -Wed Aug 5 10:04:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.2 - -Wed Aug 05 01:15:36 1998 George Lebl <jirka@5z.com> - - * testglib.c: fix 64-bitness in g_prints, sizeof doesn't - seem to return int so I cast it for printing, probably - just cosmetic - -Tue Aug 4 19:54:06 PDT 1998 Shawn T. Amundson <amundson@gkt.org> - - * Released GLib 1.1.1 - -Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.1, binary age 1, interface age 0. - * NEWS: updates. - * README: updates. - * INSTALL: updates and fixes. - * COPYING: include the GNU LGPL, rather than shipping an empty file. - * AUTHORS: listed original authors here, and added people who made - significant improvements to glib. - - * glib.h: - * gutils.c: implement g_get_current_dir() which returns a newly - allocated string, instead of a g_getcwd() variant that operates - on a static buffer. - export glib_interface_age and glib_binary_age. - as a convenience, macro definitions have been added for - g_node_insert_data, g_node_insert_data_before, g_node_append_data and - g_node_prepend_data. - - * testglib.c: minor cleanups, print current dir. - -Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gnode.c: change order of gpointer data; field in struct _GNode to - be partly binary compatible with GList and GSList. - -1998-08-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * garray.c (g_ptr_array_remove_index): bugfix: index check for - array has been wrong. - -Fri Jul 31 22:17:05 1998 Tim Janik <timj@gtk.org> - - * testglib.c (g_node_test): added a GNode test. - -Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: compile gnode.c. - - * glib.h: - * gnode.c: added implementation of n-way trees. - - * gtree.c (g_tree_traverse): added a warning to the switch() statement - which says that G_LEVEL_ORDER is not implemented. - -Mon Jul 27 00:17:30 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.0 - -Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: #if 0'ed out the GTime definition, until it is definitively - needed. #if 0'ed out the g_getcwd() version, because it is the wrong - implementation. - -Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu> - - * glib.h: gtime changed to g_time. gtime is used in - /usr/include/time.h in NetBSD, causing multiple headaches. - If this isn't the right way of fixing it.... ;) - -Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: new functions to make a scanner scope sensitive wrt - symbol lookups. - g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol, - g_scanner_scope_remove_symbol, g_scanner_scope_add_symbol and - g_scanner_set_scope. - g_scanner_add_symbol, g_scanner_remove_symbol and - g_scanner_foreach_symbol are now aliases for scope 0. - -Mon Jul 20 23:05:34 1998 George Lebl <jirka@5z.com> - - * glib.h: typo fixed for alphas for gint64 - -Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.c: new fuction g_dirname() which returns a newlly - allocated string. - -Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.h: added a bunch of utility/wrapper functions: - g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(), - g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname(). - - * gutils.c: removed all g_str* functions. - * gstrfuncs.c: moved the bunch g_str* functions from gutils.c in this - place. this file shall never include <unistd.h> to avoid clashes for - some of the g_str* functions on some OSes. - -Fri Jul 10 00:29:03 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Renamed g_hash_table_lookup_full to - g_hash_table_lookup_extended to conform with naming conventions. - -Tue Jul 7 03:18:58 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Generic cleanup, added a function: - (g_hash_table_lookup_full): Return whether the lookup succeeded, - and also retrieve the key and value. This allows one to - distinguish between failed lookup and finding a NULL, and also - allows one to free a key in the hash. - -Mon Jul 6 10:12:05 PDT 1998 Manish Singh <yosh@gimp.org> - - * ltconfig: fix for properly detecting shared lib support on - SunPro cc (taken from libtool 1.2.a) - -Sat Jul 4 13:38:52 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: added g_array_length - -Tue Jun 30 11:58:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): take symbol_2_token into - account. react on valid/invalid string pairs. - -Sat Jun 27 21:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.m4: ftp.glib.org -> ftp.gtk.org, since glib.org isn't - ours. ;) - -Fri Jun 19 03:11:02 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: removed g_dataset_try_key, g_dataset_force_id and - g_dataset_retrive_key in favour of GQuarks. - a GQuark is an numeric id wich is associated with a certain string. - (g_quark_try_string): try to get the quark associated with this string, - if the lookup failed return 0. - (g_quark_from_string): get the associated quark for a string, if there - isn't currently a GQuark associated with this string, then allocate a - new quark and return that. - (g_quark_from_static_string): like the above function, but the string - isn't strdup()ed to save memory. - (g_quark_to_string): get the string that is associated with a certain - GQuark. - - * gdataset.c (g_dataset_id_set_data_full): invoke the destroy function - _after_ the new data has been setup. - -Thu Jun 18 02:35:21 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Changed messages for g_return_[val]_if_fail to - be somewhat more clear: assertion "blah" failed. - -1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * testglib.c (main): Use GINT_TO_POINTER casts to remove compiler - warnings. - - * grel.c: #include <string.h> - -Fri Jun 12 15:39:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (GScanner): cleanups of the structure fields (binary - incompatible). - -Fri Jun 12 00:39:28 1998 Josh MacDonald <jmacd@icw.EECS.Berkeley.EDU> - - * glib.h: add new hash and equal functions g_int_*. complement - g_direct_hash with g_direct_equal. - - * grel.c: new file, GRelations implement tuples of N-N mappings. - A comment in glib.h briefly describes the interface. - - * ghash.c: new function, g_hash_table_size - - * glib.h: new typedefs, gsize, gssize, gtime. - - * garray.c: new functions implementing a simplified GArray. This - GPtrArray is an array of gpointers and has functions to add and - remove elements, much like java.lang.Vector. - - * garray.c: new functions for the single-byte special case of - GArray. The functions g_byte_array* operate on arrays of bytes. - Internally, a GArray is used. - - * testglib.c: tests for g_ptr_array, g_byte_array, and g_relation... - -1998-06-11 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gdataset.c: #include <string.h> - -Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: new function g_dataset_retrive_key. adjusted prealloc - sizes, to take up less space on initial allocation. - -1998-06-10 Raja R Harinath <harinath@cs.umn.edu> - - * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2, - the version from which glib's libtool forked. Needed for people - who use post-1.2 alphas of libtool. - * configure.in (enable_mem_check, enable_mem_profile): Replace - `echo -n' with AC_MSG_CHECKING. - (fd_set): Explain test for `fd_set' better. - -Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org> - - * Makefile.am glib.m4 configure.in: - - Moved out from GTK+; added AM_PATH_GLIB macro. - -Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: renamed g_const_pointer => gconstpointer - -Tue Jun 9 17:47:33 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Remove #error - HP/UX. - -Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org> - [ Combination of: - gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>) - gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ] - - * glib.h ghash.c gstring.c gdataset.c gutils.c: - - Added new typedef g_const_pointer; expunged all incorrect - uses of 'const gpointer'. - - Fixed up warnings that that created, - - Changed GHashFunc and GCompareFunc to take g_const_pointer - arguments. (Necessary, but will cause warnings in existing - code until fixed) - - Added other new const in harmless positions. - -Mon Jun 8 01:06:47 1998 Tim Janik <timj@gtk.org> - - * glib.h: added enum-helper macros for code generation. - added G_BREAKPOINT(). - -Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org> - - * gmem.c: commented out MEM_PROFILE and MEM_CHECK, causing weird - problems - -Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_chunk_new0): convenience macro, for allocating small chunks - like g_chunk_new() with additional 0 initialization. - -Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org> - - * ghash.c (g_hash_table_insert): wrote a comment describing why - a hash node's key should not also get replaced when overriding - previous entries. - -Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_string_sized_new): new function to controll the preallocated - size of a GString. - - * glib.h (g_strreversed): new function to reverse a string. - -Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org> -(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch) - - * gutils.c: Restored a missing prototype for g_vsprintf. - -Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: conditionally define NULL, FALSE and TRUE. - (g_mem_chunk_create): new convenience macro as a short hand for - g_mem_chunk_new(). - (g_chunk_free): new convenience macro to be consistent with g_chunk_new. - -Tue, 19 May 1998 09:00:02 +0200 Paolo Molaro <lupus@debian.org> - - * gcompletion.c: generic functions for com<TAB>pletion... - -Sun May 17 10:48:27 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): provide usefull default - specifications for identifier_spec and symbol_spec. - - * glib.h: new functions g_slist_nth_data and g_list_nth_data to return - the data of the nth element in the list. - -Fri May 15 22:31:49 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) - that for some reason didn't produce a compiler warning on my machine - (is va_end defined to nothing for i386?). - -Fri May 15 12:32:08 1998 rodo <doulik@karlin.mff.cuni.cz> - - * gscanner.c: replaced some snprintf with g_snprintf - -Fri May 15 00:56:59 1998 Tim Janik <timj@gtk.org> - - * glib.h: further support for gcc function attributes: G_GNUC_FORMAT, - G_GNUC_NORETURN and G_GNUC_CONST. - - * gscanner.c (g_scanner_stat_mode): changed stat() to lstat(). - (g_scanner_msg_handler): "\n" at end of line! - (g_scanner_foreach_symbol): new function to iterate over the symbol - table (GScanner does value-wrapping). - -Thu May 14 04:14:12 1998 Tim Janik <timj@gtk.org> - - * glib.h: typedef gint gboolean; - this is needed to provide portability with big-endian platforms (e.g. - try sizeof(bool) for c++ on big-endians - it's 4). - this is also needed to maintain some_union.d_gint==some_union.d_gboolean. - plus, gint to gboolean casts and vice versa need to be possible without - loss. - -Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib/glib.h: Added macros G[U]INT_TO_POINTER() and - GPOINTER_TO_[U]INT for storing small integers integers - inside pointers. - - * glib/testglib.c: Print sizeof() results - as g_print("%ld", (glong)sizeof(foo)), to deal with - size_t being long on Alpha's. - -Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org> - (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch) - - * glib.h gstring.c gmessages.c: Added some missing - const to arguments. - - * gutils.c (g_strsignal.c): Added missing return statements. - -Mon May 11 21:11:54 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c gmessages.c: Moved g_error, g_warning, g_message and - g_print from gutils.c to new file gmessages.c, to avoid having to - include <unistd.h> in gutils.c which was causing problems for the - g_strsignal implementation on FreeBSD boxes. - -Mon May 11 09:53:43 1998 Tim Janik <timj@gtk.org> - - * configure.in: preserve automake CFLAGS. - - * Makefile.am: fully rename the created library to libglib-1.1.la. - this means we need to change certain portions of the Makefile.am on - major/minor version bumps. - - * ltmain.sh: the -release option is not required anymore. - - * glib.h: provide G_GNUC_FUNCTION and G_GNUC_PRETTY_FUNCTION to - avoid conditionals. unconditionally define NULL, TRUE, FALSE, MAX, - MIN, ABS and CLAMP, these macros might be screwed from other headers. - -Mon May 11 01:44:10 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: new file, gdatasets implement the object data - mechanism from GtkObject. a generic data pointer is associated with - a certain location and a key id. - -Sat May 9 20:08:12 1998 Owen Taylor <otaylor@gtk.org> - - * glib/gmem.c: Experimentally restore GMemChunk - to its primeval state - where mem areas are - freed incrementally instead of searching the tree - every time a mem area is completely empty. Also, - always keep one mem chunk around. (Reduced calls - to malloc() a lot, but doesn't really improve - performance significiantly) - -Thu May 7 08:17:28 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_GNUC_PRINTF): - (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument - checking of gcc. - - * gstring.c: const corrections, string!=NULL checks at function entry. - (g_string_down): new function for tolower(3) conversion. - (g_string_up): new function for toupper(3) conversion. - - * gutils.c: const corrections. - (g_strdown): g_string_down() counterpart. - (g_strup): g_string_up() counterpart. - - * gscanner.c (g_scanner_unexp_token): - (g_scanner_error): - (g_scanner_warn): new functions to let a scanner put out warnings - or errors, especially to react on unexpected tokens. - - * gslist.c: - (g_slist_index): find out about about the position of a - certain data pointer. - (g_slist_position): find out about about the position of a - certain node. - - * glist.c: - (g_list_index): find out about about the position of a - certain data pointer. - -Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org> - - * ltmain.sh: added a new commandline flag -postfix similar to -release, - but will immediately change the library name. - - * Makefile.am: specify -postfix and -version-info - - * configure.in: version bump to 1.1.0. added GLIB_INTERFACE_AGE and - GLIB_BINARY_AGE. calculate LT_* variables for libtool. - -Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c: (g_strcasecmp). Check for isupper before - taking tolower, and account for macroized tolower. - - * gutils.c (g_error): Check for recursion. - -1998-04-27 Elliot Lee <sopwith@cuc.ml.org> - - * glist.c (g_list_position): New function to find the position of - a link in a list - should be the inverse of g_list_nth(), but - haven't tested it so poof. - -Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org> - - * gstring.c : Check arguments more carefully, - (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de) - -Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_direct_compare): Removed, because that's what - a NULL comparison function means. And it wasn't 64 bit safe. - -Mon Apr 6 18:43:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_get_token_ll): fixed a bug that caused floats - of the format ".xxx" to be parsed as "xxx". - -Fri Apr 3 20:36:35 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_parse_debug_string): Make debug string - parsine case-insensitive - -Fri Apr 3 17:03:18 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: corrected possible overrun when inserting into - GStrings (thanks Elrond) - -Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu> - - * testglib.c: Removed literal german from strings - to appease SGI compiler. - -Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in glib glibconfig.h.in: Add test for atexit/on_exit - - use on_exit if atexit not found in definition of ATEXIT. - -Wed Mar 25 15:23:37 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Switched glibconfig.h rule from HEADERS - to DATA, so that it is not added to DISTFILES - -Wed Mar 18 22:27:08 PST 1998 Manish Singh <yosh@gimp.org> - - * garray.c: g_rarray_truncate length done correctly - -Sun Mar 15 07:13:34 1998 Tim Janik <timj@gimp.org> - - * gutils.c: changed *_handler variables to be named glib_*_handler, - so you can easily access them from gdb. - -Sat Mar 14 17:47:43 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Don't refer to current directory as $(top_builddir) - to avoid confusing non-gmakes - -Sat Mar 14 01:37:35 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am (configincludedir): Moved glibconfig.h to - $(pkglibdir)/include - -Tue Mar 10 02:03:12 1998 Tim Janik <timj@gimp.org> - - * gscanner.c (g_scanner_destroy_symbol_table_entry): new function to - free symbol table entries upon destruction - (gtk-gronlund-980309-0.patch.gz). - -Mon Mar 9 15:02:21 1998 Tim Janik <timj@gimp.org> - - * glib.h: changed *_length functions to return guint. - changed *_nth functions to take guint as argument. - - * glist.c: adapted g_list_length and g_list_length. - - * gslist.c: adapted g_slist_length and g_slist_length. - -Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gutils.c : changed g_strcasecmp - to take gchar* not guchar* - - * testglib.c: Remove trailing ; after functions - -Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gstring.c: Added g_string_insert[_c]() - and g_string_erase(). - - From: Stefan Wille <1wille@vsys1.informatik.uni-hamburg.de> - -Mon Feb 16 23:05:06 1998 Owen Taylor <owt1@cornell.edu> - - * glist.c (g_list_insert_sorted): Changed function - so elements are always inserted, even if they compare - equal with another. - -Thu Feb 12 22:48:11 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c glib.h: removed deprecated g_string_equal - and g_string_hash. - -Tue Feb 10 13:04:36 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in: Add check to see if the C library's - iswalnum can actually be used. (Not true for - Linux libc-5.4.38) - -Sat Feb 7 11:48:09 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c gutils.c: added some additional consts in - appropriate places to remove a warning - -Sat Feb 7 11:15:54 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c: include <ctype.h> for tolower() - -Fri Jan 30 23:57:17 PST 1998 Manish Singh <yosh@gimp.org> - - * added and autoconfigured in a new utility function - g_strcasecmp - -Wed Jan 28 23:53:27 PST 1998 Manish Singh <yosh@gimp.org> - - * glist.c - * gslist.c - * testglib.c: the sort functions compared backwards. Fixed - * glib.h: list iterator macros now check for NULL pointers - -Tue Jan 27 09:46:57 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: g_string_prepend and g_string_prepend_c had - interchanged src and dest parameters for g_memmove. Fixed. - -Tue Jan 27 01:38:52 PST 1998 Manish Singh <yosh@gimp.org> - - * gslist.c: fixed a really, really lame error. g_slist_insert - didn't hook the data in! Reworked the routine to reflect the - functionality of g_list - -Wed Jan 21 01:13:25 1998 Tim Janik <timj@psynet.net> - - * Applied patch from (Raja R Harinath <harinath@cs.umn.edu>) - to add function g_snprintf. - * configure.in (AC_CHECK_FUNCS): Check for vsnprintf. - * glib.h: Add prototype for g_snprintf. - * glibconfig.h.in: Add HAVE_VSNPRINTF. - * gutils.c (g_snprintf): new function. - -Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.{c,h} gscanner.c: - renamed g_string_equal => g_str_equal - renamed g_string_hash => g_str_hash - And const corrected. Old functions left in for now. - -Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net> - - * gutils.c (g_strerror): changed message for EAGAIN from - "no more processes" to "try again" since EAGAIN is used with - functions else than fork(). - - * gscanner.c (g_scanner_get_token_ll): use strtol() instead of - strtoul() to avoid conflicts with solaris. - - * merged the glib portions from Jan 2 to Jan 7 out of gtk+/ChangeLog - into this file. - -Wed Jan 7 02:14:30 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: - * glist.c: - * gslist.c: - * testglib.c: Added g_[s]list_insert_sorted function - and appropriate tests in testglib - -Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h: Changed guint32 -> guint for bitfields. - (Bitfields must be int or unsigned int?) - -Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: reverted glibconfig.h and glib.h files back to the - way they were before my ugly hack. - - * gscanner.c: removed inlines from clist and gscanner - -Tue Dec 23 02:49:51 1997 Tim Janik <timj@psynet.net> - - * gscanner.c: new file for GScanner: Flexible lexical scanner for - general purpose. - * glib_pre2.h: added GScanner includes. added g_strconcat and g_strtod. - gutils.c (g_strconcat): new function for string concatenation of NULL - terminated parameter list. - (g_strtod): new function to perform best string to double conversion - with or without consideration of the current locale. - -Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net> - - * glist.c: minor optimizations: - (g_list_append): `if' optimized for common code path, commented out - unneccessary `assert', saved one variable assignment. - (g_list_prepend): saved two (conditioned) variable assignment. - (g_list_insert): saved one (conditioned) variable assignment, - saved one variable assignment. - (g_list_remove): `if' optimized for common code path, saved two - variable assignments by using `g_list_free_1' (which is even - faster) instead of `g_list_free'. - (g_list_reverse): saved allocation of one variable, saved one - variable assignment. - -Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: this file now gets concatenated by makeglib_h from - glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got - created by configure (done by Jay Painter). - - * glib_pre2.h: the g_assert*() and g_return_*_fail() macros - are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts - when used within if (...) g_macro(); else ... conditionals. - -Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to - not call 'g_string' but to simply stringify the - expression. Calling 'g_string' causes the expression to be - expanded which is undesired. - -Sun Dec 1 01:30:48 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * Started ChangeLog + * configure.in: set glib version to 1.3.0. diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 7add274d9..f9b8b0664 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,2841 +1,23 @@ -Thu Feb 04 20:42:24 1999 Tor Lillqvist <tml@iki.fi> +Sat Mar 6 11:03:08 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) - * glibconfig.h.win32 config.h.win32: Update GLIB_MICRO_VERSION. + * gutils.c (g_get_any_init): add OS/2 changes. + change '\\' in HOME to '/'. -1999-02-04 Christopher Blizzard <blizzard@redhat.com> +1999-03-03 Josh MacDonald <jmacd@spin.dsl.pacbell.net> - * glib.spec (Packager): Change my email address + * glib.def: g_spaced_primes_closest was omitted here, so I + couldn't build Xdelta on Windows. -Thu Feb 4 01:45:01 PST 1999 Shawn T. Amundson <amundson@gtk.org> +1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - * ChangeLog - NEWS - README - configure.in - glib.spec - docs/glib-config.1: version=1.1.15 + * gutils.c (g_get_any_init): Fixed yet another bloody + implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche + <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure + test better than that, but have no idea, how to do that easily. - * Released GLib 1.1.15 +Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org> -Tue Feb 02 00:08:54 1999 Tor Lillqvist <tml@iki.fi> + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. - * gmessages.c (g_log_default_handler): (Win32:) Don't call - ensure_stdout_valid (which would open an unneeded console window) - if we're calling a logging function. Define ensure_stdout_valid - as an empty macro on Unix. - - * gutils.c (g_get_any_init): (Win32:) Trust HOME first if defined, - then try HOMEDRIVE and HOMEPATH. - -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). - -Fri Jan 22 16:51:44 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Added galloca.c. - - * galloca.c: - Compile even if G_NATIVE_ALLOCA is not defined. - Don't use g_free and g_malloc [yet?]. Code appears to depend on - internal malloc() alignment sizes. - - * tests/alloca-test.c: - Always test internal alloca replacement too, even if we have a - working alloca. - Make tests a little bit better by adding recursion - (more stack activity). - -Fri Jan 22 13:41:41 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * configure.in: - Add checks for alloca, defining G_NATIVE_ALLOCA if present. - - * galloca.c: - Import replacement alloca implementation from gettext 0.10.35. - Begin to convert to using GLib types and functions. - - * glib.h: - New macros g_alloca, g_alloca_gc, g_alloca_new, to perform - stack-based memory allocations. - - * tests/Makefile.am, tests/queue-test.c, tests/alloca-test.c: - New tests for g_alloca_*, GQueue ADT. - - * tests/stack-test.c: - Fix pointer casts, include config.h, and - call g_stack_free at end of run. - -Fri Jan 22 11:58:13 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Add gqueue.c. - - * glib.h: - Add GQueue struct and prototypes. - Remove g_stack_free macro. - - * gqueue.c - New file. Implementation of a queue ADT. - - * gstack.c: - Rename _g_stack_free back to g_stack_free. - - * tests/Makefile.am, tests/stack-test.c: - New test for GStack objects. - -Fri Jan 22 02:06:10 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * gstack.c: - New stack ADT implementation. - - * glib.h: - Add g_stack function prototypes and macros. - -Thu Jan 21 23:55:54 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * TODO: - New file. Short notes on what has been said in e-mail, plus a - couple other new items. - - * glib.h, glist.c: - New function g_list_delete(). Removes a node from the list, - then frees it. - -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 - expiration times > 1sec. - -1998-12-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in (have_threads): Changed the last pthread_cond_init - to pthread_attr_init. - -Fri Dec 18 00:03:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmain.c: - (g_main_is_running): new function to check whether a main loop has been - quitted. - (g_main_new): added a gboolean argument to determine whether the loop - should be considered initially running or not. however, g_main_run () - will still reset the main loops running state to TRUE upon initial - entrance. - - * gmain.c: - (g_main_iterate): documented this function's purpose in 5 steps. - for step 2), flag sources as G_SOURCE_READY even if !dispatch and - check G_SOURCE_READY prior to (*prepare), so we don't call (*prepare) - on them multiple times. - -Thu Dec 17 23:43:47 1998 Tim Janik <timj@gtk.org> - - * gmain.c (g_main_add_poll): reordered arguments, so GPollFD* comes - first, <sigh> (sorry Snorfle, i should have let you know in the first - place). - (g_main_dispatch): stack G_HOOK_FLAG_IN_CALL flags. call source's - destructor when destroying a source. - -1998-12-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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. - -Wed Dec 16 23:04:26 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.9 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: version=1.1.9 - -Wed Dec 16 22:32:13 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * glib.h: - giounix.c: s/g_main_poll_add/g_main_remove_add/g - s/g_main_poll_remove/g_main_remove_poll/g - s/g_main_poll_add_unlocking/g_main_add_unlocking_poll/g - (from Tim Janik) - -Wed Dec 16 20:04:10 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: check for pthread_attr_init in all cases, du4 - needs this since most of the other functions are just #defines - -Thu Dec 17 04:10:49 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_LOCK_DECLARE_*): if !G_THREADS_ENABLED, eat the - trailing semicolon with a bogus function declaration, instead - of with a bogus variable declarations, so we avoid unused - variable warnings. - -Wed Dec 16 07:49:16 PST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.8 (CVS tag is GLIB_1_1_8a) - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * giounix.c (g_io_channel_unix_get_fd): Fixed small bug. - -1998-12-16 Joel Becker <jlbec@ocala.cs.miami.edu> - - * glib.h, gscanner.c: changed func_data to user_data in - g_scanner_scope_symbol_foreach and associated friends, because - AIX headers #define func_data. - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Fixed stupid bug, that made - g_static_mutex_lock(*mutex) not work as expected. - - * docs/glib-config.1: Updated to reflect the existence of gthread. - - * gmain.c (g_main_poll_add_unlocking): Changed - g_main_poll_add_unlocked to g_main_poll_add_unlocking to match - semantic, (indeed, main_loop must be locked, when calling this - function). Removed the unlocking from the end of that function, as - that is not right. Made a 'HOLDS' comment above the function. - -Wed Dec 16 03:16:58 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.8, binary age 0, interface age 0. - - * glib.h: changed g_lock() to G_LOCK(), g_unlock() to G_UNLOCK() and - g_trylock() to G_TRYLOCK(), since these are macros that expand to - nothing with --disable-threads. - changed G_LOCK_DEFINE() to G_LOCK_DECLARE() and introduced - G_LOCK_DECLARE_STATIC() to achive the results of static G_LOCK_DECLARE(). - changed semantics of g_thread_supported to g_thread_supported() so it - can be used as a function like g_module_supported(). the actuall - definition is still a macro that expands into a variable for - performance reasons though. - various indentation and coding style cleanups. - - * configure.in: added --enable-threads that defaults to yes. - - * gmutex.c: changed tests g_thread_supported to g_thread_supported (), - changed variable settings of g_thread_supported - to g_threads_got_initialized. - - garray.c: - gcache.c: - gdataset.c: - gdate.c: - ghash.c: - glist.c: - gmain.c: - gnode.c: - gslist.c: - gstring.c: - gtree.c: - gutils.c: - changed s/g_lock/G_LOCK/, s/g_unlock/G_UNLOCK/, - s/static G_LOCK_DEFINE/G_LOCK_DECLARE_STATIC/. - -Tue Dec 15 23:16:05 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README - configure.in: - glib.spec: - docs/glib-config.1: Incremented version - -Wed Dec 16 22:29:48 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * configure.in: fixed the AIX thread checking. - Just an error on the wildcard. BTW, -D_THREAD_SAFE - is correct for AIX. - -Wed Dec 16 02:02:48 1998 Tim Janik <timj@gtk.org> - - * glib-config.in (lib_glib): fixed library and flag ordering for - --libs - -Tue Dec 15 17:17:46 1998 Owen Taylor <otaylor@redhat.com> - - * glib.h giounix.c giochannel.c: Use an "inheritance" - scheme for IO channel memory allocation.h - -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 - set up the parser. So use a different date that Solaris seems - to like. - -1998-12-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Dont complain, if --without-threads or - --with-threads=none is supplied; Test for pthread_attr_init - instead of pthread_cond_init, if threads seems to be supported by - standard glib. (CFLAGS): Use G_THREAD_CFLAGS for compiling of glib - as well. - - * glib.h, gmutex.c: Changed private to private_key to avoid - problems when compiling with under C++. - -1998-12-15 Jeff Garzik <jgarzik@Pobox.com> - - * configure.in: - bugfixes, correctly support --without-threads and friends - - * gthread/testgthread.c: corrected 64-bitness problem - -Tue Dec 15 10:40:09 1998 Owen Taylor <otaylor@redhat.com> - - * gnode.c glist.c gslist.c: Make sure all - calls to g_node_validate_allocator are within - current_allocator lock, so we have consistency - on that point. (Should not really matter, - but this way we match the comments) - - * glist.c (g_list_free_1): Removed some lines - that should never have been committed. (For - debugging) - -1998-12-11 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/gthread-nspr.c, configure.in: Added new default thread - implementation on top of the mozilla nspr library. - - * gmem.c, gmessaged.c, gthread/gthread.c, gthread/gthread-*.c: - Changed GStaticMutex and GStaticPrivate in gmem.c and gmessages.c - into GMutex and GPrivate resp. to make error reporting and use of - gmem possible in most (not all, though) gthread functions. Also - initialized the modules via new init functions. - - * configure.in: Fixed syntax bug in definition of type - GStaticMutex. - - * gthread/testgthread.c: Updated to work with nspr, but see note - there for remaining problems. - -1998-12-10 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gmutex.c, glib.h: Now abort, if a mutex/cond/private is - allocated before the thread system is set up. - - * gthread/gthread.c (g_thread_init): Removed g_thread_try_init(), - as it is not necessary. Changed the error message. Corrected logic - for g_thread_use_default_impl. - - * gmutex.c (g_mutex_init): Keep the thread private data array - after calling g_thread_init(). - -1998-12-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/testgthread.c (new_thread): Now also working for posix - threads; (wait_thread): Now a better implementation, that does not - use 100% CPU. - - * Made the thread related code follow GNU coding standard. - - * Made a comment (HOLDS:) above each function, that expects the - given locks to be held. - - * Changed try_lock to trylock throughout. - - * glib.c: Eventually removed the #if 0'ed code for old GStaticMutex. - - * glib.c: Corrected g_trylock macro for G_DEBUG_LOCKS. - - * 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. - - * gthread/gthread-solaris.c: do not use g_log for errors, as g_log - uses these module and endless recursions might happen, just use a - plain fprintf(stderr,...). - - * 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 - of Sebastian Wilhelmi <wilhelmi@ira.uka.de>) - - - configure.in now looks for a system thread implementation. - Currently support is included for POSIX threads - and Solaris threads. The default support is built - into a separate library -lgthread. - - - The thread implementation can be modified by passing - a vector of functions g_thread_init(). - - - The default or supplied functions are used to - implement a small set of thread functions for - mutexes, condition variables, and thread-private - data. - - - GLib now uses these functions to provide thread - safety. (In the sense that all global static - data is locked... individual structures must still - be locked by the caller.) - -Sat Dec 12 19:08:59 1998 Tim Janik <timj@gtk.org> - - * configure.in: always define G_HAVE_INLINE if __cplusplus is - defined, reported by Wan-Teh Chang <wtc@netscape.com>. - -Thu Dec 10 21:49:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.7 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: Increased version to 1.1.7 - -Wed Dec 9 22:44:44 EST 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * Removed #define of G_COMPILED_WITH_DEBUGGING from glibconfig.h - It shouldn't be there, and it was causing a double #define. - (config.h defines it also) - -Tue Dec 8 12:18:38 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.6 - - * NEWS: updated - -Mon Dec 7 23:10:41 PST 1998 Manish Singh <yosh@gimp.org> - - * gmain.c: fixes to #undef HAVE_POLL case - -1998-12-02 Havoc Pennington <hp@pobox.com> - - * 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. - (g_date_set_year): Same. - -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 - 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 - flags, rather than re-checking the validity of the actual - values. This should be the correct behavior, the old way was - leftover cruft. - - * glib.h, gdate.c: Changed MDY to DMY throughout. - -Sat Nov 28 12:53:47 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am configure.in acconfig.h giochannel.c - glib.h glist.c gmain.c gutils.c: - - - Revised GIOChannel to provide a generic virtual-function - based interface. - - Added unix fd-based GIOChannel's - - Added generic main-loop abstraction - - Added timeouts and idle functions using main-loop abstraction. - -1998-12-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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 - include time.h. - -Tue Dec 1 23:01:44 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - 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/ - include time.h. - - * glib.h: removed #include <time.h>, changed time_t paramter of - 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> - - * glib.h: - * ghook.c: added g_hook_list_marshal_check() to eventually destroy - hooks after they got marshalled. - -Sun Nov 29 17:31:43 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * configure.in, Makefile.am, gmodule/Makefile.am: - Put -DFOO stuff into Makefile.am INCLUDES. - -Sun Nov 29 14:17:09 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: put debug -DFOO stuff into CPPFLAGS, not CFLAGS, - so CFLAGS can be overridden at make time properly - -Sat Nov 28 01:23:25 1998 Tim Janik <timj@gtk.org> - - * ghash.c: implemented incremental freezing facility. - -Thu Nov 26 01:36:20 1998 Tim Janik <timj@gtk.org> - - * 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. - -Tue Nov 24 18:57:59 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981120-0, change log appended below. - - * glibconfig.h.win32: passthrough 64-bit constants unchanged, VC++ - infers them - -Fri Nov 20 22:26:43 1998 Tor Lillqvist <tml@iki.fi> - - * glib.h: Moved MSC pragmas from glib.h to glibconfig.h.win32. - peer_offset field in WIN32 part of GIOChannel removed, need_wakeups - added. Added "extern" to __declspec(dllimport). - - * gutils.c: Initialise need_wakeups. - - * glibconfig.h.win32: Pragmas moved here. Define G_GINT64_CONSTANT. - - * gmodule/gmodule.def: Added g_module_build_path. - - * gscanner.c: (g_scanner_cur_value) Move initailisation of v - to before its use. - - * glib.def: Added g_(s)list_sort. - - * makefile.msc: A few more comments. - -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 - 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 - or source incompatibilities. It does add a member to the - GHashTable structure. - -Tue Nov 24 09:40:00 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed the GListAllocator type and its g_*_allocator_*() - function variants (which weren't working anyways) in favour of a - generic GAllocator type. new functions: - g_allocator_new, g_allocator_free, g_slist_push_allocator, - g_slist_pop_allocator, g_list_push_allocator, g_list_pop_allocator, - g_node_push_allocator and g_node_pop_allocator. - - * gstring.c: removed bogus slist allocator code. - * gtree.c: maintain own list of free tree nodes and don't waste - GSLists for that, removed bogus slist allocator code. - * glist.c: use GAllocators for node allocation. - * gslist.c: use GAllocators for node allocation. - * gnode.c: use GAllocators for node allocation. - - * gdataset.c: cleanups wrt automatic initialization. - -Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h garray.[ch]: added g_array_insert_vals() to - insert elements at an arbitrary index, and - g_array_insert_val() macro. - -Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gslist.c: new function g_slist_copy() to duplicate a list with all its - data pointers. - * glist.c: new function g_list_copy. - -Sat Nov 21 14:57:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: Updated to version 1.1.5 - - * Released GLib 1.1.5 - -Wed Nov 18 1998 Elliot Lee <sopwith@redhat.com> - - * gdataset.c: There was a code path into g_data_set_internal - through a function (g_datalist_id_set_full). Neither function - checked for g_dataset_init having been run, but - g_data_set_internal used the memchunk. I added - a check into g_data_set_internal so it will do the - initialization if needed. (There's probably a better way.) - -Mon Nov 16 07:48:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_bit_nth_msf): fixed off-by-one error, so we don't waste - a loop iteration if (-1) was passed, reported by Andreas Bombe - <andreas.bombe@munich.netsurf.de>. - -Fri Nov 13 15:17:34 1998 Owen Taylor <otaylor@redhat.com> - - * glist.c gslist.c glib.h: Added g_list_sort() and - g_slist_sort() to merge sort GLists and GSLists. - Submitted by Sven Over <sven.over@ob.kamp.net> - over a year ago! - - * testglib.c: Test the new sort functions. - -Wed Nov 11 23:23:22 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am : INCLUDES is the right way to add to CFLAGS, not - DEFS. Also there are bugs with '+=' in makefiles. - Got rid of DEFS line by moving G_LOG_DOMAIN setting into INCLUDES. - Removed redundant -I from INCLUDES. - -Wed Nov 11 18:11:24 EST 1998 Gregory McLean <gregm@comstar.net> - - * docs/*.sgml : Batch of new documentation that should be easier - to maintain and extend. Plus generate whatever sort of doc file - you would like. I didn't change the Makefile stuff as I'm not sure - what default doc type people want. Oh and this is all DocBook format. - Enjoy! - -Tue Nov 10 17:12:45 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: use __extension__ for long long on gcc >= 2.8 and - egcs, and provide a G_GINT64_CONSTANT wrapper so -ansi -pedantic - compiles clean. - - * glib.h: make the endian x86 asm __const__ so the compiler can do - better optimizations. Also remove the cc clobber, these shouldn't - be changing condition codes. Ditch some redundant casts. Add an - optimization for 64-bit endian conversions in x86. Use constant - wrapper for the generic method. - - * testglib.c: use constant wrappers for 64-bit constants - -1998-11-04 Phil Schwan <pschwan@cmu.edu> - - * configure.in: Added 'strncasecmp' to the list of functions to be - searched for. - * glib.h: Added a prototype for 'g_strncasecmp' - * gstrfuncs.c: (g_strncasecmp) new function modeled closely after - 'g_strcasecmp' - -Wed Nov 4 15:06:44 PST 1998 Manish Singh <yosh@gimp.org> - - * config.h.win32 (new file) - * glibconfig.h.win32 - * glib.def - * makefile.msc: applied glib-tml-981104, win32 sync - -1998-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * glib.h: - * garray.c: - (g_array_remove_index): new function for removing an entry from an - array while preserving the order - (g_array_remove_index_fast): new function for removing an entry - from an array. the order might be distorted - (g_ptr_array_remove_index_fast, g_ptr_array_remove_fast): new - functions; working similiar to the above. (they have the semantic - of the old g_ptr_array_remove[_index] functions) - (g_ptr_array_remove_index, g_ptr_array_remove): new semantic. now - the order of the elements in the array is not changed - (g_byte_array_remove_index, g_byte_array_remove_index_fast): new - functions; byte_array wrapper for g_array_remove_index[_fast] - -Sun Nov 1 23:00:18 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * configure.in: endian macros defined using the glibconfig.h - mechanism now - - * ghook.c: casts for GHookFunc and GHookCheckFunc to avoid warnings - -Sat Oct 31 20:14:22 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981101-1 patch from Tor Lillqvist (ChangeLog - entry appended below) - - * testglib.c - * gstrfuncs.c - * glib.h: use G_HAVE_GINT64, since HAVE_GINT64 is gone - - * 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. - - * gutils.c: - (g_getenv): Better implementation on Win32. No loop necessary. - (g_get_any_init): Use P_tmpdir if defined as tmp directory. Don't - set home dir always to NULL on Win32. Don't use tmp directory as - last resort home directory, but return NULL if no home - directory is known (application must check). - - * makefile.msc: Better touch command, just COPYing a single file - sets the timestamp from that file, which isn't what touching should - do. - -1998-10-31 Raja R Harinath <harinath@cs.umn.edu> - - Land glib-rrh-19981025-0.patch. - * 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 - concluding "broken wctype". - (glibconfig.h): Use AC_OUTPUT_COMMANDS to put generation code into - config.status. - * glib.h: Remove a lot of tests and defines. All these have been - moved to `configure.in (glibconfig.h)'. - * gerror.c: Include <config.h>. - * 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. - added macros G_STRUCT_OFFSET(), G_STRUCT_MEMBER_P() and - G_STRUCT_MEMBER() for handling structure fields through their offsets. - (struct _GHookList): added a hook_free function member, that can be used - to free additional fields in derived hook structures. - g_hook_free(): if hook_list->hook_free != NULL, call this function prior - to freeing the hook. (this functionality should have been there in the - first place, it just got forgotten as an implementation detail). - -Wed Oct 28 00:49:32 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: G_BREAKPOINT for alpha from Robert Wilhelm - <robert@physiol.med.tu-muenchen.de> - -Tue Oct 27 07:25:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: - (g_scanner_sync_file_offset): new function for file input. - rewind the filedescriptor to the current buffer position and blow - the file read ahead buffer. usefull for third party uses of our - filedescriptor, which hooks onto the current scanning position. - (this became neccessary with the implementation of buffered - reads). - (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. - -Tue Oct 27 00:27:31 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: get rid of duplicate #g_htonl and friends in the - NATIVE_WIN32 part - -Mon Oct 26 22:42:01 PST 1998 Manish Singh <yosh@gimp.org> - - * glibconfig.h.win32 - * gutils.c - * makefile.msc: win32 patch from Tor Lillqvist (glib-tml-981027-0), - fixes some minor win32 buglets - -Mon Oct 26 22:12:03 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: reimplemented the endian stuff, using inline asm - for x86. #define g_htonl and friends. - - * testglib.c: new tests for the endian stuff - - * configure.in: care for AIX in gmodule linker flags test (from - Joel Becker <jlbec@raleigh.ibm.com>). Check $host_os for linux - instead of existance of /usr/include/linux - - * gutils.c: buh-bye evil warning. Thou hast been #ifdef'd out - of thine existance! - -Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed dummy structure definitions for struct _GCache, - _GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk. - - * gutils.c: implement glib's inline functions _after_ all include - statements have been processed. - removed Tor's MAXPATHLEN check since there already was one supplied - further down in this file. - (LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32, - since lcc maybe used on other platforms as well. why in hell is this - stuff required? - (g_get_any_init): for windows, if the user name is supplied, use it as - realname also. - in general, if there is no homedir specified, use the tmpdir that - we already figured. - - * gtimer.c (g_timer_elapsed): changed a g_assert() statement to - g_return_if_fail(). - - * applied glib-tml-981020-0.patch for WIN32 portability, added some - comments and g_return_if_fail() statements, minor indentation fixes. - ChangeLog entry from Tor Lillqvist is appended. - - * glib.h (struct dirent): use lower case structure members. - - * glib.h: - * makefile.lcc: - * makefile.msc: - s/COMPILING_GLIB/GLIB_COMPILATION/ - -1998-10-20: Tor Lillqvist <tml@iki.fi> - - * README.win32 glib.def gmodule.def - * glibconfig.h.win32 gmodule/gmoduleconf.h.win32: - New files for the Windows port. The .def files list exported - symbols for the Microsoft linker and compatibles. - - * configure.in: - Added checks for some platform-dependent headers: pwd.h sys/param.h - sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat. - - * gerror.c: - Conditionalized inclusion of system-dependent headers. Changes - for Windows: no gdb to do a stack trace. Just call abort(). - - * glib.h: - Changes for Windows: - - Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for - platform-dependent file name syntax elements. Added macros - G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for - platform-dependent search path syntax conventions. - - Added pragmas for Microsoft C to make it more pedantic. - - Marked GLib's global variables for export from DLL. - - Added the function g_strescape that escapes backslashes. - - Added functions g_path_is_absolute and g_path_skip_root to - handle platform-dependent file name syntax. - - Added the function g_getenv that expands environment variables - that contain references to other environment variables, as is - typical on Windows NT. - - Added the GIOChannel structure which is used to encapsulate the - IPC mechanism used by the GIMP's plug-ins, and possibly other - things later. On Unix a GIOChannel encapsulates just a file - descriptor. On Windows it contains a file handle from _pipe() and a - few other things related to the implementation of gdk_input_add - and GIMP plug-in communication. Subject to change. - - Removed duplicate declarations of the version variables. - - For the Microsoft compiler, declare own implementation of - ftruncate and the <dirent.h> functions. - - * gmem.c: - Define a symbolic name for the profiling table size. - - * gmessages.c: - Conditionalized inclusion of unistd.h. On Windows, output using - stdio to stdout. - - * gscanner.c: - 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. - - * gtimer.c: - Conditionalized inclusion of unistd.h and sys/time.h. Added - implementations for Windows. - - * gutils.c: - Conditionalized inclusion of platform-dependent headers. Use - the platform-independent file name syntax macros. - Conditionalize code on platform-dependent features. Added the - functions g_path_is_absolute g_path_skip_root and g_getenv. - Added the GIOChannel-related functions. Added - compiler-dependent Unix compatibility functions for Windows. - - * 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 - from gtk-config.1 in gtk - - * configure.in: - * Makefile.am: - * sanity_check: added in docs directory, change rule 'release' - to 'snapshot' and created a new 'release' rule for doing the - distribution. Added in a 'sanity' rule. - - * NEWS: - * 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_get_char): no more characters are available if read() returns - anything less than 1, not only on 0 return. - - * 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(). - (g_strjoinv): renamed from g_str_array_joinv(), string array is - now passed as last parameter. removed `const' qualifier from string - array pointer (again). - (g_strjoin): new function from sopwith to concatenate strings with - an additional seperator. - (g_strfreev): renamed from g_str_array_free. - -Sat Oct 24 22:23:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * gnode.c: small fix to g_node_children_foreach to make it work right. - From Paco Moya <paco@cadnotebk17.eecs.berkeley.edu> - -Wed Oct 21 19:22:58 1998 Tim Janik <timj@gtk.org> - - * configure.in (G_MODULE_HAVE_DLERROR): reverted part of the changes - from Sebastian Wilhelmi (1998-10-20). don't specify a specific loading - behaviour (i.e. RTLD_NOW) when we are not sure whether it is supplied. - changed the return value from (!f2 && f1) to (!f2 || f1) so we default - to not needing an underscore. reverted the extra plugin.c building, - because .lo files are not ELF libraries, this can't work. This needs - further investigation on Solaris... - -Wed Oct 21 17:03:05 1998 Tim Janik <timj@gtk.org> - - * 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 - the in_place arguments were skipped, the caller is supposed to pass a - g_strdup()ed string if he wants to retrive a new copy. indentation and - coding style fixups. added some g_return_if_fail() statements. - string array functions are prefixed with g_str_array_. - (g_strdelimit): return the modified string like all other g_str* - functions, that operate in place. - (g_strchug): renamed from g_str_chug(), removed in_place argument. - (g_strchomp): renamed from g_str_chomp(), removed in_place argument. - (g_strstrip): renamed from g_str_strip(), removed in_place argument. - (g_str_array_join): renamed from g_strconcatv(), since it actually - operates on a string array and has totaly different semantics from - g_strconcat(). check for separator != NULL, don't segfault if the first - string is NULL. removed the `const' from the string array that's passed, - so users can operate on gchar** string arrays. - (g_str_array_split): renamed from g_str_split() because we actually - produce a string array. reimplemented this function for efficiency. - removed macro aliases g_str_joinv and g_str_join. - -1998-10-20 Elliot Lee <sopwith@redhat.com> - - * glib.h, gstrfuncs.c: Move string join/split/free routines from - libgnome/gnome-string, rename, and add g_str_chug. - -1998-10-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: made the check for needed _ in module's func-names - work on solaris. (G_MODULE_NEED_USCORE must be set outside - AC_CACHE_VAL, dlopen(0,0) refused to work on solaris). - -Tue Oct 20 03:32:58 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in - * acconfig.h: added test for endianness - - * glib.h: #define endian macros for system and some conversions - between byte order - -Thu Oct 8 06:47:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: removed functions g_dataset_id_set_destroy and - g_datalist_id_set_destroy and macros g_dataset_set_destroy and - g_datalist_set_destroy. - added new functions g_dataset_id_remove_no_notify and - g_datalist_id_remove_no_notify plus associated macros - g_dataset_remove_no_notify and g_datalist_remove_no_notify, which - will remove a certain data portion without invokation of its destroy - notifier, this should only be used in very controled circumstances. - -Wed Oct 7 05:31:24 1998 Tim Janik <timj@gtk.org> - - * glib.h: - removed the #pragma } statement after extern "C" {. use - (c-set-offset 'inextern-lang 0) to fixup emacs cc-mode indentation. - - * glib.h: - * ghook.c: API and code cleanups. changed the G_HOOK_ACTIVE and - G_HOOK_IN_CALL enum vals to G_HOOK_FLAG_ACTIVE and G_HOOK_FLAG_IN_CALL. - changed the G_HOOK_IS_ACTIVE() and G_HOOK_IS_IN_CALL() macros to - G_HOOK_ACTIVE() and G_HOOK_IN_CALL(). - fixed the g_hook_find* functions, so they iterate over non-active - hooks as well. - (g_hook_first_valid): - (g_hook_next_valid): added an extra argument gboolean may_be_in_call, - which indicates whether G_HOOK_IN_CALL() hooks are considered valid - or not. these two functions are meant as iterators for the hook list - invocation, so they need to a) provide functionality to implement - may_recurse bahaviour and b) only walk active hooks. - -Tue Oct 6 14:29:47 1998 Tim Janik <timj@gtk.org> - - * gmem.c (g_malloc0): fixed memory offsett when ENABLE_MEM_CHECK is - defined and ENABLE_MEM_PROFILE is not (patch from Martin Pool - <mbp@wistful.humbug.org.au>). - -Sat Oct 3 01:18:10 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: - (g_hook_list_invoke): - (g_hook_list_invoke): - (g_hook_list_marshal): properly handle the first valid hook to call, - it maybe IN_CALL already. - (g_hook_list_marshal): minor name change. - -Fri Oct 2 23:21:21 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: renamed GHook.id to GHook.hook_id so we don't get troubles - with ObjC which reserves "id" as a keyword (Raja R Harinath - <harinath@cs.umn.edu>). - -Wed Sep 30 10:53:03 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: added ghook.c. - - * glib.h: - * ghook.c: generic callback maintenance functions. - - * glib.h: define G_GNUC_UNUSED. - -Fri Sep 25 00:04:37 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.4, binary age 0, interface age 0. - - * glib.h (struct _GScanner): dumped peeked_char and text_len in favour - of *text_end and *buffer for buffered read()s. - - * gscanner.c: changed peeking and retrival of next character so we - have buffered reads. fixed minor bug with number parsing error - reporting. made some static!!! variables local ones (why did we use - static temporary variables in the lowlevel tokenization code anyways?). - -Mon Sep 21 23:23:10 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.3 - -Mon Sep 21 07:43:13 1998 Tim Janik <timj@gtk.org> - - * glib.h: added g_renew() which works as g_new() for g_realloc(). - -Mon Sep 21 02:22:12 1998 Tim Janik <timj@gtk.org> - - * NEWS file update for upcoming release of GLib + GModule - version 1.1.3, binary age 0, interface age 0. (GModule uses - the same version numbers as GLib.) - - * glib.h: swap the inclusion of of float.h and limits.h to work - around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by - Per Abrahamsen <abraham@dina.kvl.dk>). - - * glib.h: - * gscanner.c: renamed the GValue union to GTokenValue, this should - not affect source compatibility in most cases. - - * ghash.c: added some g_return_if_fail() statements. make - g_hash_table_lookup_node() an inline function so we save an extra - function invokation on lookups. - -Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com> - - * ltmain.sh: Patch to libtool-1.2b to make --disable-static - work. - -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). - Returns the number of elements deleted. - -Fri Sep 18 11:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_memdup implementation - -Fri Sep 18 18:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: make the datalists a safe type (not using a generic - gpointer) by expecting a GData* argument in the g_datalist functions. - provide g_dataset_foreach() and g_datalist_foreach() functions that - allow a GDataForeachFunc function to walk the data lists. - (g_dataset_destroy_internal): made this function truely reentrant (i.e. - can be called from within destroy notifiers as well). - the *_foreach functions are _not_ reentrant (unless all the other - dataset and datalist functions). - -Fri Sep 18 03:41:20 1998 Tim Janik <timj@gtk.org> - - * gtree.c (g_tree_new): check for key_compare_func != NULL (reported - by Michal Kara). - -Thu Sep 17 18:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * config.h.in: removed from repository - - * install-sh - * missing - * mkinstalldirs: updated to latest automake version - -Thu Sep 17 06:36:25 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: implemented g_datalist_* along the lines of g_dataset, - but operates on an opaque gpointer *datalist; pointer, e.g. for the - implementation of GtkObject named data. - we cache a certain portion of the already freed data entries now, to - gain a slight performance improve with data reallocation. - -Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am glib-config.in l*: Update to libtool-1.2b, - change library versioning scheme to drop LT_RELEASE - from the -l line, while keeping it in the soname. - -Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org> - - * glib.h: explicitely include the prototypes for inline functions - to cure gcc warnings for -Wmissing-prototypes. - -Wed Sep 9 02:52:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -posix check for NeXTStep - -Tue Sep 8 05:04:06 1998 Tim Janik <timj@gtk.org> - - * glib.h: abandon the use of ATEXIT(), we keep the fallback - macros for backwards compatibility. people ought to use g_atexit(). - - * gutils.c (g_atexit): new function to take over the implementation - of ATEXIT. this function is guarranteed to succeed, similar to - g_malloc(). - -Mon Sep 7 20:07:38 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: comment the -std1 check and save LIBS properly - -Mon Sep 7 07:53:21 1998 Tim Janik <timj@gtk.org> - - * configure.in: check for all three inline keywords individually. - - * 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'. - 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 - prototypes if no inlinig can be performed. we special case most of the - stuff, so inline functions can have a normal implementation by defining - G_INLINE_FUNC to extern and G_CAN_INLINE to 1. - - * ltconfig: (compiler PIC flag test): special case linux for non - aout systems to honour lcc's position independant code (cases - "linux*aout)" and "linux*)" got added). (this needs to go into - libtool which does an advanced test, checking for __LCC__). - - * autogen.sh: take $CC=lcc into account by invoking automake with - --include-deps so lcc isn't scared by gcc's auto-dependancy - generation code. care about $ACLOCAL_FLAGS. optionally feature - autoheader. - - * minor fixups in other places to cure some of lcc's warnings. - -Sun Sep 6 19:08:53 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -std1 check for ANSI compliance (from gtk) - -Sun Sep 6 12:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: provide proper ATEXIT behavior on NeXTStep by !atexit - -Sat Sep 5 18:03:36 1998 Tom Tromey <tromey@cygnus.com> - - * gutils.c (GLIB_INLINE): Define. - * glib.h (GLIB_INLINE): New define. - (g_bit_nth_msf): Use it. Also, add prototype. - (g_bit_storage): Likewise. - (g_bit_storage): Likewise. - -Sat Sep 5 04:40:02 1998 Tim Janik <timj@gtk.org> - - * 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. - - * gmem.c: new function g_mem_chunk_alloc0() which will initialize - a memory area allocated with g_mem_chunk_alloc() with 0's. - -Wed Sep 2 19:13:28 1998 Owen Taylor <otaylor@redhat.com> - - * garray.c glib.h (g_array_[ap/pre]pend_vals): make - data argument const. - -Wed Aug 26 06:32:40 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstrfuncs.c: new function g_strnfill() to return a new string - of specified length, filled with a specific character. - -Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu> - - * testglib.c (main): Update the array tests. Reduce the number of - iterations for the prepend test from 10000 to 100 since it is - O(n^2) and was taking longer than I would like to wait. - - * garray.c: I've worked on the GArray interface, mostly. It was - seriously broken before and I hate to do it, but this is going to - break some code. It is important to do this now, because more and - more people are starting to use glib and the interface was both - broken and inconsistent. First, rename the _truncate functions of - both the GArray and GPtrArray classes to _set_size, since this - function can also be used to extend the arrays. GArray now - accepts two more initialization arguments: clear and element_size. - Instead of providing the type to each access function, the array - now stores the element size. Clear, if set, causes the library to - zero element's memory as the array expands. The major broken-ness - here was that array->len was in bytes, not elements. Now, since - the array knows its element size, array->len is correct and I have - removed the g_array_length macro. The only macro which now - accepts the type as an argument is g_array_index, which casts the - element to the right type--this interface does not change. The - append and prepend functions simply need the types removed. - g_ptr_array_remove_index now returns the removed element. - - * gprimes.c (g_spaced_primes_closest): Move this function out of - ghash.c and rename it from g_hash_closest_prime. Fix the primes - so that they are actually prime (they weren't all -- isn't that - nice?). - -Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstring.c: - * gstrfuncs.c: - (g_vsprintf): removed this function which was not publically - exported in glib.h. to export it, it should have been named - differently in the first place, since its semantics differ from - vsprintf(). apart from that, it was a possible cause for - problems since it worked on a previously allocated memory area and - was used in a lot places of glib. exporting it would have been a - guararant for problems with threaded programs. - (g_printf_string_upper_bound): exported this function to return - a string size, guarranteed to be big enough to hold the fully - expanded format+args string. added 'q', 'L' and 'll' flag handling. - in fact, the newly allocated area is in most cases much bigger than - required. - (g_strdup_vprintf()): new function returning a newly allocated string - containing the contents of *format and associated args (size is - calculated with g_printf_string_upper_bound()). - (g_strdup_printf): new function which wraps g_strdup_vprintf(). - - * configure.in: check for va_copy() or __va_copy() alternatively. - check whether va_lists can be copyied by value. - - * glib.h: provide a definition for G_VA_COPY. - - * glib.h: - * gmessages.c: - (g_logv): - (g_vsnprintf): - pass va_lists by value, not by reference, since this causes problems - on platforms that implement va_list as as arrays. internaly, use - G_VA_COPY (new_arg, org_arg); va_end (new_arg); to produce a second - va_list variable, if multiple passes are required. changed all - callers. - - * glib.h: - * gerror.h: - renamed g_debug() to g_on_error_query(), cleaned up a bit. - renamed g_stack_trace() to g_on_error_stack_trace() since both - functions cluttered different namespaces. - there is an appropriate comment in glib.h now that explains the - unix and gdb specific dependencies of both functions. - removed g_attach_process(). - g_on_error_stack_trace() should probably be handled with caution, - i've seem several different linux versions (2.0.x) become unstable - after invokation of this function. - -1998-08-18: Elliot Lee <sopwith@redhat.com> - - * In gmem.c, add the ability to exclude memory chunks from the - memory profiling information. - -Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_strndup - -Tue Aug 18 04:40:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: new function g_log_set_always_fatal() to set an - additional fatal_mask for log levels that are considered to be fatal - globally (required by gtk). since this mask is not domain-associated, - it is restricted to the log levels, introduced by glib itself. - - * gmem.c: - * grel.c: - * gtree.c (g_tree_node_check): - don't use g_print() calls for informational/debugging output, - but log all this stuff through g_log() with G_LOG_LEVEL_INFO. - libraries shouldn't use printf(), g_print() or g_printerr() at all. - -Tue Aug 18 02:46:44 1998 Tim Janik <timj@gtk.org> - - - * glib.h (__STRICT_ANSI__): if __STRICT_ANSI__ is defined, make - `inline' a noop, since strict ANSI rules don't permit `inline'. - -Mon Aug 17 15:21:42 1998 Tim Janik <timj@gtk.org> - - * grel.c: made private functions static. - -Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to - EXTRA_DIST - * glib.spec: version = 1.1.3 - -Mon Aug 17 01:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.m4: feature an extra MODULES parameter, so glib-config can - be invoked with the "gmodule" argument. - - * glib.h: changed the log level to G_LOG_LEVEL_CRITICAL for all - g_return*_if_fail statements, and made them issue a message - like "assertion `%s' failed". - - * gmessages.c (g_logv): ugh, don't pass log_domain as NULL to - g_log_find_domain. - -Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org> - - * version bump to 1.1.3, binary age 0, interface age 0. - - * glib.h: be nice to platforms that don't have gint64 and don't - issue #warning on every compilation. since glib doesn't require - gint64 itself, packages that need gint64 should test for this - themselves. - - * glib.h: - * gutils.c: added a new function g_vsnprintf(). - -Sun Aug 16 Elliot Lee - - glib.h: #error out if we don't recognize the SIZEOF_VOID_P - #warning if no gint64 - -Fri Aug 14 16:41:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: added static inline functions for bit mask tests: - g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage. - -Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: - revised the message handling system, which is now based on a new - mechanism g_log*. most of the assertment macros got adapted to - feature the new g_log() call with an additional specification of - the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN - is undefined upon the includion of glib.h, it'll be defined with a - value of (NULL) and thus preserves the original bahaviour for - warning and error messages. the message handler setting functions - for g_warning, g_error and g_message are only provided for backwards - compatibility and might get removed somewhen. - - * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain - to "GLib" upon compilation. we currently have to add this definition - to the DEFS variable. - * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start - of this file currently, since automake doesn't support per target - _CFLAGS yet. - - * glib.h: changed some gints to gbooleans, made a few const corrections, - removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some - in other required places. - - * gnode.c: - (g_node_prepend): - (g_node_insert_before): - (g_node_insert): - (g_node_append_data): - (g_node_prepend_data): - (g_node_insert_data_before): - (g_node_insert_data): - (g_node_append): - return (node), so these macros/functions can be usefully chained with - g_node_new(). - -Mon Aug 10 17:56:11 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: it's GTime now, and it's back! - -Mon Aug 10 02:17:19 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: minor hack to cause SUBDIRS (gmodule) to be build - last. we do this by making all-recursive-am depend on all-am. - -Sun Aug 9 15:56:11 1998 Tim Janik <timj@gtk.org> - - * configure.in: added GModule checks. generate files in gmodule/. - * glib-config.in: support library specifications `glib' and `gmodule'. - * Makefile.am: feature the gmodule/ subdir. - -Wed Aug 5 10:04:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.2 - -Wed Aug 05 01:15:36 1998 George Lebl <jirka@5z.com> - - * testglib.c: fix 64-bitness in g_prints, sizeof doesn't - seem to return int so I cast it for printing, probably - just cosmetic - -Tue Aug 4 19:54:06 PDT 1998 Shawn T. Amundson <amundson@gkt.org> - - * Released GLib 1.1.1 - -Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.1, binary age 1, interface age 0. - * NEWS: updates. - * README: updates. - * INSTALL: updates and fixes. - * COPYING: include the GNU LGPL, rather than shipping an empty file. - * AUTHORS: listed original authors here, and added people who made - significant improvements to glib. - - * glib.h: - * gutils.c: implement g_get_current_dir() which returns a newly - allocated string, instead of a g_getcwd() variant that operates - on a static buffer. - export glib_interface_age and glib_binary_age. - as a convenience, macro definitions have been added for - g_node_insert_data, g_node_insert_data_before, g_node_append_data and - g_node_prepend_data. - - * testglib.c: minor cleanups, print current dir. - -Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gnode.c: change order of gpointer data; field in struct _GNode to - be partly binary compatible with GList and GSList. - -1998-08-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * garray.c (g_ptr_array_remove_index): bugfix: index check for - array has been wrong. - -Fri Jul 31 22:17:05 1998 Tim Janik <timj@gtk.org> - - * testglib.c (g_node_test): added a GNode test. - -Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: compile gnode.c. - - * glib.h: - * gnode.c: added implementation of n-way trees. - - * gtree.c (g_tree_traverse): added a warning to the switch() statement - which says that G_LEVEL_ORDER is not implemented. - -Mon Jul 27 00:17:30 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.0 - -Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: #if 0'ed out the GTime definition, until it is definitively - needed. #if 0'ed out the g_getcwd() version, because it is the wrong - implementation. - -Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu> - - * glib.h: gtime changed to g_time. gtime is used in - /usr/include/time.h in NetBSD, causing multiple headaches. - If this isn't the right way of fixing it.... ;) - -Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: new functions to make a scanner scope sensitive wrt - symbol lookups. - g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol, - g_scanner_scope_remove_symbol, g_scanner_scope_add_symbol and - g_scanner_set_scope. - g_scanner_add_symbol, g_scanner_remove_symbol and - g_scanner_foreach_symbol are now aliases for scope 0. - -Mon Jul 20 23:05:34 1998 George Lebl <jirka@5z.com> - - * glib.h: typo fixed for alphas for gint64 - -Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.c: new fuction g_dirname() which returns a newlly - allocated string. - -Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.h: added a bunch of utility/wrapper functions: - g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(), - g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname(). - - * gutils.c: removed all g_str* functions. - * gstrfuncs.c: moved the bunch g_str* functions from gutils.c in this - place. this file shall never include <unistd.h> to avoid clashes for - some of the g_str* functions on some OSes. - -Fri Jul 10 00:29:03 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Renamed g_hash_table_lookup_full to - g_hash_table_lookup_extended to conform with naming conventions. - -Tue Jul 7 03:18:58 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Generic cleanup, added a function: - (g_hash_table_lookup_full): Return whether the lookup succeeded, - and also retrieve the key and value. This allows one to - distinguish between failed lookup and finding a NULL, and also - allows one to free a key in the hash. - -Mon Jul 6 10:12:05 PDT 1998 Manish Singh <yosh@gimp.org> - - * ltconfig: fix for properly detecting shared lib support on - SunPro cc (taken from libtool 1.2.a) - -Sat Jul 4 13:38:52 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: added g_array_length - -Tue Jun 30 11:58:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): take symbol_2_token into - account. react on valid/invalid string pairs. - -Sat Jun 27 21:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.m4: ftp.glib.org -> ftp.gtk.org, since glib.org isn't - ours. ;) - -Fri Jun 19 03:11:02 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: removed g_dataset_try_key, g_dataset_force_id and - g_dataset_retrive_key in favour of GQuarks. - a GQuark is an numeric id wich is associated with a certain string. - (g_quark_try_string): try to get the quark associated with this string, - if the lookup failed return 0. - (g_quark_from_string): get the associated quark for a string, if there - isn't currently a GQuark associated with this string, then allocate a - new quark and return that. - (g_quark_from_static_string): like the above function, but the string - isn't strdup()ed to save memory. - (g_quark_to_string): get the string that is associated with a certain - GQuark. - - * gdataset.c (g_dataset_id_set_data_full): invoke the destroy function - _after_ the new data has been setup. - -Thu Jun 18 02:35:21 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Changed messages for g_return_[val]_if_fail to - be somewhat more clear: assertion "blah" failed. - -1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * testglib.c (main): Use GINT_TO_POINTER casts to remove compiler - warnings. - - * grel.c: #include <string.h> - -Fri Jun 12 15:39:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (GScanner): cleanups of the structure fields (binary - incompatible). - -Fri Jun 12 00:39:28 1998 Josh MacDonald <jmacd@icw.EECS.Berkeley.EDU> - - * glib.h: add new hash and equal functions g_int_*. complement - g_direct_hash with g_direct_equal. - - * grel.c: new file, GRelations implement tuples of N-N mappings. - A comment in glib.h briefly describes the interface. - - * ghash.c: new function, g_hash_table_size - - * glib.h: new typedefs, gsize, gssize, gtime. - - * garray.c: new functions implementing a simplified GArray. This - GPtrArray is an array of gpointers and has functions to add and - remove elements, much like java.lang.Vector. - - * garray.c: new functions for the single-byte special case of - GArray. The functions g_byte_array* operate on arrays of bytes. - Internally, a GArray is used. - - * testglib.c: tests for g_ptr_array, g_byte_array, and g_relation... - -1998-06-11 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gdataset.c: #include <string.h> - -Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: new function g_dataset_retrive_key. adjusted prealloc - sizes, to take up less space on initial allocation. - -1998-06-10 Raja R Harinath <harinath@cs.umn.edu> - - * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2, - the version from which glib's libtool forked. Needed for people - who use post-1.2 alphas of libtool. - * configure.in (enable_mem_check, enable_mem_profile): Replace - `echo -n' with AC_MSG_CHECKING. - (fd_set): Explain test for `fd_set' better. - -Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org> - - * Makefile.am glib.m4 configure.in: - - Moved out from GTK+; added AM_PATH_GLIB macro. - -Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: renamed g_const_pointer => gconstpointer - -Tue Jun 9 17:47:33 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Remove #error - HP/UX. - -Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org> - [ Combination of: - gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>) - gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ] - - * glib.h ghash.c gstring.c gdataset.c gutils.c: - - Added new typedef g_const_pointer; expunged all incorrect - uses of 'const gpointer'. - - Fixed up warnings that that created, - - Changed GHashFunc and GCompareFunc to take g_const_pointer - arguments. (Necessary, but will cause warnings in existing - code until fixed) - - Added other new const in harmless positions. - -Mon Jun 8 01:06:47 1998 Tim Janik <timj@gtk.org> - - * glib.h: added enum-helper macros for code generation. - added G_BREAKPOINT(). - -Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org> - - * gmem.c: commented out MEM_PROFILE and MEM_CHECK, causing weird - problems - -Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_chunk_new0): convenience macro, for allocating small chunks - like g_chunk_new() with additional 0 initialization. - -Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org> - - * ghash.c (g_hash_table_insert): wrote a comment describing why - a hash node's key should not also get replaced when overriding - previous entries. - -Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_string_sized_new): new function to controll the preallocated - size of a GString. - - * glib.h (g_strreversed): new function to reverse a string. - -Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org> -(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch) - - * gutils.c: Restored a missing prototype for g_vsprintf. - -Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: conditionally define NULL, FALSE and TRUE. - (g_mem_chunk_create): new convenience macro as a short hand for - g_mem_chunk_new(). - (g_chunk_free): new convenience macro to be consistent with g_chunk_new. - -Tue, 19 May 1998 09:00:02 +0200 Paolo Molaro <lupus@debian.org> - - * gcompletion.c: generic functions for com<TAB>pletion... - -Sun May 17 10:48:27 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): provide usefull default - specifications for identifier_spec and symbol_spec. - - * glib.h: new functions g_slist_nth_data and g_list_nth_data to return - the data of the nth element in the list. - -Fri May 15 22:31:49 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) - that for some reason didn't produce a compiler warning on my machine - (is va_end defined to nothing for i386?). - -Fri May 15 12:32:08 1998 rodo <doulik@karlin.mff.cuni.cz> - - * gscanner.c: replaced some snprintf with g_snprintf - -Fri May 15 00:56:59 1998 Tim Janik <timj@gtk.org> - - * glib.h: further support for gcc function attributes: G_GNUC_FORMAT, - G_GNUC_NORETURN and G_GNUC_CONST. - - * gscanner.c (g_scanner_stat_mode): changed stat() to lstat(). - (g_scanner_msg_handler): "\n" at end of line! - (g_scanner_foreach_symbol): new function to iterate over the symbol - table (GScanner does value-wrapping). - -Thu May 14 04:14:12 1998 Tim Janik <timj@gtk.org> - - * glib.h: typedef gint gboolean; - this is needed to provide portability with big-endian platforms (e.g. - try sizeof(bool) for c++ on big-endians - it's 4). - this is also needed to maintain some_union.d_gint==some_union.d_gboolean. - plus, gint to gboolean casts and vice versa need to be possible without - loss. - -Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib/glib.h: Added macros G[U]INT_TO_POINTER() and - GPOINTER_TO_[U]INT for storing small integers integers - inside pointers. - - * glib/testglib.c: Print sizeof() results - as g_print("%ld", (glong)sizeof(foo)), to deal with - size_t being long on Alpha's. - -Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org> - (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch) - - * glib.h gstring.c gmessages.c: Added some missing - const to arguments. - - * gutils.c (g_strsignal.c): Added missing return statements. - -Mon May 11 21:11:54 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c gmessages.c: Moved g_error, g_warning, g_message and - g_print from gutils.c to new file gmessages.c, to avoid having to - include <unistd.h> in gutils.c which was causing problems for the - g_strsignal implementation on FreeBSD boxes. - -Mon May 11 09:53:43 1998 Tim Janik <timj@gtk.org> - - * configure.in: preserve automake CFLAGS. - - * Makefile.am: fully rename the created library to libglib-1.1.la. - this means we need to change certain portions of the Makefile.am on - major/minor version bumps. - - * ltmain.sh: the -release option is not required anymore. - - * glib.h: provide G_GNUC_FUNCTION and G_GNUC_PRETTY_FUNCTION to - avoid conditionals. unconditionally define NULL, TRUE, FALSE, MAX, - MIN, ABS and CLAMP, these macros might be screwed from other headers. - -Mon May 11 01:44:10 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: new file, gdatasets implement the object data - mechanism from GtkObject. a generic data pointer is associated with - a certain location and a key id. - -Sat May 9 20:08:12 1998 Owen Taylor <otaylor@gtk.org> - - * glib/gmem.c: Experimentally restore GMemChunk - to its primeval state - where mem areas are - freed incrementally instead of searching the tree - every time a mem area is completely empty. Also, - always keep one mem chunk around. (Reduced calls - to malloc() a lot, but doesn't really improve - performance significiantly) - -Thu May 7 08:17:28 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_GNUC_PRINTF): - (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument - checking of gcc. - - * gstring.c: const corrections, string!=NULL checks at function entry. - (g_string_down): new function for tolower(3) conversion. - (g_string_up): new function for toupper(3) conversion. - - * gutils.c: const corrections. - (g_strdown): g_string_down() counterpart. - (g_strup): g_string_up() counterpart. - - * gscanner.c (g_scanner_unexp_token): - (g_scanner_error): - (g_scanner_warn): new functions to let a scanner put out warnings - or errors, especially to react on unexpected tokens. - - * gslist.c: - (g_slist_index): find out about about the position of a - certain data pointer. - (g_slist_position): find out about about the position of a - certain node. - - * glist.c: - (g_list_index): find out about about the position of a - certain data pointer. - -Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org> - - * ltmain.sh: added a new commandline flag -postfix similar to -release, - but will immediately change the library name. - - * Makefile.am: specify -postfix and -version-info - - * configure.in: version bump to 1.1.0. added GLIB_INTERFACE_AGE and - GLIB_BINARY_AGE. calculate LT_* variables for libtool. - -Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c: (g_strcasecmp). Check for isupper before - taking tolower, and account for macroized tolower. - - * gutils.c (g_error): Check for recursion. - -1998-04-27 Elliot Lee <sopwith@cuc.ml.org> - - * glist.c (g_list_position): New function to find the position of - a link in a list - should be the inverse of g_list_nth(), but - haven't tested it so poof. - -Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org> - - * gstring.c : Check arguments more carefully, - (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de) - -Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_direct_compare): Removed, because that's what - a NULL comparison function means. And it wasn't 64 bit safe. - -Mon Apr 6 18:43:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_get_token_ll): fixed a bug that caused floats - of the format ".xxx" to be parsed as "xxx". - -Fri Apr 3 20:36:35 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_parse_debug_string): Make debug string - parsine case-insensitive - -Fri Apr 3 17:03:18 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: corrected possible overrun when inserting into - GStrings (thanks Elrond) - -Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu> - - * testglib.c: Removed literal german from strings - to appease SGI compiler. - -Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in glib glibconfig.h.in: Add test for atexit/on_exit - - use on_exit if atexit not found in definition of ATEXIT. - -Wed Mar 25 15:23:37 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Switched glibconfig.h rule from HEADERS - to DATA, so that it is not added to DISTFILES - -Wed Mar 18 22:27:08 PST 1998 Manish Singh <yosh@gimp.org> - - * garray.c: g_rarray_truncate length done correctly - -Sun Mar 15 07:13:34 1998 Tim Janik <timj@gimp.org> - - * gutils.c: changed *_handler variables to be named glib_*_handler, - so you can easily access them from gdb. - -Sat Mar 14 17:47:43 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Don't refer to current directory as $(top_builddir) - to avoid confusing non-gmakes - -Sat Mar 14 01:37:35 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am (configincludedir): Moved glibconfig.h to - $(pkglibdir)/include - -Tue Mar 10 02:03:12 1998 Tim Janik <timj@gimp.org> - - * gscanner.c (g_scanner_destroy_symbol_table_entry): new function to - free symbol table entries upon destruction - (gtk-gronlund-980309-0.patch.gz). - -Mon Mar 9 15:02:21 1998 Tim Janik <timj@gimp.org> - - * glib.h: changed *_length functions to return guint. - changed *_nth functions to take guint as argument. - - * glist.c: adapted g_list_length and g_list_length. - - * gslist.c: adapted g_slist_length and g_slist_length. - -Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gutils.c : changed g_strcasecmp - to take gchar* not guchar* - - * testglib.c: Remove trailing ; after functions - -Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gstring.c: Added g_string_insert[_c]() - and g_string_erase(). - - From: Stefan Wille <1wille@vsys1.informatik.uni-hamburg.de> - -Mon Feb 16 23:05:06 1998 Owen Taylor <owt1@cornell.edu> - - * glist.c (g_list_insert_sorted): Changed function - so elements are always inserted, even if they compare - equal with another. - -Thu Feb 12 22:48:11 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c glib.h: removed deprecated g_string_equal - and g_string_hash. - -Tue Feb 10 13:04:36 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in: Add check to see if the C library's - iswalnum can actually be used. (Not true for - Linux libc-5.4.38) - -Sat Feb 7 11:48:09 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c gutils.c: added some additional consts in - appropriate places to remove a warning - -Sat Feb 7 11:15:54 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c: include <ctype.h> for tolower() - -Fri Jan 30 23:57:17 PST 1998 Manish Singh <yosh@gimp.org> - - * added and autoconfigured in a new utility function - g_strcasecmp - -Wed Jan 28 23:53:27 PST 1998 Manish Singh <yosh@gimp.org> - - * glist.c - * gslist.c - * testglib.c: the sort functions compared backwards. Fixed - * glib.h: list iterator macros now check for NULL pointers - -Tue Jan 27 09:46:57 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: g_string_prepend and g_string_prepend_c had - interchanged src and dest parameters for g_memmove. Fixed. - -Tue Jan 27 01:38:52 PST 1998 Manish Singh <yosh@gimp.org> - - * gslist.c: fixed a really, really lame error. g_slist_insert - didn't hook the data in! Reworked the routine to reflect the - functionality of g_list - -Wed Jan 21 01:13:25 1998 Tim Janik <timj@psynet.net> - - * Applied patch from (Raja R Harinath <harinath@cs.umn.edu>) - to add function g_snprintf. - * configure.in (AC_CHECK_FUNCS): Check for vsnprintf. - * glib.h: Add prototype for g_snprintf. - * glibconfig.h.in: Add HAVE_VSNPRINTF. - * gutils.c (g_snprintf): new function. - -Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.{c,h} gscanner.c: - renamed g_string_equal => g_str_equal - renamed g_string_hash => g_str_hash - And const corrected. Old functions left in for now. - -Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net> - - * gutils.c (g_strerror): changed message for EAGAIN from - "no more processes" to "try again" since EAGAIN is used with - functions else than fork(). - - * gscanner.c (g_scanner_get_token_ll): use strtol() instead of - strtoul() to avoid conflicts with solaris. - - * merged the glib portions from Jan 2 to Jan 7 out of gtk+/ChangeLog - into this file. - -Wed Jan 7 02:14:30 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: - * glist.c: - * gslist.c: - * testglib.c: Added g_[s]list_insert_sorted function - and appropriate tests in testglib - -Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h: Changed guint32 -> guint for bitfields. - (Bitfields must be int or unsigned int?) - -Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: reverted glibconfig.h and glib.h files back to the - way they were before my ugly hack. - - * gscanner.c: removed inlines from clist and gscanner - -Tue Dec 23 02:49:51 1997 Tim Janik <timj@psynet.net> - - * gscanner.c: new file for GScanner: Flexible lexical scanner for - general purpose. - * glib_pre2.h: added GScanner includes. added g_strconcat and g_strtod. - gutils.c (g_strconcat): new function for string concatenation of NULL - terminated parameter list. - (g_strtod): new function to perform best string to double conversion - with or without consideration of the current locale. - -Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net> - - * glist.c: minor optimizations: - (g_list_append): `if' optimized for common code path, commented out - unneccessary `assert', saved one variable assignment. - (g_list_prepend): saved two (conditioned) variable assignment. - (g_list_insert): saved one (conditioned) variable assignment, - saved one variable assignment. - (g_list_remove): `if' optimized for common code path, saved two - variable assignments by using `g_list_free_1' (which is even - faster) instead of `g_list_free'. - (g_list_reverse): saved allocation of one variable, saved one - variable assignment. - -Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: this file now gets concatenated by makeglib_h from - glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got - created by configure (done by Jay Painter). - - * glib_pre2.h: the g_assert*() and g_return_*_fail() macros - are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts - when used within if (...) g_macro(); else ... conditionals. - -Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to - not call 'g_string' but to simply stringify the - expression. Calling 'g_string' causes the expression to be - expanded which is undesired. - -Sun Dec 1 01:30:48 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * Started ChangeLog + * configure.in: set glib version to 1.3.0. diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 7add274d9..f9b8b0664 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,2841 +1,23 @@ -Thu Feb 04 20:42:24 1999 Tor Lillqvist <tml@iki.fi> +Sat Mar 6 11:03:08 1999 ape@lrdpf.spacetec.no (Asbjorn Pettersen) - * glibconfig.h.win32 config.h.win32: Update GLIB_MICRO_VERSION. + * gutils.c (g_get_any_init): add OS/2 changes. + change '\\' in HOME to '/'. -1999-02-04 Christopher Blizzard <blizzard@redhat.com> +1999-03-03 Josh MacDonald <jmacd@spin.dsl.pacbell.net> - * glib.spec (Packager): Change my email address + * glib.def: g_spaced_primes_closest was omitted here, so I + couldn't build Xdelta on Windows. -Thu Feb 4 01:45:01 PST 1999 Shawn T. Amundson <amundson@gtk.org> +1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - * ChangeLog - NEWS - README - configure.in - glib.spec - docs/glib-config.1: version=1.1.15 + * gutils.c (g_get_any_init): Fixed yet another bloody + implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche + <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure + test better than that, but have no idea, how to do that easily. - * Released GLib 1.1.15 +Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org> -Tue Feb 02 00:08:54 1999 Tor Lillqvist <tml@iki.fi> + * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started + new one. - * gmessages.c (g_log_default_handler): (Win32:) Don't call - ensure_stdout_valid (which would open an unneeded console window) - if we're calling a logging function. Define ensure_stdout_valid - as an empty macro on Unix. - - * gutils.c (g_get_any_init): (Win32:) Trust HOME first if defined, - then try HOMEDRIVE and HOMEPATH. - -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). - -Fri Jan 22 16:51:44 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Added galloca.c. - - * galloca.c: - Compile even if G_NATIVE_ALLOCA is not defined. - Don't use g_free and g_malloc [yet?]. Code appears to depend on - internal malloc() alignment sizes. - - * tests/alloca-test.c: - Always test internal alloca replacement too, even if we have a - working alloca. - Make tests a little bit better by adding recursion - (more stack activity). - -Fri Jan 22 13:41:41 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * configure.in: - Add checks for alloca, defining G_NATIVE_ALLOCA if present. - - * galloca.c: - Import replacement alloca implementation from gettext 0.10.35. - Begin to convert to using GLib types and functions. - - * glib.h: - New macros g_alloca, g_alloca_gc, g_alloca_new, to perform - stack-based memory allocations. - - * tests/Makefile.am, tests/queue-test.c, tests/alloca-test.c: - New tests for g_alloca_*, GQueue ADT. - - * tests/stack-test.c: - Fix pointer casts, include config.h, and - call g_stack_free at end of run. - -Fri Jan 22 11:58:13 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am: - Add gqueue.c. - - * glib.h: - Add GQueue struct and prototypes. - Remove g_stack_free macro. - - * gqueue.c - New file. Implementation of a queue ADT. - - * gstack.c: - Rename _g_stack_free back to g_stack_free. - - * tests/Makefile.am, tests/stack-test.c: - New test for GStack objects. - -Fri Jan 22 02:06:10 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * gstack.c: - New stack ADT implementation. - - * glib.h: - Add g_stack function prototypes and macros. - -Thu Jan 21 23:55:54 EST 1999 Jeff Garzik <jgarzik@pobox.com> - - * TODO: - New file. Short notes on what has been said in e-mail, plus a - couple other new items. - - * glib.h, glist.c: - New function g_list_delete(). Removes a node from the list, - then frees it. - -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 - expiration times > 1sec. - -1998-12-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in (have_threads): Changed the last pthread_cond_init - to pthread_attr_init. - -Fri Dec 18 00:03:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmain.c: - (g_main_is_running): new function to check whether a main loop has been - quitted. - (g_main_new): added a gboolean argument to determine whether the loop - should be considered initially running or not. however, g_main_run () - will still reset the main loops running state to TRUE upon initial - entrance. - - * gmain.c: - (g_main_iterate): documented this function's purpose in 5 steps. - for step 2), flag sources as G_SOURCE_READY even if !dispatch and - check G_SOURCE_READY prior to (*prepare), so we don't call (*prepare) - on them multiple times. - -Thu Dec 17 23:43:47 1998 Tim Janik <timj@gtk.org> - - * gmain.c (g_main_add_poll): reordered arguments, so GPollFD* comes - first, <sigh> (sorry Snorfle, i should have let you know in the first - place). - (g_main_dispatch): stack G_HOOK_FLAG_IN_CALL flags. call source's - destructor when destroying a source. - -1998-12-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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. - -Wed Dec 16 23:04:26 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.9 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: version=1.1.9 - -Wed Dec 16 22:32:13 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * glib.h: - giounix.c: s/g_main_poll_add/g_main_remove_add/g - s/g_main_poll_remove/g_main_remove_poll/g - s/g_main_poll_add_unlocking/g_main_add_unlocking_poll/g - (from Tim Janik) - -Wed Dec 16 20:04:10 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: check for pthread_attr_init in all cases, du4 - needs this since most of the other functions are just #defines - -Thu Dec 17 04:10:49 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_LOCK_DECLARE_*): if !G_THREADS_ENABLED, eat the - trailing semicolon with a bogus function declaration, instead - of with a bogus variable declarations, so we avoid unused - variable warnings. - -Wed Dec 16 07:49:16 PST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.8 (CVS tag is GLIB_1_1_8a) - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * giounix.c (g_io_channel_unix_get_fd): Fixed small bug. - -1998-12-16 Joel Becker <jlbec@ocala.cs.miami.edu> - - * glib.h, gscanner.c: changed func_data to user_data in - g_scanner_scope_symbol_foreach and associated friends, because - AIX headers #define func_data. - -1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Fixed stupid bug, that made - g_static_mutex_lock(*mutex) not work as expected. - - * docs/glib-config.1: Updated to reflect the existence of gthread. - - * gmain.c (g_main_poll_add_unlocking): Changed - g_main_poll_add_unlocked to g_main_poll_add_unlocking to match - semantic, (indeed, main_loop must be locked, when calling this - function). Removed the unlocking from the end of that function, as - that is not right. Made a 'HOLDS' comment above the function. - -Wed Dec 16 03:16:58 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.8, binary age 0, interface age 0. - - * glib.h: changed g_lock() to G_LOCK(), g_unlock() to G_UNLOCK() and - g_trylock() to G_TRYLOCK(), since these are macros that expand to - nothing with --disable-threads. - changed G_LOCK_DEFINE() to G_LOCK_DECLARE() and introduced - G_LOCK_DECLARE_STATIC() to achive the results of static G_LOCK_DECLARE(). - changed semantics of g_thread_supported to g_thread_supported() so it - can be used as a function like g_module_supported(). the actuall - definition is still a macro that expands into a variable for - performance reasons though. - various indentation and coding style cleanups. - - * configure.in: added --enable-threads that defaults to yes. - - * gmutex.c: changed tests g_thread_supported to g_thread_supported (), - changed variable settings of g_thread_supported - to g_threads_got_initialized. - - garray.c: - gcache.c: - gdataset.c: - gdate.c: - ghash.c: - glist.c: - gmain.c: - gnode.c: - gslist.c: - gstring.c: - gtree.c: - gutils.c: - changed s/g_lock/G_LOCK/, s/g_unlock/G_UNLOCK/, - s/static G_LOCK_DEFINE/G_LOCK_DECLARE_STATIC/. - -Tue Dec 15 23:16:05 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README - configure.in: - glib.spec: - docs/glib-config.1: Incremented version - -Wed Dec 16 22:29:48 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * configure.in: fixed the AIX thread checking. - Just an error on the wildcard. BTW, -D_THREAD_SAFE - is correct for AIX. - -Wed Dec 16 02:02:48 1998 Tim Janik <timj@gtk.org> - - * glib-config.in (lib_glib): fixed library and flag ordering for - --libs - -Tue Dec 15 17:17:46 1998 Owen Taylor <otaylor@redhat.com> - - * glib.h giounix.c giochannel.c: Use an "inheritance" - scheme for IO channel memory allocation.h - -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 - set up the parser. So use a different date that Solaris seems - to like. - -1998-12-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: Dont complain, if --without-threads or - --with-threads=none is supplied; Test for pthread_attr_init - instead of pthread_cond_init, if threads seems to be supported by - standard glib. (CFLAGS): Use G_THREAD_CFLAGS for compiling of glib - as well. - - * glib.h, gmutex.c: Changed private to private_key to avoid - problems when compiling with under C++. - -1998-12-15 Jeff Garzik <jgarzik@Pobox.com> - - * configure.in: - bugfixes, correctly support --without-threads and friends - - * gthread/testgthread.c: corrected 64-bitness problem - -Tue Dec 15 10:40:09 1998 Owen Taylor <otaylor@redhat.com> - - * gnode.c glist.c gslist.c: Make sure all - calls to g_node_validate_allocator are within - current_allocator lock, so we have consistency - on that point. (Should not really matter, - but this way we match the comments) - - * glist.c (g_list_free_1): Removed some lines - that should never have been committed. (For - debugging) - -1998-12-11 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/gthread-nspr.c, configure.in: Added new default thread - implementation on top of the mozilla nspr library. - - * gmem.c, gmessaged.c, gthread/gthread.c, gthread/gthread-*.c: - Changed GStaticMutex and GStaticPrivate in gmem.c and gmessages.c - into GMutex and GPrivate resp. to make error reporting and use of - gmem possible in most (not all, though) gthread functions. Also - initialized the modules via new init functions. - - * configure.in: Fixed syntax bug in definition of type - GStaticMutex. - - * gthread/testgthread.c: Updated to work with nspr, but see note - there for remaining problems. - -1998-12-10 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gmutex.c, glib.h: Now abort, if a mutex/cond/private is - allocated before the thread system is set up. - - * gthread/gthread.c (g_thread_init): Removed g_thread_try_init(), - as it is not necessary. Changed the error message. Corrected logic - for g_thread_use_default_impl. - - * gmutex.c (g_mutex_init): Keep the thread private data array - after calling g_thread_init(). - -1998-12-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * gthread/testgthread.c (new_thread): Now also working for posix - threads; (wait_thread): Now a better implementation, that does not - use 100% CPU. - - * Made the thread related code follow GNU coding standard. - - * Made a comment (HOLDS:) above each function, that expects the - given locks to be held. - - * Changed try_lock to trylock throughout. - - * glib.c: Eventually removed the #if 0'ed code for old GStaticMutex. - - * glib.c: Corrected g_trylock macro for G_DEBUG_LOCKS. - - * 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. - - * gthread/gthread-solaris.c: do not use g_log for errors, as g_log - uses these module and endless recursions might happen, just use a - plain fprintf(stderr,...). - - * 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 - of Sebastian Wilhelmi <wilhelmi@ira.uka.de>) - - - configure.in now looks for a system thread implementation. - Currently support is included for POSIX threads - and Solaris threads. The default support is built - into a separate library -lgthread. - - - The thread implementation can be modified by passing - a vector of functions g_thread_init(). - - - The default or supplied functions are used to - implement a small set of thread functions for - mutexes, condition variables, and thread-private - data. - - - GLib now uses these functions to provide thread - safety. (In the sense that all global static - data is locked... individual structures must still - be locked by the caller.) - -Sat Dec 12 19:08:59 1998 Tim Janik <timj@gtk.org> - - * configure.in: always define G_HAVE_INLINE if __cplusplus is - defined, reported by Wan-Teh Chang <wtc@netscape.com>. - -Thu Dec 10 21:49:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.7 - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: - docs/glib-config.1: Increased version to 1.1.7 - -Wed Dec 9 22:44:44 EST 1998 Joel Becker <jlbec@ocala.cs.miami.edu> - - * Removed #define of G_COMPILED_WITH_DEBUGGING from glibconfig.h - It shouldn't be there, and it was causing a double #define. - (config.h defines it also) - -Tue Dec 8 12:18:38 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.6 - - * NEWS: updated - -Mon Dec 7 23:10:41 PST 1998 Manish Singh <yosh@gimp.org> - - * gmain.c: fixes to #undef HAVE_POLL case - -1998-12-02 Havoc Pennington <hp@pobox.com> - - * 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. - (g_date_set_year): Same. - -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 - 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 - flags, rather than re-checking the validity of the actual - values. This should be the correct behavior, the old way was - leftover cruft. - - * glib.h, gdate.c: Changed MDY to DMY throughout. - -Sat Nov 28 12:53:47 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am configure.in acconfig.h giochannel.c - glib.h glist.c gmain.c gutils.c: - - - Revised GIOChannel to provide a generic virtual-function - based interface. - - Added unix fd-based GIOChannel's - - Added generic main-loop abstraction - - Added timeouts and idle functions using main-loop abstraction. - -1998-12-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * 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 - include time.h. - -Tue Dec 1 23:01:44 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - 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/ - include time.h. - - * glib.h: removed #include <time.h>, changed time_t paramter of - 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> - - * glib.h: - * ghook.c: added g_hook_list_marshal_check() to eventually destroy - hooks after they got marshalled. - -Sun Nov 29 17:31:43 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * configure.in, Makefile.am, gmodule/Makefile.am: - Put -DFOO stuff into Makefile.am INCLUDES. - -Sun Nov 29 14:17:09 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: put debug -DFOO stuff into CPPFLAGS, not CFLAGS, - so CFLAGS can be overridden at make time properly - -Sat Nov 28 01:23:25 1998 Tim Janik <timj@gtk.org> - - * ghash.c: implemented incremental freezing facility. - -Thu Nov 26 01:36:20 1998 Tim Janik <timj@gtk.org> - - * 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. - -Tue Nov 24 18:57:59 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981120-0, change log appended below. - - * glibconfig.h.win32: passthrough 64-bit constants unchanged, VC++ - infers them - -Fri Nov 20 22:26:43 1998 Tor Lillqvist <tml@iki.fi> - - * glib.h: Moved MSC pragmas from glib.h to glibconfig.h.win32. - peer_offset field in WIN32 part of GIOChannel removed, need_wakeups - added. Added "extern" to __declspec(dllimport). - - * gutils.c: Initialise need_wakeups. - - * glibconfig.h.win32: Pragmas moved here. Define G_GINT64_CONSTANT. - - * gmodule/gmodule.def: Added g_module_build_path. - - * gscanner.c: (g_scanner_cur_value) Move initailisation of v - to before its use. - - * glib.def: Added g_(s)list_sort. - - * makefile.msc: A few more comments. - -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 - 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 - or source incompatibilities. It does add a member to the - GHashTable structure. - -Tue Nov 24 09:40:00 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed the GListAllocator type and its g_*_allocator_*() - function variants (which weren't working anyways) in favour of a - generic GAllocator type. new functions: - g_allocator_new, g_allocator_free, g_slist_push_allocator, - g_slist_pop_allocator, g_list_push_allocator, g_list_pop_allocator, - g_node_push_allocator and g_node_pop_allocator. - - * gstring.c: removed bogus slist allocator code. - * gtree.c: maintain own list of free tree nodes and don't waste - GSLists for that, removed bogus slist allocator code. - * glist.c: use GAllocators for node allocation. - * gslist.c: use GAllocators for node allocation. - * gnode.c: use GAllocators for node allocation. - - * gdataset.c: cleanups wrt automatic initialization. - -Mon Nov 23 10:03:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h garray.[ch]: added g_array_insert_vals() to - insert elements at an arbitrary index, and - g_array_insert_val() macro. - -Sun Nov 22 17:07:03 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gslist.c: new function g_slist_copy() to duplicate a list with all its - data pointers. - * glist.c: new function g_list_copy. - -Sat Nov 21 14:57:39 CST 1998 Shawn T. Amundson <amundson@gtk.org> - - * INSTALL: - NEWS: - README: - configure.in: - glib.spec: Updated to version 1.1.5 - - * Released GLib 1.1.5 - -Wed Nov 18 1998 Elliot Lee <sopwith@redhat.com> - - * gdataset.c: There was a code path into g_data_set_internal - through a function (g_datalist_id_set_full). Neither function - checked for g_dataset_init having been run, but - g_data_set_internal used the memchunk. I added - a check into g_data_set_internal so it will do the - initialization if needed. (There's probably a better way.) - -Mon Nov 16 07:48:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_bit_nth_msf): fixed off-by-one error, so we don't waste - a loop iteration if (-1) was passed, reported by Andreas Bombe - <andreas.bombe@munich.netsurf.de>. - -Fri Nov 13 15:17:34 1998 Owen Taylor <otaylor@redhat.com> - - * glist.c gslist.c glib.h: Added g_list_sort() and - g_slist_sort() to merge sort GLists and GSLists. - Submitted by Sven Over <sven.over@ob.kamp.net> - over a year ago! - - * testglib.c: Test the new sort functions. - -Wed Nov 11 23:23:22 EST 1998 Jeff Garzik <jgarzik@pobox.com> - - * Makefile.am : INCLUDES is the right way to add to CFLAGS, not - DEFS. Also there are bugs with '+=' in makefiles. - Got rid of DEFS line by moving G_LOG_DOMAIN setting into INCLUDES. - Removed redundant -I from INCLUDES. - -Wed Nov 11 18:11:24 EST 1998 Gregory McLean <gregm@comstar.net> - - * docs/*.sgml : Batch of new documentation that should be easier - to maintain and extend. Plus generate whatever sort of doc file - you would like. I didn't change the Makefile stuff as I'm not sure - what default doc type people want. Oh and this is all DocBook format. - Enjoy! - -Tue Nov 10 17:12:45 PST 1998 Manish Singh <yosh@gimp.org> - - * configure.in: use __extension__ for long long on gcc >= 2.8 and - egcs, and provide a G_GINT64_CONSTANT wrapper so -ansi -pedantic - compiles clean. - - * glib.h: make the endian x86 asm __const__ so the compiler can do - better optimizations. Also remove the cc clobber, these shouldn't - be changing condition codes. Ditch some redundant casts. Add an - optimization for 64-bit endian conversions in x86. Use constant - wrapper for the generic method. - - * testglib.c: use constant wrappers for 64-bit constants - -1998-11-04 Phil Schwan <pschwan@cmu.edu> - - * configure.in: Added 'strncasecmp' to the list of functions to be - searched for. - * glib.h: Added a prototype for 'g_strncasecmp' - * gstrfuncs.c: (g_strncasecmp) new function modeled closely after - 'g_strcasecmp' - -Wed Nov 4 15:06:44 PST 1998 Manish Singh <yosh@gimp.org> - - * config.h.win32 (new file) - * glibconfig.h.win32 - * glib.def - * makefile.msc: applied glib-tml-981104, win32 sync - -1998-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * glib.h: - * garray.c: - (g_array_remove_index): new function for removing an entry from an - array while preserving the order - (g_array_remove_index_fast): new function for removing an entry - from an array. the order might be distorted - (g_ptr_array_remove_index_fast, g_ptr_array_remove_fast): new - functions; working similiar to the above. (they have the semantic - of the old g_ptr_array_remove[_index] functions) - (g_ptr_array_remove_index, g_ptr_array_remove): new semantic. now - the order of the elements in the array is not changed - (g_byte_array_remove_index, g_byte_array_remove_index_fast): new - functions; byte_array wrapper for g_array_remove_index[_fast] - -Sun Nov 1 23:00:18 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * configure.in: endian macros defined using the glibconfig.h - mechanism now - - * ghook.c: casts for GHookFunc and GHookCheckFunc to avoid warnings - -Sat Oct 31 20:14:22 PST 1998 Manish Singh <yosh@gimp.org> - - * applied glib-tml-981101-1 patch from Tor Lillqvist (ChangeLog - entry appended below) - - * testglib.c - * gstrfuncs.c - * glib.h: use G_HAVE_GINT64, since HAVE_GINT64 is gone - - * 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. - - * gutils.c: - (g_getenv): Better implementation on Win32. No loop necessary. - (g_get_any_init): Use P_tmpdir if defined as tmp directory. Don't - set home dir always to NULL on Win32. Don't use tmp directory as - last resort home directory, but return NULL if no home - directory is known (application must check). - - * makefile.msc: Better touch command, just COPYing a single file - sets the timestamp from that file, which isn't what touching should - do. - -1998-10-31 Raja R Harinath <harinath@cs.umn.edu> - - Land glib-rrh-19981025-0.patch. - * 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 - concluding "broken wctype". - (glibconfig.h): Use AC_OUTPUT_COMMANDS to put generation code into - config.status. - * glib.h: Remove a lot of tests and defines. All these have been - moved to `configure.in (glibconfig.h)'. - * gerror.c: Include <config.h>. - * 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. - added macros G_STRUCT_OFFSET(), G_STRUCT_MEMBER_P() and - G_STRUCT_MEMBER() for handling structure fields through their offsets. - (struct _GHookList): added a hook_free function member, that can be used - to free additional fields in derived hook structures. - g_hook_free(): if hook_list->hook_free != NULL, call this function prior - to freeing the hook. (this functionality should have been there in the - first place, it just got forgotten as an implementation detail). - -Wed Oct 28 00:49:32 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: G_BREAKPOINT for alpha from Robert Wilhelm - <robert@physiol.med.tu-muenchen.de> - -Tue Oct 27 07:25:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: - (g_scanner_sync_file_offset): new function for file input. - rewind the filedescriptor to the current buffer position and blow - the file read ahead buffer. usefull for third party uses of our - filedescriptor, which hooks onto the current scanning position. - (this became neccessary with the implementation of buffered - reads). - (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. - -Tue Oct 27 00:27:31 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: get rid of duplicate #g_htonl and friends in the - NATIVE_WIN32 part - -Mon Oct 26 22:42:01 PST 1998 Manish Singh <yosh@gimp.org> - - * glibconfig.h.win32 - * gutils.c - * makefile.msc: win32 patch from Tor Lillqvist (glib-tml-981027-0), - fixes some minor win32 buglets - -Mon Oct 26 22:12:03 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: reimplemented the endian stuff, using inline asm - for x86. #define g_htonl and friends. - - * testglib.c: new tests for the endian stuff - - * configure.in: care for AIX in gmodule linker flags test (from - Joel Becker <jlbec@raleigh.ibm.com>). Check $host_os for linux - instead of existance of /usr/include/linux - - * gutils.c: buh-bye evil warning. Thou hast been #ifdef'd out - of thine existance! - -Tue Oct 27 03:00:50 1998 Tim Janik <timj@gtk.org> - - * glib.h: removed dummy structure definitions for struct _GCache, - _GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk. - - * gutils.c: implement glib's inline functions _after_ all include - statements have been processed. - removed Tor's MAXPATHLEN check since there already was one supplied - further down in this file. - (LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32, - since lcc maybe used on other platforms as well. why in hell is this - stuff required? - (g_get_any_init): for windows, if the user name is supplied, use it as - realname also. - in general, if there is no homedir specified, use the tmpdir that - we already figured. - - * gtimer.c (g_timer_elapsed): changed a g_assert() statement to - g_return_if_fail(). - - * applied glib-tml-981020-0.patch for WIN32 portability, added some - comments and g_return_if_fail() statements, minor indentation fixes. - ChangeLog entry from Tor Lillqvist is appended. - - * glib.h (struct dirent): use lower case structure members. - - * glib.h: - * makefile.lcc: - * makefile.msc: - s/COMPILING_GLIB/GLIB_COMPILATION/ - -1998-10-20: Tor Lillqvist <tml@iki.fi> - - * README.win32 glib.def gmodule.def - * glibconfig.h.win32 gmodule/gmoduleconf.h.win32: - New files for the Windows port. The .def files list exported - symbols for the Microsoft linker and compatibles. - - * configure.in: - Added checks for some platform-dependent headers: pwd.h sys/param.h - sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat. - - * gerror.c: - Conditionalized inclusion of system-dependent headers. Changes - for Windows: no gdb to do a stack trace. Just call abort(). - - * glib.h: - Changes for Windows: - - Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for - platform-dependent file name syntax elements. Added macros - G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for - platform-dependent search path syntax conventions. - - Added pragmas for Microsoft C to make it more pedantic. - - Marked GLib's global variables for export from DLL. - - Added the function g_strescape that escapes backslashes. - - Added functions g_path_is_absolute and g_path_skip_root to - handle platform-dependent file name syntax. - - Added the function g_getenv that expands environment variables - that contain references to other environment variables, as is - typical on Windows NT. - - Added the GIOChannel structure which is used to encapsulate the - IPC mechanism used by the GIMP's plug-ins, and possibly other - things later. On Unix a GIOChannel encapsulates just a file - descriptor. On Windows it contains a file handle from _pipe() and a - few other things related to the implementation of gdk_input_add - and GIMP plug-in communication. Subject to change. - - Removed duplicate declarations of the version variables. - - For the Microsoft compiler, declare own implementation of - ftruncate and the <dirent.h> functions. - - * gmem.c: - Define a symbolic name for the profiling table size. - - * gmessages.c: - Conditionalized inclusion of unistd.h. On Windows, output using - stdio to stdout. - - * gscanner.c: - 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. - - * gtimer.c: - Conditionalized inclusion of unistd.h and sys/time.h. Added - implementations for Windows. - - * gutils.c: - Conditionalized inclusion of platform-dependent headers. Use - the platform-independent file name syntax macros. - Conditionalize code on platform-dependent features. Added the - functions g_path_is_absolute g_path_skip_root and g_getenv. - Added the GIOChannel-related functions. Added - compiler-dependent Unix compatibility functions for Windows. - - * 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 - from gtk-config.1 in gtk - - * configure.in: - * Makefile.am: - * sanity_check: added in docs directory, change rule 'release' - to 'snapshot' and created a new 'release' rule for doing the - distribution. Added in a 'sanity' rule. - - * NEWS: - * 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_get_char): no more characters are available if read() returns - anything less than 1, not only on 0 return. - - * 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(). - (g_strjoinv): renamed from g_str_array_joinv(), string array is - now passed as last parameter. removed `const' qualifier from string - array pointer (again). - (g_strjoin): new function from sopwith to concatenate strings with - an additional seperator. - (g_strfreev): renamed from g_str_array_free. - -Sat Oct 24 22:23:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * gnode.c: small fix to g_node_children_foreach to make it work right. - From Paco Moya <paco@cadnotebk17.eecs.berkeley.edu> - -Wed Oct 21 19:22:58 1998 Tim Janik <timj@gtk.org> - - * configure.in (G_MODULE_HAVE_DLERROR): reverted part of the changes - from Sebastian Wilhelmi (1998-10-20). don't specify a specific loading - behaviour (i.e. RTLD_NOW) when we are not sure whether it is supplied. - changed the return value from (!f2 && f1) to (!f2 || f1) so we default - to not needing an underscore. reverted the extra plugin.c building, - because .lo files are not ELF libraries, this can't work. This needs - further investigation on Solaris... - -Wed Oct 21 17:03:05 1998 Tim Janik <timj@gtk.org> - - * 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 - the in_place arguments were skipped, the caller is supposed to pass a - g_strdup()ed string if he wants to retrive a new copy. indentation and - coding style fixups. added some g_return_if_fail() statements. - string array functions are prefixed with g_str_array_. - (g_strdelimit): return the modified string like all other g_str* - functions, that operate in place. - (g_strchug): renamed from g_str_chug(), removed in_place argument. - (g_strchomp): renamed from g_str_chomp(), removed in_place argument. - (g_strstrip): renamed from g_str_strip(), removed in_place argument. - (g_str_array_join): renamed from g_strconcatv(), since it actually - operates on a string array and has totaly different semantics from - g_strconcat(). check for separator != NULL, don't segfault if the first - string is NULL. removed the `const' from the string array that's passed, - so users can operate on gchar** string arrays. - (g_str_array_split): renamed from g_str_split() because we actually - produce a string array. reimplemented this function for efficiency. - removed macro aliases g_str_joinv and g_str_join. - -1998-10-20 Elliot Lee <sopwith@redhat.com> - - * glib.h, gstrfuncs.c: Move string join/split/free routines from - libgnome/gnome-string, rename, and add g_str_chug. - -1998-10-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * configure.in: made the check for needed _ in module's func-names - work on solaris. (G_MODULE_NEED_USCORE must be set outside - AC_CACHE_VAL, dlopen(0,0) refused to work on solaris). - -Tue Oct 20 03:32:58 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in - * acconfig.h: added test for endianness - - * glib.h: #define endian macros for system and some conversions - between byte order - -Thu Oct 8 06:47:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: removed functions g_dataset_id_set_destroy and - g_datalist_id_set_destroy and macros g_dataset_set_destroy and - g_datalist_set_destroy. - added new functions g_dataset_id_remove_no_notify and - g_datalist_id_remove_no_notify plus associated macros - g_dataset_remove_no_notify and g_datalist_remove_no_notify, which - will remove a certain data portion without invokation of its destroy - notifier, this should only be used in very controled circumstances. - -Wed Oct 7 05:31:24 1998 Tim Janik <timj@gtk.org> - - * glib.h: - removed the #pragma } statement after extern "C" {. use - (c-set-offset 'inextern-lang 0) to fixup emacs cc-mode indentation. - - * glib.h: - * ghook.c: API and code cleanups. changed the G_HOOK_ACTIVE and - G_HOOK_IN_CALL enum vals to G_HOOK_FLAG_ACTIVE and G_HOOK_FLAG_IN_CALL. - changed the G_HOOK_IS_ACTIVE() and G_HOOK_IS_IN_CALL() macros to - G_HOOK_ACTIVE() and G_HOOK_IN_CALL(). - fixed the g_hook_find* functions, so they iterate over non-active - hooks as well. - (g_hook_first_valid): - (g_hook_next_valid): added an extra argument gboolean may_be_in_call, - which indicates whether G_HOOK_IN_CALL() hooks are considered valid - or not. these two functions are meant as iterators for the hook list - invocation, so they need to a) provide functionality to implement - may_recurse bahaviour and b) only walk active hooks. - -Tue Oct 6 14:29:47 1998 Tim Janik <timj@gtk.org> - - * gmem.c (g_malloc0): fixed memory offsett when ENABLE_MEM_CHECK is - defined and ENABLE_MEM_PROFILE is not (patch from Martin Pool - <mbp@wistful.humbug.org.au>). - -Sat Oct 3 01:18:10 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: - (g_hook_list_invoke): - (g_hook_list_invoke): - (g_hook_list_marshal): properly handle the first valid hook to call, - it maybe IN_CALL already. - (g_hook_list_marshal): minor name change. - -Fri Oct 2 23:21:21 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * ghook.c: renamed GHook.id to GHook.hook_id so we don't get troubles - with ObjC which reserves "id" as a keyword (Raja R Harinath - <harinath@cs.umn.edu>). - -Wed Sep 30 10:53:03 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: added ghook.c. - - * glib.h: - * ghook.c: generic callback maintenance functions. - - * glib.h: define G_GNUC_UNUSED. - -Fri Sep 25 00:04:37 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.4, binary age 0, interface age 0. - - * glib.h (struct _GScanner): dumped peeked_char and text_len in favour - of *text_end and *buffer for buffered read()s. - - * gscanner.c: changed peeking and retrival of next character so we - have buffered reads. fixed minor bug with number parsing error - reporting. made some static!!! variables local ones (why did we use - static temporary variables in the lowlevel tokenization code anyways?). - -Mon Sep 21 23:23:10 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.3 - -Mon Sep 21 07:43:13 1998 Tim Janik <timj@gtk.org> - - * glib.h: added g_renew() which works as g_new() for g_realloc(). - -Mon Sep 21 02:22:12 1998 Tim Janik <timj@gtk.org> - - * NEWS file update for upcoming release of GLib + GModule - version 1.1.3, binary age 0, interface age 0. (GModule uses - the same version numbers as GLib.) - - * glib.h: swap the inclusion of of float.h and limits.h to work - around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by - Per Abrahamsen <abraham@dina.kvl.dk>). - - * glib.h: - * gscanner.c: renamed the GValue union to GTokenValue, this should - not affect source compatibility in most cases. - - * ghash.c: added some g_return_if_fail() statements. make - g_hash_table_lookup_node() an inline function so we save an extra - function invokation on lookups. - -Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com> - - * ltmain.sh: Patch to libtool-1.2b to make --disable-static - work. - -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). - Returns the number of elements deleted. - -Fri Sep 18 11:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_memdup implementation - -Fri Sep 18 18:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: make the datalists a safe type (not using a generic - gpointer) by expecting a GData* argument in the g_datalist functions. - provide g_dataset_foreach() and g_datalist_foreach() functions that - allow a GDataForeachFunc function to walk the data lists. - (g_dataset_destroy_internal): made this function truely reentrant (i.e. - can be called from within destroy notifiers as well). - the *_foreach functions are _not_ reentrant (unless all the other - dataset and datalist functions). - -Fri Sep 18 03:41:20 1998 Tim Janik <timj@gtk.org> - - * gtree.c (g_tree_new): check for key_compare_func != NULL (reported - by Michal Kara). - -Thu Sep 17 18:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * config.h.in: removed from repository - - * install-sh - * missing - * mkinstalldirs: updated to latest automake version - -Thu Sep 17 06:36:25 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: implemented g_datalist_* along the lines of g_dataset, - but operates on an opaque gpointer *datalist; pointer, e.g. for the - implementation of GtkObject named data. - we cache a certain portion of the already freed data entries now, to - gain a slight performance improve with data reallocation. - -Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com> - - * Makefile.am glib-config.in l*: Update to libtool-1.2b, - change library versioning scheme to drop LT_RELEASE - from the -l line, while keeping it in the soname. - -Fri Sep 11 02:11:46 1998 Tim Janik <timj@gtk.org> - - * glib.h: explicitely include the prototypes for inline functions - to cure gcc warnings for -Wmissing-prototypes. - -Wed Sep 9 02:52:04 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -posix check for NeXTStep - -Tue Sep 8 05:04:06 1998 Tim Janik <timj@gtk.org> - - * glib.h: abandon the use of ATEXIT(), we keep the fallback - macros for backwards compatibility. people ought to use g_atexit(). - - * gutils.c (g_atexit): new function to take over the implementation - of ATEXIT. this function is guarranteed to succeed, similar to - g_malloc(). - -Mon Sep 7 20:07:38 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: comment the -std1 check and save LIBS properly - -Mon Sep 7 07:53:21 1998 Tim Janik <timj@gtk.org> - - * configure.in: check for all three inline keywords individually. - - * 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'. - 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 - prototypes if no inlinig can be performed. we special case most of the - stuff, so inline functions can have a normal implementation by defining - G_INLINE_FUNC to extern and G_CAN_INLINE to 1. - - * ltconfig: (compiler PIC flag test): special case linux for non - aout systems to honour lcc's position independant code (cases - "linux*aout)" and "linux*)" got added). (this needs to go into - libtool which does an advanced test, checking for __LCC__). - - * autogen.sh: take $CC=lcc into account by invoking automake with - --include-deps so lcc isn't scared by gcc's auto-dependancy - generation code. care about $ACLOCAL_FLAGS. optionally feature - autoheader. - - * minor fixups in other places to cure some of lcc's warnings. - -Sun Sep 6 19:08:53 PDT 1998 Manish Singh <yosh@gimp.org> - - * configure.in: added -std1 check for ANSI compliance (from gtk) - -Sun Sep 6 12:31:50 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: provide proper ATEXIT behavior on NeXTStep by !atexit - -Sat Sep 5 18:03:36 1998 Tom Tromey <tromey@cygnus.com> - - * gutils.c (GLIB_INLINE): Define. - * glib.h (GLIB_INLINE): New define. - (g_bit_nth_msf): Use it. Also, add prototype. - (g_bit_storage): Likewise. - (g_bit_storage): Likewise. - -Sat Sep 5 04:40:02 1998 Tim Janik <timj@gtk.org> - - * 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. - - * gmem.c: new function g_mem_chunk_alloc0() which will initialize - a memory area allocated with g_mem_chunk_alloc() with 0's. - -Wed Sep 2 19:13:28 1998 Owen Taylor <otaylor@redhat.com> - - * garray.c glib.h (g_array_[ap/pre]pend_vals): make - data argument const. - -Wed Aug 26 06:32:40 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstrfuncs.c: new function g_strnfill() to return a new string - of specified length, filled with a specific character. - -Tue Sep 1 23:46:31 1998 Josh MacDonald <jmacd@axis.hip.berkeley.edu> - - * testglib.c (main): Update the array tests. Reduce the number of - iterations for the prepend test from 10000 to 100 since it is - O(n^2) and was taking longer than I would like to wait. - - * garray.c: I've worked on the GArray interface, mostly. It was - seriously broken before and I hate to do it, but this is going to - break some code. It is important to do this now, because more and - more people are starting to use glib and the interface was both - broken and inconsistent. First, rename the _truncate functions of - both the GArray and GPtrArray classes to _set_size, since this - function can also be used to extend the arrays. GArray now - accepts two more initialization arguments: clear and element_size. - Instead of providing the type to each access function, the array - now stores the element size. Clear, if set, causes the library to - zero element's memory as the array expands. The major broken-ness - here was that array->len was in bytes, not elements. Now, since - the array knows its element size, array->len is correct and I have - removed the g_array_length macro. The only macro which now - accepts the type as an argument is g_array_index, which casts the - element to the right type--this interface does not change. The - append and prepend functions simply need the types removed. - g_ptr_array_remove_index now returns the removed element. - - * gprimes.c (g_spaced_primes_closest): Move this function out of - ghash.c and rename it from g_hash_closest_prime. Fix the primes - so that they are actually prime (they weren't all -- isn't that - nice?). - -Mon Aug 24 02:08:56 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gstring.c: - * gstrfuncs.c: - (g_vsprintf): removed this function which was not publically - exported in glib.h. to export it, it should have been named - differently in the first place, since its semantics differ from - vsprintf(). apart from that, it was a possible cause for - problems since it worked on a previously allocated memory area and - was used in a lot places of glib. exporting it would have been a - guararant for problems with threaded programs. - (g_printf_string_upper_bound): exported this function to return - a string size, guarranteed to be big enough to hold the fully - expanded format+args string. added 'q', 'L' and 'll' flag handling. - in fact, the newly allocated area is in most cases much bigger than - required. - (g_strdup_vprintf()): new function returning a newly allocated string - containing the contents of *format and associated args (size is - calculated with g_printf_string_upper_bound()). - (g_strdup_printf): new function which wraps g_strdup_vprintf(). - - * configure.in: check for va_copy() or __va_copy() alternatively. - check whether va_lists can be copyied by value. - - * glib.h: provide a definition for G_VA_COPY. - - * glib.h: - * gmessages.c: - (g_logv): - (g_vsnprintf): - pass va_lists by value, not by reference, since this causes problems - on platforms that implement va_list as as arrays. internaly, use - G_VA_COPY (new_arg, org_arg); va_end (new_arg); to produce a second - va_list variable, if multiple passes are required. changed all - callers. - - * glib.h: - * gerror.h: - renamed g_debug() to g_on_error_query(), cleaned up a bit. - renamed g_stack_trace() to g_on_error_stack_trace() since both - functions cluttered different namespaces. - there is an appropriate comment in glib.h now that explains the - unix and gdb specific dependencies of both functions. - removed g_attach_process(). - g_on_error_stack_trace() should probably be handled with caution, - i've seem several different linux versions (2.0.x) become unstable - after invokation of this function. - -1998-08-18: Elliot Lee <sopwith@redhat.com> - - * In gmem.c, add the ability to exclude memory chunks from the - memory profiling information. - -Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h - * gstrfuncs.c: added g_strndup - -Tue Aug 18 04:40:17 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: new function g_log_set_always_fatal() to set an - additional fatal_mask for log levels that are considered to be fatal - globally (required by gtk). since this mask is not domain-associated, - it is restricted to the log levels, introduced by glib itself. - - * gmem.c: - * grel.c: - * gtree.c (g_tree_node_check): - don't use g_print() calls for informational/debugging output, - but log all this stuff through g_log() with G_LOG_LEVEL_INFO. - libraries shouldn't use printf(), g_print() or g_printerr() at all. - -Tue Aug 18 02:46:44 1998 Tim Janik <timj@gtk.org> - - - * glib.h (__STRICT_ANSI__): if __STRICT_ANSI__ is defined, make - `inline' a noop, since strict ANSI rules don't permit `inline'. - -Mon Aug 17 15:21:42 1998 Tim Janik <timj@gtk.org> - - * grel.c: made private functions static. - -Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to - EXTRA_DIST - * glib.spec: version = 1.1.3 - -Mon Aug 17 01:46:14 1998 Tim Janik <timj@gtk.org> - - * glib.m4: feature an extra MODULES parameter, so glib-config can - be invoked with the "gmodule" argument. - - * glib.h: changed the log level to G_LOG_LEVEL_CRITICAL for all - g_return*_if_fail statements, and made them issue a message - like "assertion `%s' failed". - - * gmessages.c (g_logv): ugh, don't pass log_domain as NULL to - g_log_find_domain. - -Sun Aug 16 20:28:27 1998 Tim Janik <timj@gtk.org> - - * version bump to 1.1.3, binary age 0, interface age 0. - - * glib.h: be nice to platforms that don't have gint64 and don't - issue #warning on every compilation. since glib doesn't require - gint64 itself, packages that need gint64 should test for this - themselves. - - * glib.h: - * gutils.c: added a new function g_vsnprintf(). - -Sun Aug 16 Elliot Lee - - glib.h: #error out if we don't recognize the SIZEOF_VOID_P - #warning if no gint64 - -Fri Aug 14 16:41:53 1998 Tim Janik <timj@gtk.org> - - * glib.h: added static inline functions for bit mask tests: - g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage. - -Fri Aug 13 14:23:37 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gmessages.c: - revised the message handling system, which is now based on a new - mechanism g_log*. most of the assertment macros got adapted to - feature the new g_log() call with an additional specification of - the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN - is undefined upon the includion of glib.h, it'll be defined with a - value of (NULL) and thus preserves the original bahaviour for - warning and error messages. the message handler setting functions - for g_warning, g_error and g_message are only provided for backwards - compatibility and might get removed somewhen. - - * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain - to "GLib" upon compilation. we currently have to add this definition - to the DEFS variable. - * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start - of this file currently, since automake doesn't support per target - _CFLAGS yet. - - * glib.h: changed some gints to gbooleans, made a few const corrections, - removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some - in other required places. - - * gnode.c: - (g_node_prepend): - (g_node_insert_before): - (g_node_insert): - (g_node_append_data): - (g_node_prepend_data): - (g_node_insert_data_before): - (g_node_insert_data): - (g_node_append): - return (node), so these macros/functions can be usefully chained with - g_node_new(). - -Mon Aug 10 17:56:11 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: it's GTime now, and it's back! - -Mon Aug 10 02:17:19 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: minor hack to cause SUBDIRS (gmodule) to be build - last. we do this by making all-recursive-am depend on all-am. - -Sun Aug 9 15:56:11 1998 Tim Janik <timj@gtk.org> - - * configure.in: added GModule checks. generate files in gmodule/. - * glib-config.in: support library specifications `glib' and `gmodule'. - * Makefile.am: feature the gmodule/ subdir. - -Wed Aug 5 10:04:29 PDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.2 - -Wed Aug 05 01:15:36 1998 George Lebl <jirka@5z.com> - - * testglib.c: fix 64-bitness in g_prints, sizeof doesn't - seem to return int so I cast it for printing, probably - just cosmetic - -Tue Aug 4 19:54:06 PDT 1998 Shawn T. Amundson <amundson@gkt.org> - - * Released GLib 1.1.1 - -Tue Aug 4 15:17:54 1998 Tim Janik <timj@gtk.org> - - * configure.in: version bump to 1.1.1, binary age 1, interface age 0. - * NEWS: updates. - * README: updates. - * INSTALL: updates and fixes. - * COPYING: include the GNU LGPL, rather than shipping an empty file. - * AUTHORS: listed original authors here, and added people who made - significant improvements to glib. - - * glib.h: - * gutils.c: implement g_get_current_dir() which returns a newly - allocated string, instead of a g_getcwd() variant that operates - on a static buffer. - export glib_interface_age and glib_binary_age. - as a convenience, macro definitions have been added for - g_node_insert_data, g_node_insert_data_before, g_node_append_data and - g_node_prepend_data. - - * testglib.c: minor cleanups, print current dir. - -Mon Aug 3 16:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gnode.c: change order of gpointer data; field in struct _GNode to - be partly binary compatible with GList and GSList. - -1998-08-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de> - - * garray.c (g_ptr_array_remove_index): bugfix: index check for - array has been wrong. - -Fri Jul 31 22:17:05 1998 Tim Janik <timj@gtk.org> - - * testglib.c (g_node_test): added a GNode test. - -Fri Jul 31 09:08:16 1998 Tim Janik <timj@gtk.org> - - * Makefile.am: compile gnode.c. - - * glib.h: - * gnode.c: added implementation of n-way trees. - - * gtree.c (g_tree_traverse): added a warning to the switch() statement - which says that G_LEVEL_ORDER is not implemented. - -Mon Jul 27 00:17:30 CDT 1998 Shawn T. Amundson <amundson@gtk.org> - - * Released GLib 1.1.0 - -Mon Jul 27 01:02:27 1998 Tim Janik <timj@gtk.org> - - * glib.h: #if 0'ed out the GTime definition, until it is definitively - needed. #if 0'ed out the g_getcwd() version, because it is the wrong - implementation. - -Sat Jul 25 16:09:00 1998 Mark Crichton <crichton@expert.cc.purdue.edu> - - * glib.h: gtime changed to g_time. gtime is used in - /usr/include/time.h in NetBSD, causing multiple headaches. - If this isn't the right way of fixing it.... ;) - -Thu Jul 23 00:29:14 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gscanner.c: new functions to make a scanner scope sensitive wrt - symbol lookups. - g_scanner_scope_foreach_symbol, g_scanner_scope_lookup_symbol, - g_scanner_scope_remove_symbol, g_scanner_scope_add_symbol and - g_scanner_set_scope. - g_scanner_add_symbol, g_scanner_remove_symbol and - g_scanner_foreach_symbol are now aliases for scope 0. - -Mon Jul 20 23:05:34 1998 George Lebl <jirka@5z.com> - - * glib.h: typo fixed for alphas for gint64 - -Tue Jul 14 09:05:18 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.c: new fuction g_dirname() which returns a newlly - allocated string. - -Fri Jul 10 06:33:43 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gutils.h: added a bunch of utility/wrapper functions: - g_basename(), g_getcwd(), g_get_user_name(), g_get_real_name(), - g_get_home_dir(), g_get_tmp_dir(), g_get_prgname() and g_set_prgname(). - - * gutils.c: removed all g_str* functions. - * gstrfuncs.c: moved the bunch g_str* functions from gutils.c in this - place. this file shall never include <unistd.h> to avoid clashes for - some of the g_str* functions on some OSes. - -Fri Jul 10 00:29:03 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Renamed g_hash_table_lookup_full to - g_hash_table_lookup_extended to conform with naming conventions. - -Tue Jul 7 03:18:58 EEST 1998 Lauri Alanko <nether@gimp.org> - - * glib.h: - * ghash.c: Generic cleanup, added a function: - (g_hash_table_lookup_full): Return whether the lookup succeeded, - and also retrieve the key and value. This allows one to - distinguish between failed lookup and finding a NULL, and also - allows one to free a key in the hash. - -Mon Jul 6 10:12:05 PDT 1998 Manish Singh <yosh@gimp.org> - - * ltconfig: fix for properly detecting shared lib support on - SunPro cc (taken from libtool 1.2.a) - -Sat Jul 4 13:38:52 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.h: added g_array_length - -Tue Jun 30 11:58:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): take symbol_2_token into - account. react on valid/invalid string pairs. - -Sat Jun 27 21:55:46 PDT 1998 Manish Singh <yosh@gimp.org> - - * glib.m4: ftp.glib.org -> ftp.gtk.org, since glib.org isn't - ours. ;) - -Fri Jun 19 03:11:02 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: removed g_dataset_try_key, g_dataset_force_id and - g_dataset_retrive_key in favour of GQuarks. - a GQuark is an numeric id wich is associated with a certain string. - (g_quark_try_string): try to get the quark associated with this string, - if the lookup failed return 0. - (g_quark_from_string): get the associated quark for a string, if there - isn't currently a GQuark associated with this string, then allocate a - new quark and return that. - (g_quark_from_static_string): like the above function, but the string - isn't strdup()ed to save memory. - (g_quark_to_string): get the string that is associated with a certain - GQuark. - - * gdataset.c (g_dataset_id_set_data_full): invoke the destroy function - _after_ the new data has been setup. - -Thu Jun 18 02:35:21 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Changed messages for g_return_[val]_if_fail to - be somewhat more clear: assertion "blah" failed. - -1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * testglib.c (main): Use GINT_TO_POINTER casts to remove compiler - warnings. - - * grel.c: #include <string.h> - -Fri Jun 12 15:39:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (GScanner): cleanups of the structure fields (binary - incompatible). - -Fri Jun 12 00:39:28 1998 Josh MacDonald <jmacd@icw.EECS.Berkeley.EDU> - - * glib.h: add new hash and equal functions g_int_*. complement - g_direct_hash with g_direct_equal. - - * grel.c: new file, GRelations implement tuples of N-N mappings. - A comment in glib.h briefly describes the interface. - - * ghash.c: new function, g_hash_table_size - - * glib.h: new typedefs, gsize, gssize, gtime. - - * garray.c: new functions implementing a simplified GArray. This - GPtrArray is an array of gpointers and has functions to add and - remove elements, much like java.lang.Vector. - - * garray.c: new functions for the single-byte special case of - GArray. The functions g_byte_array* operate on arrays of bytes. - Internally, a GArray is used. - - * testglib.c: tests for g_ptr_array, g_byte_array, and g_relation... - -1998-06-11 Federico Mena Quintero <federico@nuclecu.unam.mx> - - * gdataset.c: #include <string.h> - -Thu Jun 11 04:15:31 1998 Tim Janik <timj@gtk.org> - - * glib.h: - * gdataset.c: new function g_dataset_retrive_key. adjusted prealloc - sizes, to take up less space on initial allocation. - -1998-06-10 Raja R Harinath <harinath@cs.umn.edu> - - * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2, - the version from which glib's libtool forked. Needed for people - who use post-1.2 alphas of libtool. - * configure.in (enable_mem_check, enable_mem_profile): Replace - `echo -n' with AC_MSG_CHECKING. - (fd_set): Explain test for `fd_set' better. - -Wed Jun 10 19:29:51 1998 Owen Taylor <otaylor@gtk.org> - - * Makefile.am glib.m4 configure.in: - - Moved out from GTK+; added AM_PATH_GLIB macro. - -Wed Jun 10 12:56:07 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: renamed g_const_pointer => gconstpointer - -Tue Jun 9 17:47:33 1998 Owen Taylor <otaylor@gtk.org> - - * glib.h: Remove #error - HP/UX. - -Sat May 23 19:00:01 1998 Owen Taylor <otaylor@gtk.org> - [ Combination of: - gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>) - gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ] - - * glib.h ghash.c gstring.c gdataset.c gutils.c: - - Added new typedef g_const_pointer; expunged all incorrect - uses of 'const gpointer'. - - Fixed up warnings that that created, - - Changed GHashFunc and GCompareFunc to take g_const_pointer - arguments. (Necessary, but will cause warnings in existing - code until fixed) - - Added other new const in harmless positions. - -Mon Jun 8 01:06:47 1998 Tim Janik <timj@gtk.org> - - * glib.h: added enum-helper macros for code generation. - added G_BREAKPOINT(). - -Sat Jun 6 14:09:22 PDT 1998 Manish Singh <yosh@gimp.org> - - * gmem.c: commented out MEM_PROFILE and MEM_CHECK, causing weird - problems - -Wed Jun 3 06:19:42 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_chunk_new0): convenience macro, for allocating small chunks - like g_chunk_new() with additional 0 initialization. - -Mon Jun 1 04:43:27 1998 Tim Janik <timj@gtk.org> - - * ghash.c (g_hash_table_insert): wrote a comment describing why - a hash node's key should not also get replaced when overriding - previous entries. - -Tue May 26 18:30:06 1998 Tim Janik <timj@gtk.org> - - * glib.h (g_string_sized_new): new function to controll the preallocated - size of a GString. - - * glib.h (g_strreversed): new function to reverse a string. - -Mon May 18 22:14:39 1998 Owen Taylor <otaylor@gtk.org> -(Yasuhiro SHIRASAKI <joke@awa.tohoku.ac.jp> : gtk-joke-980517-0.patch) - - * gutils.c: Restored a missing prototype for g_vsprintf. - -Wed May 20 05:02:26 1998 Tim Janik <timj@gtk.org> - - * glib.h: conditionally define NULL, FALSE and TRUE. - (g_mem_chunk_create): new convenience macro as a short hand for - g_mem_chunk_new(). - (g_chunk_free): new convenience macro to be consistent with g_chunk_new. - -Tue, 19 May 1998 09:00:02 +0200 Paolo Molaro <lupus@debian.org> - - * gcompletion.c: generic functions for com<TAB>pletion... - -Sun May 17 10:48:27 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): provide usefull default - specifications for identifier_spec and symbol_spec. - - * glib.h: new functions g_slist_nth_data and g_list_nth_data to return - the data of the nth element in the list. - -Fri May 15 22:31:49 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) - that for some reason didn't produce a compiler warning on my machine - (is va_end defined to nothing for i386?). - -Fri May 15 12:32:08 1998 rodo <doulik@karlin.mff.cuni.cz> - - * gscanner.c: replaced some snprintf with g_snprintf - -Fri May 15 00:56:59 1998 Tim Janik <timj@gtk.org> - - * glib.h: further support for gcc function attributes: G_GNUC_FORMAT, - G_GNUC_NORETURN and G_GNUC_CONST. - - * gscanner.c (g_scanner_stat_mode): changed stat() to lstat(). - (g_scanner_msg_handler): "\n" at end of line! - (g_scanner_foreach_symbol): new function to iterate over the symbol - table (GScanner does value-wrapping). - -Thu May 14 04:14:12 1998 Tim Janik <timj@gtk.org> - - * glib.h: typedef gint gboolean; - this is needed to provide portability with big-endian platforms (e.g. - try sizeof(bool) for c++ on big-endians - it's 4). - this is also needed to maintain some_union.d_gint==some_union.d_gboolean. - plus, gint to gboolean casts and vice versa need to be possible without - loss. - -Tue May 12 19:22:58 1998 Owen Taylor <otaylor@gtk.org> - - * glib/glib.h: Added macros G[U]INT_TO_POINTER() and - GPOINTER_TO_[U]INT for storing small integers integers - inside pointers. - - * glib/testglib.c: Print sizeof() results - as g_print("%ld", (glong)sizeof(foo)), to deal with - size_t being long on Alpha's. - -Tue May 12 16:54:15 1998 Owen Taylor <otaylor@gtk.org> - (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch) - - * glib.h gstring.c gmessages.c: Added some missing - const to arguments. - - * gutils.c (g_strsignal.c): Added missing return statements. - -Mon May 11 21:11:54 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c gmessages.c: Moved g_error, g_warning, g_message and - g_print from gutils.c to new file gmessages.c, to avoid having to - include <unistd.h> in gutils.c which was causing problems for the - g_strsignal implementation on FreeBSD boxes. - -Mon May 11 09:53:43 1998 Tim Janik <timj@gtk.org> - - * configure.in: preserve automake CFLAGS. - - * Makefile.am: fully rename the created library to libglib-1.1.la. - this means we need to change certain portions of the Makefile.am on - major/minor version bumps. - - * ltmain.sh: the -release option is not required anymore. - - * glib.h: provide G_GNUC_FUNCTION and G_GNUC_PRETTY_FUNCTION to - avoid conditionals. unconditionally define NULL, TRUE, FALSE, MAX, - MIN, ABS and CLAMP, these macros might be screwed from other headers. - -Mon May 11 01:44:10 1998 Tim Janik <timj@gtk.org> - - * gdataset.c: new file, gdatasets implement the object data - mechanism from GtkObject. a generic data pointer is associated with - a certain location and a key id. - -Sat May 9 20:08:12 1998 Owen Taylor <otaylor@gtk.org> - - * glib/gmem.c: Experimentally restore GMemChunk - to its primeval state - where mem areas are - freed incrementally instead of searching the tree - every time a mem area is completely empty. Also, - always keep one mem chunk around. (Reduced calls - to malloc() a lot, but doesn't really improve - performance significiantly) - -Thu May 7 08:17:28 1998 Tim Janik <timj@gtk.org> - - * glib.h (G_GNUC_PRINTF): - (G_GNUC_SCANF): macros to facilitate the printf/scanf format argument - checking of gcc. - - * gstring.c: const corrections, string!=NULL checks at function entry. - (g_string_down): new function for tolower(3) conversion. - (g_string_up): new function for toupper(3) conversion. - - * gutils.c: const corrections. - (g_strdown): g_string_down() counterpart. - (g_strup): g_string_up() counterpart. - - * gscanner.c (g_scanner_unexp_token): - (g_scanner_error): - (g_scanner_warn): new functions to let a scanner put out warnings - or errors, especially to react on unexpected tokens. - - * gslist.c: - (g_slist_index): find out about about the position of a - certain data pointer. - (g_slist_position): find out about about the position of a - certain node. - - * glist.c: - (g_list_index): find out about about the position of a - certain data pointer. - -Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org> - - * ltmain.sh: added a new commandline flag -postfix similar to -release, - but will immediately change the library name. - - * Makefile.am: specify -postfix and -version-info - - * configure.in: version bump to 1.1.0. added GLIB_INTERFACE_AGE and - GLIB_BINARY_AGE. calculate LT_* variables for libtool. - -Fri May 1 16:36:08 1998 Owen Taylor <otaylor@gtk.org> - - * gutils.c: (g_strcasecmp). Check for isupper before - taking tolower, and account for macroized tolower. - - * gutils.c (g_error): Check for recursion. - -1998-04-27 Elliot Lee <sopwith@cuc.ml.org> - - * glist.c (g_list_position): New function to find the position of - a link in a list - should be the inverse of g_list_nth(), but - haven't tested it so poof. - -Thu Apr 30 21:41:30 1998 Owen Taylor <otaylor@gtk.org> - - * gstring.c : Check arguments more carefully, - (gtk-draco-980423-1.patch; ramsey@rhrk.uni-kl.de) - -Tue Apr 7 19:36:48 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_direct_compare): Removed, because that's what - a NULL comparison function means. And it wasn't 64 bit safe. - -Mon Apr 6 18:43:25 1998 Tim Janik <timj@gtk.org> - - * gscanner.c (g_scanner_get_token_ll): fixed a bug that caused floats - of the format ".xxx" to be parsed as "xxx". - -Fri Apr 3 20:36:35 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c (g_parse_debug_string): Make debug string - parsine case-insensitive - -Fri Apr 3 17:03:18 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: corrected possible overrun when inserting into - GStrings (thanks Elrond) - -Fri Apr 3 18:05:45 1998 Owen Taylor <owt1@cornell.edu> - - * testglib.c: Removed literal german from strings - to appease SGI compiler. - -Thu Mar 26 20:47:21 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in glib glibconfig.h.in: Add test for atexit/on_exit - - use on_exit if atexit not found in definition of ATEXIT. - -Wed Mar 25 15:23:37 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Switched glibconfig.h rule from HEADERS - to DATA, so that it is not added to DISTFILES - -Wed Mar 18 22:27:08 PST 1998 Manish Singh <yosh@gimp.org> - - * garray.c: g_rarray_truncate length done correctly - -Sun Mar 15 07:13:34 1998 Tim Janik <timj@gimp.org> - - * gutils.c: changed *_handler variables to be named glib_*_handler, - so you can easily access them from gdb. - -Sat Mar 14 17:47:43 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am: Don't refer to current directory as $(top_builddir) - to avoid confusing non-gmakes - -Sat Mar 14 01:37:35 1998 Owen Taylor <owt1@cornell.edu> - - * Makefile.am (configincludedir): Moved glibconfig.h to - $(pkglibdir)/include - -Tue Mar 10 02:03:12 1998 Tim Janik <timj@gimp.org> - - * gscanner.c (g_scanner_destroy_symbol_table_entry): new function to - free symbol table entries upon destruction - (gtk-gronlund-980309-0.patch.gz). - -Mon Mar 9 15:02:21 1998 Tim Janik <timj@gimp.org> - - * glib.h: changed *_length functions to return guint. - changed *_nth functions to take guint as argument. - - * glist.c: adapted g_list_length and g_list_length. - - * gslist.c: adapted g_slist_length and g_slist_length. - -Mon Mar 2 17:51:18 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gutils.c : changed g_strcasecmp - to take gchar* not guchar* - - * testglib.c: Remove trailing ; after functions - -Sun Mar 1 19:04:40 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h gstring.c: Added g_string_insert[_c]() - and g_string_erase(). - - From: Stefan Wille <1wille@vsys1.informatik.uni-hamburg.de> - -Mon Feb 16 23:05:06 1998 Owen Taylor <owt1@cornell.edu> - - * glist.c (g_list_insert_sorted): Changed function - so elements are always inserted, even if they compare - equal with another. - -Thu Feb 12 22:48:11 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c glib.h: removed deprecated g_string_equal - and g_string_hash. - -Tue Feb 10 13:04:36 1998 Owen Taylor <owt1@cornell.edu> - - * configure.in: Add check to see if the C library's - iswalnum can actually be used. (Not true for - Linux libc-5.4.38) - -Sat Feb 7 11:48:09 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.c gutils.c: added some additional consts in - appropriate places to remove a warning - -Sat Feb 7 11:15:54 1998 Owen Taylor <owt1@cornell.edu> - - * gutils.c: include <ctype.h> for tolower() - -Fri Jan 30 23:57:17 PST 1998 Manish Singh <yosh@gimp.org> - - * added and autoconfigured in a new utility function - g_strcasecmp - -Wed Jan 28 23:53:27 PST 1998 Manish Singh <yosh@gimp.org> - - * glist.c - * gslist.c - * testglib.c: the sort functions compared backwards. Fixed - * glib.h: list iterator macros now check for NULL pointers - -Tue Jan 27 09:46:57 PST 1998 Manish Singh <yosh@gimp.org> - - * gstring.c: g_string_prepend and g_string_prepend_c had - interchanged src and dest parameters for g_memmove. Fixed. - -Tue Jan 27 01:38:52 PST 1998 Manish Singh <yosh@gimp.org> - - * gslist.c: fixed a really, really lame error. g_slist_insert - didn't hook the data in! Reworked the routine to reflect the - functionality of g_list - -Wed Jan 21 01:13:25 1998 Tim Janik <timj@psynet.net> - - * Applied patch from (Raja R Harinath <harinath@cs.umn.edu>) - to add function g_snprintf. - * configure.in (AC_CHECK_FUNCS): Check for vsnprintf. - * glib.h: Add prototype for g_snprintf. - * glibconfig.h.in: Add HAVE_VSNPRINTF. - * gutils.c (g_snprintf): new function. - -Sat Jan 17 23:52:40 1998 Owen Taylor <owt1@cornell.edu> - - * gstring.{c,h} gscanner.c: - renamed g_string_equal => g_str_equal - renamed g_string_hash => g_str_hash - And const corrected. Old functions left in for now. - -Fri Jan 9 20:03:46 1998 Tim Janik <timj@psynet.net> - - * gutils.c (g_strerror): changed message for EAGAIN from - "no more processes" to "try again" since EAGAIN is used with - functions else than fork(). - - * gscanner.c (g_scanner_get_token_ll): use strtol() instead of - strtoul() to avoid conflicts with solaris. - - * merged the glib portions from Jan 2 to Jan 7 out of gtk+/ChangeLog - into this file. - -Wed Jan 7 02:14:30 PST 1998 Manish Singh <yosh@gimp.org> - - * glib.h: - * glist.c: - * gslist.c: - * testglib.c: Added g_[s]list_insert_sorted function - and appropriate tests in testglib - -Sat Jan 3 20:23:25 1998 Owen Taylor <owt1@cornell.edu> - - * glib.h: Changed guint32 -> guint for bitfields. - (Bitfields must be int or unsigned int?) - -Fri Jan 2 23:52 PST 1998 Jay Painter <jpaint@serv.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: reverted glibconfig.h and glib.h files back to the - way they were before my ugly hack. - - * gscanner.c: removed inlines from clist and gscanner - -Tue Dec 23 02:49:51 1997 Tim Janik <timj@psynet.net> - - * gscanner.c: new file for GScanner: Flexible lexical scanner for - general purpose. - * glib_pre2.h: added GScanner includes. added g_strconcat and g_strtod. - gutils.c (g_strconcat): new function for string concatenation of NULL - terminated parameter list. - (g_strtod): new function to perform best string to double conversion - with or without consideration of the current locale. - -Mon Dec 15 19:33:58 1997 Tim Janik <timj@psynet.net> - - * glist.c: minor optimizations: - (g_list_append): `if' optimized for common code path, commented out - unneccessary `assert', saved one variable assignment. - (g_list_prepend): saved two (conditioned) variable assignment. - (g_list_insert): saved one (conditioned) variable assignment, - saved one variable assignment. - (g_list_remove): `if' optimized for common code path, saved two - variable assignments by using `g_list_free_1' (which is even - faster) instead of `g_list_free'. - (g_list_reverse): saved allocation of one variable, saved one - variable assignment. - -Wed Dec 10 23:27:20 1997 Tim Janik <timj@psynet.net> - - * glib_pre1.h: - * glib_pre2.h: - * glib.h: this file now gets concatenated by makeglib_h from - glib_pre1.h and glib_pre2.h to merge in glibconfig.h wich got - created by configure (done by Jay Painter). - - * glib_pre2.h: the g_assert*() and g_return_*_fail() macros - are wrapped by G_STMT_START and G_STMT_END now, to avoid conflicts - when used within if (...) g_macro(); else ... conditionals. - -Tue Dec 17 13:14:07 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * glib.h: Changed 'g_return_if_fail' and 'g_return_val_if_fail' to - not call 'g_string' but to simply stringify the - expression. Calling 'g_string' causes the expression to be - expanded which is undesired. - -Sun Dec 1 01:30:48 1996 Peter Mattis <pmattis@charnley.HIP.Berkeley.EDU> - - * Started ChangeLog + * configure.in: set glib version to 1.3.0. @@ -1,8 +1,8 @@ Simple install procedure ======================== - % gzip -cd glib-1.1.15.tar.gz | tar xvf - # unpack the sources - % cd glib-1.1.15 # change to the toplevel directory + % gzip -cd glib-1.2.0.tar.gz | tar xvf - # unpack the sources + % cd glib-1.2.0 # change to the toplevel directory % ./configure # run the `configure' script % make # build GLIB [ Become root if necessary ] diff --git a/Makefile.am b/Makefile.am index e70074b59..e6bb2948a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -14,7 +14,7 @@ INCLUDES = -DG_LOG_DOMAIN=g_log_domain_glib @GLIB_DEBUG_FLAGS@ EXTRA_DIST = \ glib.m4 \ - glib.spec \ + glib.spec.in \ acglib.m4 \ sanity_check \ README.win32 \ @@ -100,3 +100,6 @@ sanity: snapshot: $(MAKE) dist distdir=$(PACKAGE)`date +"%y%m%d"` + +dist-hook: + cp glib.spec $(distdir)
\ No newline at end of file @@ -1,3 +1,29 @@ +What's new in GLib 1.2.0 (since GLib 1.0.x): + +* GLib is distributed seperatedly from Gtk+ +* Win32 Portability +* Threading support +* GModule mechanism (implemented in an extra library) which wraps dynamic + object code loading facilities in a portable manner +* GIOChannel structure to encapsulate the IPC mechanism +* GQuarks and datasets +* GRelations for n-way mapping of certain data +* An n-way tree implementation +* GDate functionality for calendar date manipulations +* GAllocator type and assocated functions +* Added generic callback maintenance functions (ghook) +* Generic functions for TAB completions +* Endian defines (G_*_ENDIAN) +* g_log() mechanism for logging of messages at different log levels +* Generic main-loop mechanism +* New glib-config helper script +* Many more API extensions + +Overview of Changes in GLib 1.1.16: + +* Allocate smaller pools of memory for glists, gslists, gnodes +* Bug Fixes + Overview of Changes in GLib 1.1.15: * HPUX 11 thread system detection should now work @@ -1,13 +1,10 @@ General Information =================== -This is GLib version 1.1.15. GLib, is a library which includes support +This is GLib version 1.2.0. GLib is a library which includes support routines for C such as lists, trees, hashes, memory allocation, and many other things. -Versions of GLib prior to 1.1.0 are distributed with GTK+ versions prior -to 1.1.0. - The official ftp site is: ftp://ftp.gtk.org/pub/gtk diff --git a/README.win32 b/README.win32 index f0434631c..27c4b7fe0 100644 --- a/README.win32 +++ b/README.win32 @@ -1,34 +1,43 @@ For more information about the port or GLib, GTk+ and the GIMP to -native Windows, see http://www.iki.fi/tml/gimp/win32/ . ("Native" -means that we use the Win32 API only, and not any POSIX emulation -layer except that provided by the Microsoft runtime C library, and the -pthreads emulation library.) - -As for now, only the Microsoft compiler and tools are really -supported. Before compiling, check the BIN definition in -makefile.msc. Compile with `nmake -f makefile.msc`. Install with -`nmake -f makefile.msc install`. Cygwin (without cygwin runtime, -i.e. "mingw32"), and maybe LCC-Win32 support will be added later. - -When using the cygwin compiler and tools *with* the cygwin runtime the +native Windows, and pre-built binary packages, see +http://www.iki.fi/tml/gimp/win32/ . "Native" means that we use the +Win32 API only, and not any POSIX emulation layer except that provided +by the Microsoft runtime C library. Additionally the pthreads +emulation library is used. + +As for now, to build GLib on Win32, you need the Microsoft compiler +and tools. Both the compiler from MSVC 5.0 and MSVC 6.0 have been used +successfully. + +Before building you must get the pthreads library for Windows from +http://sourceware.cygnus.com/pthreads-win32/. Edit the location of the +pthreads library and include files in makefile.msc. Also edit the BIN +definition in makefile.msc. + +Build with `nmake -f makefile.msc`. Install with `nmake -f +makefile.msc install`. + +Support for building using the cygwin tools (without depending on the +cygwin runtime, i.e. "mingw32"), and maybe LCC-Win32 might be added +later. When using the cygwin tools *with* the cygwin runtime the normal Unix configuration method should work as if on Unix (knock on wood). With a little work, it might be possible to use the ./configure mechanism also with a "mingw32" configuration. I.e. building GLib for -Win32 would use the cygwin tools (and dll), but the produced libraries -would not depend on the cygwin runtime being present. +Win32 would use the cygwin tools (and runtime), but the produced +libraries would not depend on the cygwin runtime being present. The following preprocessor macros are used for conditional compilation related to Win32: - WIN32 is defined when compiling for the Win32 platform, regardless - if using the X11 or Win32 GUI API (of course, in the case of GLib, this - dimension isn't significant), regardless whether using a more - or less complete Unix emulation runtime layer (like Cygwin) or not. + if using the X11 or Win32 windowing API (in the case of GLib, this + dimension isn't significant), regardless whether using a more or + less complete POSIX emulation runtime layer (like Cygwin) or not. - NATIVE_WIN32 is defined when compiling for Win32, *and* without - any Unix emulation, other that to the extent provided by the + any POSIX emulation, other that to the extent provided by the (Microsoft) C library, or the pthreads-win32 library. For instance, pathnames use the native Windows syntax. @@ -41,6 +50,5 @@ also, and in that case _MSC_VER wouldn't be defined. Some of the usage of these macros is probably a bit mixed up, and will have to be straightened out when actually trying other combinations. -The thread support uses the pthreads for Win32 package available from -http://sourceware.cygnus.com/pthreads-win32/, which isn't ready yet, -and thus really should not be relied upon. +The pthreads for Win32 package that the thread support uses isn't +released yet, and thus threads really should not be relied upon. diff --git a/acconfig.h b/acconfig.h index 6b2910ef4..6c4c1b777 100644 --- a/acconfig.h +++ b/acconfig.h @@ -46,9 +46,12 @@ #undef HAVE_BROKEN_WCTYPE #undef HAVE_DOPRNT #undef HAVE_FLOAT_H +#undef HAVE_GETPWUID_R +#undef HAVE_GETPWUID_R_POSIX #undef HAVE_LIMITS_H #undef HAVE_LONG_DOUBLE #undef HAVE_POLL +#undef HAVE_PTHREAD_GETSPECIFIC_POSIX #undef HAVE_PWD_H #undef HAVE_SYS_PARAM_H #undef HAVE_SYS_POLL_H @@ -92,7 +95,6 @@ #undef G_THREAD_SOURCE -#undef HAVE_GETPWUID_R_POSIX /* #undef PACKAGE */ /* #undef VERSION */ diff --git a/config.h.win32 b/config.h.win32 index 0c889315e..685c25357 100644 --- a/config.h.win32 +++ b/config.h.win32 @@ -55,13 +55,14 @@ #define G_HAVE___INLINE 1 #define GLIB_MAJOR_VERSION 1 -#define GLIB_MINOR_VERSION 1 -#define GLIB_MICRO_VERSION 15 +#define GLIB_MINOR_VERSION 2 +#define GLIB_MICRO_VERSION 0 #define GLIB_INTERFACE_AGE 0 #define GLIB_BINARY_AGE 0 #define G_THREAD_SOURCE "gthread-posix.c" #define G_THREADS_IMPL_POSIX +#define HAVE_PTHREAD_GETSPECIFIC_POSIX 1 /* The number of bytes in a char. */ #define SIZEOF_CHAR 1 diff --git a/configure.in b/configure.in index 179622c3d..6773dd14e 100644 --- a/configure.in +++ b/configure.in @@ -15,6 +15,10 @@ cflags_set=${CFLAGS+set} # we rewrite this file rm -f glibconfig-sysdefs.h +dnl we to AC_DIVERT_PUSH/AC_DIVERT_POP these variable definitions so they +dnl are available for $ac_help expansion (don't we all *love* autoconf?) +AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl +# # The following version number definitions apply to GLib and GModule # as a whole, so if changes occoured in either of them, they are both # treated with the same interface and binary age. @@ -28,11 +32,14 @@ rm -f glibconfig-sysdefs.h # set GLIB_BINARY_AGE and GLIB_INTERFACE_AGE to 0. # GLIB_MAJOR_VERSION=1 -GLIB_MINOR_VERSION=1 -GLIB_MICRO_VERSION=15 -GLIB_INTERFACE_AGE=2 -GLIB_BINARY_AGE=2 +GLIB_MINOR_VERSION=3 +GLIB_MICRO_VERSION=0 +GLIB_INTERFACE_AGE=0 +GLIB_BINARY_AGE=0 GLIB_VERSION=$GLIB_MAJOR_VERSION.$GLIB_MINOR_VERSION.$GLIB_MICRO_VERSION +dnl +AC_DIVERT_POP()dnl + AC_SUBST(GLIB_VERSION) # libtool versioning @@ -67,7 +74,18 @@ AM_MAINTAINER_MODE AC_CANONICAL_HOST -AC_ARG_ENABLE(debug, [ --enable-debug=[no/minimum/yes] turn on debugging [default=minimum]],,enable_debug=minimum) +dnl figure debugging default, prior to $ac_help setup +dnl +AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl +if test `expr $GLIB_MINOR_VERSION \% 2` = 1 ; then + debug_default=yes +else + debug_default=minimum +fi +AC_DIVERT_POP()dnl + +dnl declare --enable-* args and collect ac_help strings +AC_ARG_ENABLE(debug, [ --enable-debug=[no/minimum/yes] turn on debugging [default=$debug_default]],,enable_debug=$debug_default) AC_ARG_ENABLE(mem_check, [ --enable-mem-check turn on malloc/free sanity checking [default=no]],,enable_mem_check=no) AC_ARG_ENABLE(mem_profile, [ --enable-mem-profile turn on malloc profiling atexit [default=no]],,enable_mem_profile=no) AC_ARG_ENABLE(ansi, [ --enable-ansi turn on strict ansi [default=no]], @@ -447,7 +465,7 @@ dnl *** g_module checks *** dnl *********************** G_MODULE_LIBS= G_MODULE_LDFLAGS= -G_MODULE_IMPL= +dnl G_MODULE_IMPL= don't reset, so cmd-line can override G_MODULE_NEED_USCORE=0 G_MODULE_HAVE_DLERROR=0 dnl *** dlopen() and dlsym() in system libraries @@ -579,11 +597,13 @@ LIBS_NOT_FOUND_1="I can't find the libraries for the thread implementation " LIBS_NOT_FOUND_2=". Please choose another thread implementation or - provide information on your thread implementation." + provide information on your thread implementation. + You can also run 'configure --disable-threads' + to compile without thread support." FUNC_NO_GETPWUID_R="the 'g_get_(user_name|real_name|home_dir|tmp_dir)' functions will not be MT-safe during their first call because - there is no 'getpwuid_r' on your system." + there is no working 'getpwuid_r' on your system." FUNC_NO_LOCALTIME_R="the 'g_date_set_time' function will not be MT-safe because there is no 'localtime_r' on your system." @@ -739,7 +759,24 @@ if test x"$have_threads" != xnone; then CFLAGS="$CFLAGS $G_THREAD_CFLAGS" AC_CHECK_FUNCS(localtime_r rand_r) if test "$ac_cv_header_pwd_h" = "yes"; then - AC_CHECK_FUNCS(getpwuid_r) + AC_MSG_CHECKING([for getpwuid_r]) + AC_CACHE_VAL(ac_cv_func_getpwuid_r, + [AC_TRY_RUN([#include <errno.h> + int main () { char buffer[10000], *pointer; + char getpwuid_r (long, void*, void*, + int, void*); + errno = 0; + getpwuid_r (0, &buffer, &buffer, + sizeof (buffer), &pointer); + return errno == ENOSYS;}], + [ac_cv_func_getpwuid_r=yes], + [ac_cv_func_getpwuid_r=no])]) + if test "$ac_cv_func_getpwuid_r" = yes; then + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_GETPWUID_R) + else + AC_MSG_RESULT(no) + fi if test "$ac_cv_func_getpwuid_r" = "yes"; then AC_MSG_CHECKING(whether getpwuid_r is posix like) # getpwuid_r(0, NULL, NULL, 0) is the signature on @@ -753,6 +790,15 @@ if test x"$have_threads" != xnone; then AC_DEFINE(HAVE_GETPWUID_R_POSIX)]) fi fi + if test x"$have_threads" = xposix; then + AC_MSG_CHECKING(whether pthread_getspecific is posix like) + # PCThreads has pthread_getspecific(pthread_key_t, void **); + AC_TRY_COMPILE([#include <pthread.h>], + [pthread_getspecific(0,NULL);], + [AC_MSG_RESULT(no)], + [AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_PTHREAD_GETSPECIFIC_POSIX)]) + fi LIBS="$glib_save_LIBS" CFLAGS="$glib_save_CFLAGS" fi @@ -957,8 +1003,8 @@ struct _GStaticMutex }; #define G_STATIC_MUTEX_INIT { NULL, { { $g_mutex_contents} } } #define g_static_mutex_get_mutex(mutex) \ - (g_thread_use_default_impl ? ((GMutex*) &(mutex).aligned_pad_u) : \ - g_static_mutex_get_mutex_impl (&(mutex).runtime_mutex)) + (g_thread_use_default_impl ? ((GMutex*) &((mutex)->aligned_pad_u)) : \ + g_static_mutex_get_mutex_impl (&((mutex)->runtime_mutex))) _______EOF else cat >>$outfile <<_______EOF @@ -966,7 +1012,7 @@ $g_enable_threads_def G_THREADS_ENABLED #define G_THREADS_IMPL_$g_threads_impl_def typedef struct _GMutex* GStaticMutex; #define G_STATIC_MUTEX_INIT NULL -#define g_static_mutex_get_mutex(mutex) (g_static_mutex_get_mutex_impl (&(mutex))) +#define g_static_mutex_get_mutex(mutex) (g_static_mutex_get_mutex_impl (mutex)) _______EOF fi @@ -1245,6 +1291,7 @@ g_mutex_contents="$glib_cv_byte_contents_gmutex" ]) AC_OUTPUT([ +glib.spec Makefile glib-config gmodule/gmoduleconf.h diff --git a/docs/glib-config.1 b/docs/glib-config.1 index 1028d6e05..75b0878cc 100644 --- a/docs/glib-config.1 +++ b/docs/glib-config.1 @@ -1,4 +1,4 @@ -.TH GLIB 1 "16 December 1998" Version 1.1.15 +.TH GLIB 1 "16 December 1998" Version 1.2.0 .SH NAME glib-config - script to get information about the installed version of GLib .SH SYNOPSIS @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -46,7 +53,7 @@ static void g_array_maybe_expand (GRealArray *array, gint len); static GMemChunk *array_mem_chunk = NULL; -G_LOCK_DECLARE_STATIC (array_mem_chunk); +G_LOCK_DEFINE_STATIC (array_mem_chunk); GArray* g_array_new (gboolean zero_terminated, @@ -250,7 +257,7 @@ static void g_ptr_array_maybe_expand (GRealPtrArray *array, gint len); static GMemChunk *ptr_array_mem_chunk = NULL; -G_LOCK_DECLARE_STATIC (ptr_array_mem_chunk); +G_LOCK_DEFINE_STATIC (ptr_array_mem_chunk); GPtrArray* diff --git a/gbacktrace.c b/gbacktrace.c index 2615ce2b4..af5522347 100644 --- a/gbacktrace.c +++ b/gbacktrace.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe ; except for g_on_error_stack_trace, but who wants thread safety * then @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -61,7 +68,7 @@ static void g_cache_node_destroy (GCacheNode *node); static GMemChunk *node_mem_chunk = NULL; -G_LOCK_DECLARE_STATIC (node_mem_chunk); +G_LOCK_DEFINE_STATIC (node_mem_chunk); GCache* g_cache_new (GCacheNewFunc value_new_func, diff --git a/gcompletion.c b/gcompletion.c index cba2a86cb..68617c1aa 100644 --- a/gcompletion.c +++ b/gcompletion.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/gdataset.c b/gdataset.c index 8aadb9626..b35c91143 100644 --- a/gdataset.c +++ b/gdataset.c @@ -19,6 +19,13 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe ; FIXME: might still freeze, watch out, not thoroughly * looked at yet. @@ -67,7 +74,7 @@ static inline GQuark g_quark_new (gchar *string); /* --- variables --- */ -G_LOCK_DECLARE_STATIC (g_dataset_global); +G_LOCK_DEFINE_STATIC (g_dataset_global); static GHashTable *g_dataset_location_ht = NULL; static GDataset *g_dataset_cached = NULL; /* should this be threadspecific? */ @@ -76,7 +83,7 @@ static GMemChunk *g_data_mem_chunk = NULL; static GData *g_data_cache = NULL; static guint g_data_cache_length = 0; -G_LOCK_DECLARE_STATIC (g_quark_global); +G_LOCK_DEFINE_STATIC (g_quark_global); static GHashTable *g_quark_ht = NULL; static gchar **g_quarks = NULL; static GQuark g_quark_seq_id = 0; @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -392,7 +399,7 @@ g_date_clear (GDate *d, guint ndates) memset (d, 0x0, ndates*sizeof (GDate)); } -G_LOCK_DECLARE_STATIC (g_date_global); +G_LOCK_DEFINE_STATIC (g_date_global); /* These are for the parser, output to the user should use * * g_date_strftime () - this creates more never-freed memory to annoy @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe ; except for g_on_error_stack_trace, but who wants thread safety * then @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -57,7 +64,7 @@ static void g_hash_node_destroy (GHashNode *hash_node); static void g_hash_nodes_destroy (GHashNode *hash_node); -G_LOCK_DECLARE_STATIC (g_hash_global); +G_LOCK_DEFINE_STATIC (g_hash_global); static GMemChunk *node_mem_chunk = NULL; static GHashNode *node_free_list = NULL; @@ -229,14 +236,14 @@ g_hash_table_thaw (GHashTable *hash_table) g_hash_table_resize (hash_table); } -gint +guint g_hash_table_foreach_remove (GHashTable *hash_table, GHRFunc func, gpointer user_data) { GHashNode *node, *prev; guint i; - gint deleted = 0; + guint deleted = 0; g_return_val_if_fail (hash_table != NULL, 0); g_return_val_if_fail (func != NULL, 0); @@ -294,7 +301,7 @@ g_hash_table_foreach (GHashTable *hash_table, } /* Returns the number of elements contained in the hash table. */ -gint +guint g_hash_table_size (GHashTable *hash_table) { g_return_val_if_fail (hash_table != NULL, 0); @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/giochannel.c b/giochannel.c index 7c05e3c81..8556f0d80 100644 --- a/giochannel.c +++ b/giochannel.c @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/giowin32.c b/giowin32.c index 16387d43b..d5e467e3d 100644 --- a/giowin32.c +++ b/giowin32.c @@ -20,6 +20,14 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + + #include "config.h" #include "glib.h" #include <windows.h> @@ -319,6 +319,7 @@ EXPORTS g_slist_reverse g_slist_sort g_snprintf + g_spaced_primes_closest g_source_add g_source_remove g_source_remove_by_source_data @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #ifndef __G_LIB_H__ #define __G_LIB_H__ @@ -1025,10 +1033,10 @@ void g_hash_table_thaw (GHashTable *hash_table); void g_hash_table_foreach (GHashTable *hash_table, GHFunc func, gpointer user_data); -gint g_hash_table_foreach_remove (GHashTable *hash_table, +guint g_hash_table_foreach_remove (GHashTable *hash_table, GHRFunc func, gpointer user_data); -gint g_hash_table_size (GHashTable *hash_table); +guint g_hash_table_size (GHashTable *hash_table); /* Caches @@ -1705,10 +1713,10 @@ void g_string_sprintfa (GString *string, * order by moving the last element to the position of the removed */ -#define g_array_append_val(a,v) g_array_append_vals(a,&v,1) -#define g_array_prepend_val(a,v) g_array_prepend_vals(a,&v,1) -#define g_array_insert_val(a,i,v) g_array_insert_vals(a,i,&v,1) -#define g_array_index(a,t,i) (((t*)a->data)[i]) +#define g_array_append_val(a,v) g_array_append_vals (a, &v, 1) +#define g_array_prepend_val(a,v) g_array_prepend_vals (a, &v, 1) +#define g_array_insert_val(a,i,v) g_array_insert_vals (a, i, &v, 1) +#define g_array_index(a,t,i) (((t*) (a)->data) [(i)]) GArray* g_array_new (gboolean zero_terminated, gboolean clear, @@ -1788,6 +1796,8 @@ guint g_int_hash (gconstpointer v); /* This "hash" function will just return the key's adress as an * unsigned integer. Useful for hashing on plain adresses or * simple integer values. + * passing NULL into g_hash_table_new() as GHashFunc has the + * same effect as passing g_direct_hash(). */ guint g_direct_hash (gconstpointer v); gint g_direct_equal (gconstpointer v, @@ -2789,20 +2799,22 @@ void g_static_private_set (GStaticPrivate *private_key, gpointer data, GDestroyNotify notify); -/* these are some convenience macros that expand to nothing if GLib was - * configured with --deisable-threads. for using StaticMutexes, you - * declare them with G_LOCK_DECLARE_STATIC (name) or G_LOCK_DECLARE (name) - * if you need to export the mutex. name is a unique identifier for the - * protected varibale or code portion. locking, testing and unlocking of - * such mutexes can be done with G_LOCK(), G_UNLOCK() and G_TRYLOCK() - * respectively. +/* these are some convenience macros that expand to nothing if GLib + * was configured with --disable-threads. for using StaticMutexes, + * you define them with G_LOCK_DEFINE_STATIC (name) or G_LOCK_DEFINE (name) + * if you need to export the mutex. With G_LOCK_EXTERN (name) you can + * declare such an globally defined lock. name is a unique identifier + * for the protected varibale or code portion. locking, testing and + * unlocking of such mutexes can be done with G_LOCK(), G_UNLOCK() and + * G_TRYLOCK() respectively. */ extern void glib_dummy_decl (void); #define G_LOCK_NAME(name) (g__ ## name ## _lock) #ifdef G_THREADS_ENABLED -# define G_LOCK_DECLARE_STATIC(name) static G_LOCK_DECLARE (name) -# define G_LOCK_DECLARE(name) \ +# define G_LOCK_DEFINE_STATIC(name) static G_LOCK_DEFINE (name) +# define G_LOCK_DEFINE(name) \ GStaticMutex G_LOCK_NAME (name) = G_STATIC_MUTEX_INIT +# define G_LOCK_EXTERN(name) extern GStaticMutex G_LOCK_NAME (name) # ifdef G_DEBUG_LOCKS # define G_LOCK(name) G_STMT_START{ \ @@ -2810,29 +2822,30 @@ extern void glib_dummy_decl (void); "file %s: line %d (%s): locking: %s ", \ __FILE__, __LINE__, G_GNUC_PRETTY_FUNCTION, \ #name); \ - g_static_mutex_lock (G_LOCK_NAME (name)); \ + g_static_mutex_lock (&G_LOCK_NAME (name)); \ }G_STMT_END # define G_UNLOCK(name) G_STMT_START{ \ g_log (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, \ "file %s: line %d (%s): unlocking: %s ", \ __FILE__, __LINE__, G_GNUC_PRETTY_FUNCTION, \ #name); \ - g_static_mutex_unlock (G_LOCK_NAME (name)); \ + g_static_mutex_unlock (&G_LOCK_NAME (name)); \ }G_STMT_END # define G_TRYLOCK(name) G_STMT_START{ \ g_log (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, \ "file %s: line %d (%s): try locking: %s ", \ __FILE__, __LINE__, G_GNUC_PRETTY_FUNCTION, \ #name); \ - }G_STMT_END, g_static_mutex_trylock (G_LOCK_NAME (name)) + }G_STMT_END, g_static_mutex_trylock (&G_LOCK_NAME (name)) # else /* !G_DEBUG_LOCKS */ -# define G_LOCK(name) g_static_mutex_lock (G_LOCK_NAME (name)) -# define G_UNLOCK(name) g_static_mutex_unlock (G_LOCK_NAME (name)) -# define G_TRYLOCK(name) g_static_mutex_trylock (G_LOCK_NAME (name)) +# define G_LOCK(name) g_static_mutex_lock (&G_LOCK_NAME (name)) +# define G_UNLOCK(name) g_static_mutex_unlock (&G_LOCK_NAME (name)) +# define G_TRYLOCK(name) g_static_mutex_trylock (&G_LOCK_NAME (name)) # endif /* !G_DEBUG_LOCKS */ #else /* !G_THREADS_ENABLED */ -# define G_LOCK_DECLARE_STATIC(name) extern void glib_dummy_decl (void) -# define G_LOCK_DECLARE(name) extern void glib_dummy_decl (void) +# define G_LOCK_DEFINE_STATIC(name) extern void glib_dummy_decl (void) +# define G_LOCK_DEFINE(name) extern void glib_dummy_decl (void) +# define G_LOCK_EXTERN(name) extern void glib_dummy_decl (void) # define G_LOCK(name) # define G_UNLOCK(name) # define G_TRYLOCK(name) (FALSE) diff --git a/glib.spec.in b/glib.spec.in new file mode 100644 index 000000000..5b67827d5 --- /dev/null +++ b/glib.spec.in @@ -0,0 +1,90 @@ +# Note that this is NOT a relocatable package +%define ver @VERSION@ +%define rel SNAP +%define prefix /usr + +Summary: Handy library of utility functions +Name: glib +Version: %ver +Release: %rel +Copyright: LGPL +Group: Libraries +Source: ftp://ftp.gimp.org/pub/gtk/v1.1/glib-%{ver}.tar.gz +BuildRoot: /var/tmp/glib-%{PACKAGE_VERSION}-root +URL: http://www.gtk.org +Docdir: %{prefix}/doc + +%description +Handy library of utility functions. Development libs and headers +are in glib-devel. + +%package devel +Summary: GIMP Toolkit and GIMP Drawing Kit support library +Group: X11/Libraries + +%description devel +Static libraries and header files for the support library for the GIMP's X +libraries, which are available as public libraries. GLIB includes generally +useful data structures. + + +%changelog + +* Thu Feb 11 1999 Michael Fulbright <drmike@redhat.com> +- added libgthread to file list + +* Fri Feb 05 1999 Michael Fulbright <drmike@redhat.com> +- version 1.1.15 + +* Wed Feb 03 1999 Michael Fulbright <drmike@redhat.com> +- version 1.1.14 + +* Mon Jan 18 1999 Michael Fulbright <drmike@redhat.com> +- version 1.1.13 + +* Wed Jan 06 1999 Michael Fulbright <drmike@redhat.com> +- version 1.1.12 + +* Wed Dec 16 1998 Michael Fulbright <drmike@redhat.com> +- updated in preparation for the GNOME freeze + +* Mon Apr 13 1998 Marc Ewing <marc@redhat.com> +- Split out glib package + +%prep +%setup + +%build +CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%prefix +make + +%install +rm -rf $RPM_BUILD_ROOT + +make prefix=$RPM_BUILD_ROOT%{prefix} install + +%clean +rm -rf $RPM_BUILD_ROOT + +%post -p /sbin/ldconfig + +%postun -p /sbin/ldconfig + +%files +%defattr(-, root, root) + +%doc AUTHORS COPYING ChangeLog NEWS README +%{prefix}/lib/libglib-1.1.so.* +%{prefix}/lib/libgthread-1.1.so.* +%{prefix}/lib/libgmodule-1.1.so.* + +%files devel +%defattr(-, root, root) + +%{prefix}/lib/lib*.so +%{prefix}/lib/*a +%{prefix}/lib/glib +%{prefix}/include/* +%{prefix}/man/man1/ +%{prefix}/share/aclocal/* +%{prefix}/bin/* diff --git a/glib/Makefile.am b/glib/Makefile.am index e70074b59..e6bb2948a 100644 --- a/glib/Makefile.am +++ b/glib/Makefile.am @@ -14,7 +14,7 @@ INCLUDES = -DG_LOG_DOMAIN=g_log_domain_glib @GLIB_DEBUG_FLAGS@ EXTRA_DIST = \ glib.m4 \ - glib.spec \ + glib.spec.in \ acglib.m4 \ sanity_check \ README.win32 \ @@ -100,3 +100,6 @@ sanity: snapshot: $(MAKE) dist distdir=$(PACKAGE)`date +"%y%m%d"` + +dist-hook: + cp glib.spec $(distdir)
\ No newline at end of file diff --git a/glib/garray.c b/glib/garray.c index 54bbe44df..339690e7e 100644 --- a/glib/garray.c +++ b/glib/garray.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -46,7 +53,7 @@ static void g_array_maybe_expand (GRealArray *array, gint len); static GMemChunk *array_mem_chunk = NULL; -G_LOCK_DECLARE_STATIC (array_mem_chunk); +G_LOCK_DEFINE_STATIC (array_mem_chunk); GArray* g_array_new (gboolean zero_terminated, @@ -250,7 +257,7 @@ static void g_ptr_array_maybe_expand (GRealPtrArray *array, gint len); static GMemChunk *ptr_array_mem_chunk = NULL; -G_LOCK_DECLARE_STATIC (ptr_array_mem_chunk); +G_LOCK_DEFINE_STATIC (ptr_array_mem_chunk); GPtrArray* diff --git a/glib/gbacktrace.c b/glib/gbacktrace.c index 2615ce2b4..af5522347 100644 --- a/glib/gbacktrace.c +++ b/glib/gbacktrace.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe ; except for g_on_error_stack_trace, but who wants thread safety * then diff --git a/glib/gcache.c b/glib/gcache.c index c9ed61f44..145a09316 100644 --- a/glib/gcache.c +++ b/glib/gcache.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -61,7 +68,7 @@ static void g_cache_node_destroy (GCacheNode *node); static GMemChunk *node_mem_chunk = NULL; -G_LOCK_DECLARE_STATIC (node_mem_chunk); +G_LOCK_DEFINE_STATIC (node_mem_chunk); GCache* g_cache_new (GCacheNewFunc value_new_func, diff --git a/glib/gcompletion.c b/glib/gcompletion.c index cba2a86cb..68617c1aa 100644 --- a/glib/gcompletion.c +++ b/glib/gcompletion.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/glib/gdataset.c b/glib/gdataset.c index 8aadb9626..b35c91143 100644 --- a/glib/gdataset.c +++ b/glib/gdataset.c @@ -19,6 +19,13 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe ; FIXME: might still freeze, watch out, not thoroughly * looked at yet. @@ -67,7 +74,7 @@ static inline GQuark g_quark_new (gchar *string); /* --- variables --- */ -G_LOCK_DECLARE_STATIC (g_dataset_global); +G_LOCK_DEFINE_STATIC (g_dataset_global); static GHashTable *g_dataset_location_ht = NULL; static GDataset *g_dataset_cached = NULL; /* should this be threadspecific? */ @@ -76,7 +83,7 @@ static GMemChunk *g_data_mem_chunk = NULL; static GData *g_data_cache = NULL; static guint g_data_cache_length = 0; -G_LOCK_DECLARE_STATIC (g_quark_global); +G_LOCK_DEFINE_STATIC (g_quark_global); static GHashTable *g_quark_ht = NULL; static gchar **g_quarks = NULL; static GQuark g_quark_seq_id = 0; diff --git a/glib/gdate.c b/glib/gdate.c index c3b7b3186..7b1f5281b 100644 --- a/glib/gdate.c +++ b/glib/gdate.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -392,7 +399,7 @@ g_date_clear (GDate *d, guint ndates) memset (d, 0x0, ndates*sizeof (GDate)); } -G_LOCK_DECLARE_STATIC (g_date_global); +G_LOCK_DEFINE_STATIC (g_date_global); /* These are for the parser, output to the user should use * * g_date_strftime () - this creates more never-freed memory to annoy diff --git a/glib/gerror.c b/glib/gerror.c index 2615ce2b4..af5522347 100644 --- a/glib/gerror.c +++ b/glib/gerror.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe ; except for g_on_error_stack_trace, but who wants thread safety * then diff --git a/glib/ghash.c b/glib/ghash.c index 8de3a5cd3..331a1ab2d 100644 --- a/glib/ghash.c +++ b/glib/ghash.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -57,7 +64,7 @@ static void g_hash_node_destroy (GHashNode *hash_node); static void g_hash_nodes_destroy (GHashNode *hash_node); -G_LOCK_DECLARE_STATIC (g_hash_global); +G_LOCK_DEFINE_STATIC (g_hash_global); static GMemChunk *node_mem_chunk = NULL; static GHashNode *node_free_list = NULL; @@ -229,14 +236,14 @@ g_hash_table_thaw (GHashTable *hash_table) g_hash_table_resize (hash_table); } -gint +guint g_hash_table_foreach_remove (GHashTable *hash_table, GHRFunc func, gpointer user_data) { GHashNode *node, *prev; guint i; - gint deleted = 0; + guint deleted = 0; g_return_val_if_fail (hash_table != NULL, 0); g_return_val_if_fail (func != NULL, 0); @@ -294,7 +301,7 @@ g_hash_table_foreach (GHashTable *hash_table, } /* Returns the number of elements contained in the hash table. */ -gint +guint g_hash_table_size (GHashTable *hash_table) { g_return_val_if_fail (hash_table != NULL, 0); diff --git a/glib/ghook.c b/glib/ghook.c index 7e1c82dea..a3e3a78f7 100644 --- a/glib/ghook.c +++ b/glib/ghook.c @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/glib/giochannel.c b/glib/giochannel.c index 7c05e3c81..8556f0d80 100644 --- a/glib/giochannel.c +++ b/glib/giochannel.c @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/glib/giounix.c b/glib/giounix.c index 5e62ed85b..4944d8f09 100644 --- a/glib/giounix.c +++ b/glib/giounix.c @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/glib/giowin32.c b/glib/giowin32.c index 16387d43b..d5e467e3d 100644 --- a/glib/giowin32.c +++ b/glib/giowin32.c @@ -20,6 +20,14 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + + #include "config.h" #include "glib.h" #include <windows.h> diff --git a/glib/glib.def b/glib/glib.def index d5137484c..c9f4e233c 100644 --- a/glib/glib.def +++ b/glib/glib.def @@ -319,6 +319,7 @@ EXPORTS g_slist_reverse g_slist_sort g_snprintf + g_spaced_primes_closest g_source_add g_source_remove g_source_remove_by_source_data diff --git a/glib/glib.h b/glib/glib.h index ef58fa235..bc9cd8b24 100644 --- a/glib/glib.h +++ b/glib/glib.h @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #ifndef __G_LIB_H__ #define __G_LIB_H__ @@ -1025,10 +1033,10 @@ void g_hash_table_thaw (GHashTable *hash_table); void g_hash_table_foreach (GHashTable *hash_table, GHFunc func, gpointer user_data); -gint g_hash_table_foreach_remove (GHashTable *hash_table, +guint g_hash_table_foreach_remove (GHashTable *hash_table, GHRFunc func, gpointer user_data); -gint g_hash_table_size (GHashTable *hash_table); +guint g_hash_table_size (GHashTable *hash_table); /* Caches @@ -1705,10 +1713,10 @@ void g_string_sprintfa (GString *string, * order by moving the last element to the position of the removed */ -#define g_array_append_val(a,v) g_array_append_vals(a,&v,1) -#define g_array_prepend_val(a,v) g_array_prepend_vals(a,&v,1) -#define g_array_insert_val(a,i,v) g_array_insert_vals(a,i,&v,1) -#define g_array_index(a,t,i) (((t*)a->data)[i]) +#define g_array_append_val(a,v) g_array_append_vals (a, &v, 1) +#define g_array_prepend_val(a,v) g_array_prepend_vals (a, &v, 1) +#define g_array_insert_val(a,i,v) g_array_insert_vals (a, i, &v, 1) +#define g_array_index(a,t,i) (((t*) (a)->data) [(i)]) GArray* g_array_new (gboolean zero_terminated, gboolean clear, @@ -1788,6 +1796,8 @@ guint g_int_hash (gconstpointer v); /* This "hash" function will just return the key's adress as an * unsigned integer. Useful for hashing on plain adresses or * simple integer values. + * passing NULL into g_hash_table_new() as GHashFunc has the + * same effect as passing g_direct_hash(). */ guint g_direct_hash (gconstpointer v); gint g_direct_equal (gconstpointer v, @@ -2789,20 +2799,22 @@ void g_static_private_set (GStaticPrivate *private_key, gpointer data, GDestroyNotify notify); -/* these are some convenience macros that expand to nothing if GLib was - * configured with --deisable-threads. for using StaticMutexes, you - * declare them with G_LOCK_DECLARE_STATIC (name) or G_LOCK_DECLARE (name) - * if you need to export the mutex. name is a unique identifier for the - * protected varibale or code portion. locking, testing and unlocking of - * such mutexes can be done with G_LOCK(), G_UNLOCK() and G_TRYLOCK() - * respectively. +/* these are some convenience macros that expand to nothing if GLib + * was configured with --disable-threads. for using StaticMutexes, + * you define them with G_LOCK_DEFINE_STATIC (name) or G_LOCK_DEFINE (name) + * if you need to export the mutex. With G_LOCK_EXTERN (name) you can + * declare such an globally defined lock. name is a unique identifier + * for the protected varibale or code portion. locking, testing and + * unlocking of such mutexes can be done with G_LOCK(), G_UNLOCK() and + * G_TRYLOCK() respectively. */ extern void glib_dummy_decl (void); #define G_LOCK_NAME(name) (g__ ## name ## _lock) #ifdef G_THREADS_ENABLED -# define G_LOCK_DECLARE_STATIC(name) static G_LOCK_DECLARE (name) -# define G_LOCK_DECLARE(name) \ +# define G_LOCK_DEFINE_STATIC(name) static G_LOCK_DEFINE (name) +# define G_LOCK_DEFINE(name) \ GStaticMutex G_LOCK_NAME (name) = G_STATIC_MUTEX_INIT +# define G_LOCK_EXTERN(name) extern GStaticMutex G_LOCK_NAME (name) # ifdef G_DEBUG_LOCKS # define G_LOCK(name) G_STMT_START{ \ @@ -2810,29 +2822,30 @@ extern void glib_dummy_decl (void); "file %s: line %d (%s): locking: %s ", \ __FILE__, __LINE__, G_GNUC_PRETTY_FUNCTION, \ #name); \ - g_static_mutex_lock (G_LOCK_NAME (name)); \ + g_static_mutex_lock (&G_LOCK_NAME (name)); \ }G_STMT_END # define G_UNLOCK(name) G_STMT_START{ \ g_log (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, \ "file %s: line %d (%s): unlocking: %s ", \ __FILE__, __LINE__, G_GNUC_PRETTY_FUNCTION, \ #name); \ - g_static_mutex_unlock (G_LOCK_NAME (name)); \ + g_static_mutex_unlock (&G_LOCK_NAME (name)); \ }G_STMT_END # define G_TRYLOCK(name) G_STMT_START{ \ g_log (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, \ "file %s: line %d (%s): try locking: %s ", \ __FILE__, __LINE__, G_GNUC_PRETTY_FUNCTION, \ #name); \ - }G_STMT_END, g_static_mutex_trylock (G_LOCK_NAME (name)) + }G_STMT_END, g_static_mutex_trylock (&G_LOCK_NAME (name)) # else /* !G_DEBUG_LOCKS */ -# define G_LOCK(name) g_static_mutex_lock (G_LOCK_NAME (name)) -# define G_UNLOCK(name) g_static_mutex_unlock (G_LOCK_NAME (name)) -# define G_TRYLOCK(name) g_static_mutex_trylock (G_LOCK_NAME (name)) +# define G_LOCK(name) g_static_mutex_lock (&G_LOCK_NAME (name)) +# define G_UNLOCK(name) g_static_mutex_unlock (&G_LOCK_NAME (name)) +# define G_TRYLOCK(name) g_static_mutex_trylock (&G_LOCK_NAME (name)) # endif /* !G_DEBUG_LOCKS */ #else /* !G_THREADS_ENABLED */ -# define G_LOCK_DECLARE_STATIC(name) extern void glib_dummy_decl (void) -# define G_LOCK_DECLARE(name) extern void glib_dummy_decl (void) +# define G_LOCK_DEFINE_STATIC(name) extern void glib_dummy_decl (void) +# define G_LOCK_DEFINE(name) extern void glib_dummy_decl (void) +# define G_LOCK_EXTERN(name) extern void glib_dummy_decl (void) # define G_LOCK(name) # define G_UNLOCK(name) # define G_TRYLOCK(name) (FALSE) diff --git a/glib/glist.c b/glib/glist.c index c1e55004a..3c87a8f1e 100644 --- a/glib/glist.c +++ b/glib/glist.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -36,7 +43,7 @@ struct _GAllocator /* from gmem.c */ }; static GAllocator *current_allocator = NULL; -G_LOCK_DECLARE_STATIC (current_allocator); +G_LOCK_DEFINE_STATIC (current_allocator); /* HOLDS: current_allocator_lock */ static void @@ -102,7 +109,7 @@ g_list_alloc (void) if (!current_allocator) { GAllocator *allocator = g_allocator_new ("GLib default GList allocator", - 1024); + 128); g_list_validate_allocator (allocator); allocator->last = NULL; current_allocator = allocator; diff --git a/glib/gmain.c b/glib/gmain.c index 312402faa..6dceb8821 100644 --- a/glib/gmain.c +++ b/glib/gmain.c @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -128,7 +135,7 @@ static gint in_check_or_prepare = 0; /* The following lock is used for both the list of sources * and the list of poll records */ -G_LOCK_DECLARE_STATIC (main_loop); +G_LOCK_DEFINE_STATIC (main_loop); static GSourceFuncs timeout_funcs = { diff --git a/glib/gmem.c b/glib/gmem.c index 697e9df81..6d94af20c 100644 --- a/glib/gmem.c +++ b/glib/gmem.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -285,7 +292,11 @@ g_realloc (gpointer mem, if (size == 0) - return NULL; + { + g_free (mem); + + return NULL; + } #if defined(ENABLE_MEM_PROFILE) || defined(ENABLE_MEM_CHECK) @@ -298,7 +309,7 @@ g_realloc (gpointer mem, if (!mem) - p = (gpointer) malloc (size); + p = (gpointer) realloc (NULL, size); else { #if defined(ENABLE_MEM_PROFILE) || defined(ENABLE_MEM_CHECK) @@ -409,7 +420,7 @@ g_mem_profile (void) gulong local_freed_mem; g_mutex_lock (mem_profile_lock); - for (i = 0; i < (MEM_PROFILE_TABLE_SIZE - 1); i++) + for (i = 0; i < MEM_PROFILE_TABLE_SIZE; i++) local_allocations[i] = allocations[i]; local_allocated_mem = allocated_mem; local_freed_mem = freed_mem; diff --git a/glib/gmessages.c b/glib/gmessages.c index 404e953eb..fe569b49d 100644 --- a/glib/gmessages.c +++ b/glib/gmessages.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/glib/gnode.c b/glib/gnode.c index 23245b348..5145c6bd6 100644 --- a/glib/gnode.c +++ b/glib/gnode.c @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -39,7 +46,7 @@ struct _GAllocator /* from gmem.c */ GNode *free_nodes; /* implementation specific */ }; -G_LOCK_DECLARE_STATIC (current_allocator); +G_LOCK_DEFINE_STATIC (current_allocator); static GAllocator *current_allocator = NULL; /* HOLDS: current_allocator_lock */ @@ -108,7 +115,7 @@ g_node_new (gpointer data) if (!current_allocator) { GAllocator *allocator = g_allocator_new ("GLib default GNode allocator", - 1024); + 128); g_node_validate_allocator (allocator); allocator->last = NULL; current_allocator = allocator; diff --git a/glib/gprimes.c b/glib/gprimes.c index 404ebd605..c6109bf95 100644 --- a/glib/gprimes.c +++ b/glib/gprimes.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/glib/grel.c b/glib/grel.c index 544da6bfc..237b60c5d 100644 --- a/glib/grel.c +++ b/glib/grel.c @@ -16,6 +16,13 @@ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/glib/gscanner.c b/glib/gscanner.c index 360eb34f1..28528601b 100644 --- a/glib/gscanner.c +++ b/glib/gscanner.c @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/glib/gslist.c b/glib/gslist.c index 8b20a3d3a..ef5615f67 100644 --- a/glib/gslist.c +++ b/glib/gslist.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -35,7 +42,7 @@ struct _GAllocator /* from gmem.c */ GSList *free_lists; /* implementation specific */ }; -G_LOCK_DECLARE_STATIC (current_allocator); +G_LOCK_DEFINE_STATIC (current_allocator); static GAllocator *current_allocator = NULL; /* HOLDS: current_allocator_lock */ @@ -102,7 +109,7 @@ g_slist_alloc (void) if (!current_allocator) { GAllocator *allocator = g_allocator_new ("GLib default GSList allocator", - 1024); + 128); g_slist_validate_allocator (allocator); allocator->last = NULL; current_allocator = allocator; diff --git a/glib/gstrfuncs.c b/glib/gstrfuncs.c index 0a1648515..f24fdcb20 100644 --- a/glib/gstrfuncs.c +++ b/glib/gstrfuncs.c @@ -18,6 +18,13 @@ */ /* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +/* * MT safe */ @@ -644,13 +651,14 @@ g_strerror (gint errnum) #endif /* NO_SYS_ERRLIST */ msg = g_static_private_get (&msg_private); - if( !msg ) + if (!msg) { - msg = g_new( gchar, 64 ); + msg = g_new (gchar, 64); g_static_private_set (&msg_private, msg, g_free); } sprintf (msg, "unknown error (%d)", errnum); + return msg; } @@ -770,13 +778,14 @@ g_strsignal (gint signum) #endif /* NO_SYS_SIGLIST */ msg = g_static_private_get (&msg_private); - if( !msg ) + if (!msg) { - msg = g_new( gchar, 64 ); + msg = g_new (gchar, 64); g_static_private_set (&msg_private, msg, g_free); } sprintf (msg, "unknown signal (%d)", signum); + return msg; } diff --git a/glib/gstring.c b/glib/gstring.c index a2718c695..fd8e5122c 100644 --- a/glib/gstring.c +++ b/glib/gstring.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -48,7 +55,7 @@ struct _GRealString gint alloc; }; -G_LOCK_DECLARE_STATIC (string_mem_chunk); +G_LOCK_DEFINE_STATIC (string_mem_chunk); static GMemChunk *string_mem_chunk = NULL; /* Hash Functions. diff --git a/glib/gtimer.c b/glib/gtimer.c index 0b6e86a8a..eb18af85e 100644 --- a/glib/gtimer.c +++ b/glib/gtimer.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/glib/gtree.c b/glib/gtree.c index 5b4e342bb..557aa2719 100644 --- a/glib/gtree.c +++ b/glib/gtree.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -83,7 +90,7 @@ static GTreeNode* g_tree_node_rotate_right (GTreeNode *node); static void g_tree_node_check (GTreeNode *node); -G_LOCK_DECLARE_STATIC (g_tree_global); +G_LOCK_DEFINE_STATIC (g_tree_global); static GMemChunk *node_mem_chunk = NULL; static GTreeNode *node_free_list = NULL; diff --git a/glib/gutils.c b/glib/gutils.c index 321a1311f..5ac16ed10 100644 --- a/glib/gutils.c +++ b/glib/gutils.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe for the unix part, FIXME: make the win32 part MT safe as well. */ @@ -372,7 +379,7 @@ g_getenv (const gchar *variable) } -G_LOCK_DECLARE_STATIC (g_utils_global); +G_LOCK_DEFINE_STATIC (g_utils_global); static gchar *g_tmp_dir = NULL; static gchar *g_user_name = NULL; @@ -401,7 +408,7 @@ g_get_any_init (void) g_tmp_dir[k-1] = '\0'; } #endif - + if (!g_tmp_dir) { #ifndef NATIVE_WIN32 @@ -442,40 +449,63 @@ g_get_any_init (void) { struct passwd *pw = NULL; gpointer buffer = NULL; - + # ifdef HAVE_GETPWUID_R struct passwd pwd; guint bufsize = 64; gint error; - + do { g_free (buffer); buffer = g_malloc (bufsize); - + errno = 0; + # ifdef HAVE_GETPWUID_R_POSIX - error = getpwuid_r (getuid (), &pwd, buffer, bufsize, &pw); + error = getpwuid_r (getuid (), &pwd, buffer, bufsize, &pw); error = error < 0 ? errno : error; # else /* !HAVE_GETPWUID_R_POSIX */ +# ifdef _AIX + error = getpwuid_r (getuid (), &pwd, buffer, bufsize); + pw = error == 0 ? &pwd : NULL; +# else /* !_AIX */ pw = getpwuid_r (getuid (), &pwd, buffer, bufsize); error = pw ? 0 : errno; +# endif /* !_AIX */ # endif /* !HAVE_GETPWUID_R_POSIX */ - - bufsize *= 2; - } - while (error == ERANGE); - - if (error) - g_warning ("getpwuid_r(): failed due to: %s", g_strerror (error)); - -# else /* !HAVE_GETPWUID_R */ - - setpwent (); - pw = getpwuid (getuid ()); - endpwent (); - + + if (!pw) + { + /* we bail out prematurely if the user id can't be found + * (should be pretty rare case actually), or if the buffer + * should be sufficiently big and lookups are still not + * successfull. + */ + if (error == 0 || error == ENOENT) + { + g_warning ("getpwuid_r(): failed due to: No such user %d.", + getuid ()); + break; + } + if (bufsize > 32 * 1024) + { + g_warning ("getpwuid_r(): failed due to: %s.", + g_strerror (error)); + break; + } + + bufsize *= 2; + } + } + while (!pw); # endif /* !HAVE_GETPWUID_R */ + if (!pw) + { + setpwent (); + pw = getpwuid (getuid ()); + endpwent (); + } if (pw) { g_user_name = g_strdup (pw->pw_name); @@ -485,9 +515,9 @@ g_get_any_init (void) } g_free (buffer); } - + #else /* !HAVE_PWD_H */ - + # ifdef NATIVE_WIN32 { guint len = 17; @@ -500,14 +530,32 @@ g_get_any_init (void) } } # endif /* NATIVE_WIN32 */ - + #endif /* !HAVE_PWD_H */ - + +#ifdef __EMX__ + /* change '\\' in %HOME% to '/' */ + g_strdelimit (g_home_dir, "\\",'/'); +#endif if (!g_user_name) g_user_name = g_strdup ("somebody"); if (!g_real_name) g_real_name = g_strdup ("Unknown"); - } + else + { + gchar *p; + + for (p = g_real_name; *p; p++) + if (*p == ',') + { + *p = 0; + p = g_strdup (g_real_name); + g_free (g_real_name); + g_real_name = p; + break; + } + } + } } gchar* @@ -603,7 +651,7 @@ gint g_direct_equal (gconstpointer v1, gconstpointer v2) { - return GPOINTER_TO_UINT (v1) == GPOINTER_TO_UINT (v2); + return v1 == v2; } gint diff --git a/glibconfig.h.win32 b/glibconfig.h.win32 index 05ff5f04e..1f5c9535c 100644 --- a/glibconfig.h.win32 +++ b/glibconfig.h.win32 @@ -77,8 +77,8 @@ typedef unsigned __int64 guint64; #define alloca _alloca #define GLIB_MAJOR_VERSION 1 -#define GLIB_MINOR_VERSION 1 -#define GLIB_MICRO_VERSION 15 +#define GLIB_MINOR_VERSION 2 +#define GLIB_MICRO_VERSION 0 #ifdef __cplusplus #define G_HAVE_INLINE 1 @@ -120,8 +120,8 @@ struct _GStaticMutex /* This should be NULL followed by the bytes in PTHREAD_MUTEX_INITIALIZER */ #define G_STATIC_MUTEX_INIT { NULL, { { 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } } } #define g_static_mutex_get_mutex(mutex) \ - (g_thread_use_default_impl ? ((GMutex*) &(mutex).aligned_pad_u) : \ - g_static_mutex_get_mutex_impl (&(mutex).runtime_mutex)) + (g_thread_use_default_impl ? ((GMutex*) &((mutex)->aligned_pad_u)) : \ + g_static_mutex_get_mutex_impl (&((mutex)->runtime_mutex))) #define G_BYTE_ORDER G_LITTLE_ENDIAN @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -36,7 +43,7 @@ struct _GAllocator /* from gmem.c */ }; static GAllocator *current_allocator = NULL; -G_LOCK_DECLARE_STATIC (current_allocator); +G_LOCK_DEFINE_STATIC (current_allocator); /* HOLDS: current_allocator_lock */ static void @@ -102,7 +109,7 @@ g_list_alloc (void) if (!current_allocator) { GAllocator *allocator = g_allocator_new ("GLib default GList allocator", - 1024); + 128); g_list_validate_allocator (allocator); allocator->last = NULL; current_allocator = allocator; @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -128,7 +135,7 @@ static gint in_check_or_prepare = 0; /* The following lock is used for both the list of sources * and the list of poll records */ -G_LOCK_DECLARE_STATIC (main_loop); +G_LOCK_DEFINE_STATIC (main_loop); static GSourceFuncs timeout_funcs = { @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -285,7 +292,11 @@ g_realloc (gpointer mem, if (size == 0) - return NULL; + { + g_free (mem); + + return NULL; + } #if defined(ENABLE_MEM_PROFILE) || defined(ENABLE_MEM_CHECK) @@ -298,7 +309,7 @@ g_realloc (gpointer mem, if (!mem) - p = (gpointer) malloc (size); + p = (gpointer) realloc (NULL, size); else { #if defined(ENABLE_MEM_PROFILE) || defined(ENABLE_MEM_CHECK) @@ -409,7 +420,7 @@ g_mem_profile (void) gulong local_freed_mem; g_mutex_lock (mem_profile_lock); - for (i = 0; i < (MEM_PROFILE_TABLE_SIZE - 1); i++) + for (i = 0; i < MEM_PROFILE_TABLE_SIZE; i++) local_allocations[i] = allocations[i]; local_allocated_mem = allocated_mem; local_freed_mem = freed_mem; diff --git a/gmessages.c b/gmessages.c index 404e953eb..fe569b49d 100644 --- a/gmessages.c +++ b/gmessages.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/gmodule/ChangeLog b/gmodule/ChangeLog index c957056a7..514cca801 100644 --- a/gmodule/ChangeLog +++ b/gmodule/ChangeLog @@ -1,3 +1,12 @@ +Wed Feb 10 12:06:30 1999 Tim Janik <timj@gtk.org> + + * gmodule.c (CHECK_ERROR): be more descriptive on unsupported systems. + +Wed Feb 10 07:56:33 1999 Tim Janik <timj@gtk.org> + + * gmodule.c (g_module_error): fixed errernerous code wrt to thread + specific error string allocation handling. + Thu Jan 21 12:40:11 EST 1999 Jeff Garzik <jgarzik@pobox.com> * gmodule-dl.c (_g_module_build_path): diff --git a/gmodule/gmodule-dl.c b/gmodule/gmodule-dl.c index 6afc6d587..e8fb3f281 100644 --- a/gmodule/gmodule-dl.c +++ b/gmodule/gmodule-dl.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/gmodule/gmodule-dld.c b/gmodule/gmodule-dld.c index 17d6e010e..e8cf40d0d 100644 --- a/gmodule/gmodule-dld.c +++ b/gmodule/gmodule-dld.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/gmodule/gmodule-win32.c b/gmodule/gmodule-win32.c index c3fc9a90d..623398cfc 100644 --- a/gmodule/gmodule-win32.c +++ b/gmodule/gmodule-win32.c @@ -18,6 +18,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/gmodule/gmodule.c b/gmodule/gmodule.c index 99f38a6a4..e0ffc7bca 100644 --- a/gmodule/gmodule.c +++ b/gmodule/gmodule.c @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -64,7 +71,7 @@ static inline GModule* g_module_find_by_name (const gchar *name); /* --- variables --- */ -G_LOCK_DECLARE_STATIC (GModule); +G_LOCK_DEFINE_STATIC (GModule); const char *g_log_domain_gmodule = "GModule"; static GModule *modules = NULL; static GModule *main_module = NULL; @@ -114,15 +121,8 @@ g_module_find_by_name (const gchar *name) static inline void g_module_set_error (const gchar *error) { - gchar* module_error = g_static_private_get (&module_error_private); - if (module_error) - g_free (module_error); - if (error) - module_error = g_strdup (error); - else - module_error = NULL; + g_static_private_set (&module_error_private, g_strdup (error), g_free); errno = 0; - g_static_private_set (&module_error_private, module_error, g_free); } @@ -136,7 +136,8 @@ g_module_set_error (const gchar *error) #include "gmodule-win32.c" #else #undef CHECK_ERROR -#define CHECK_ERROR(rv) { g_module_set_error ("unsupported"); return rv; } +#define CHECK_ERROR(rv) { g_module_set_error ("dynamic modules are " \ + "not supported by this system"); return rv; } static gpointer _g_module_open (const gchar *file_name, gboolean bind_lazy) @@ -246,8 +247,7 @@ g_module_open (const gchar *file_name, return module; } - saved_error = g_module_error(); - g_static_private_set (&module_error_private, NULL, NULL); + saved_error = g_strdup (g_module_error ()); g_module_set_error (NULL); module = g_new (GModule, 1); @@ -281,6 +281,7 @@ g_module_open (const gchar *file_name, } else g_module_set_error (saved_error); + g_free (saved_error); } diff --git a/gmodule/gmodule.h b/gmodule/gmodule.h index 62fd16af6..908575c13 100644 --- a/gmodule/gmodule.h +++ b/gmodule/gmodule.h @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #ifndef __GMODULE_H__ #define __GMODULE_H__ diff --git a/gmodule/libgplugin_a.c b/gmodule/libgplugin_a.c index 99e9e41fe..91b928d0d 100644 --- a/gmodule/libgplugin_a.c +++ b/gmodule/libgplugin_a.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #include <gmodule.h> #include <stdlib.h> diff --git a/gmodule/libgplugin_b.c b/gmodule/libgplugin_b.c index 12e7fcb76..109e04853 100644 --- a/gmodule/libgplugin_b.c +++ b/gmodule/libgplugin_b.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #include <gmodule.h> #if defined (NATIVE_WIN32) && defined (__LCC__) diff --git a/gmodule/testgmodule.c b/gmodule/testgmodule.c index ff7b4397e..cb40da129 100644 --- a/gmodule/testgmodule.c +++ b/gmodule/testgmodule.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #include <gmodule.h> @@ -21,6 +21,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -29,7 +36,8 @@ typedef struct _GStaticPrivateNode GStaticPrivateNode; -struct _GStaticPrivateNode { +struct _GStaticPrivateNode +{ gpointer data; GDestroyNotify destroy; }; @@ -72,12 +80,15 @@ void g_mutex_init (void) { /* We let the main thread (the one that calls g_thread_init) inherit - the data, that it set before calling g_thread_init */ + * the data, that it set before calling g_thread_init + */ gpointer private_old = g_thread_specific_private; + g_thread_specific_private = g_private_new (g_static_private_free_data); /* we can not use g_private_set here, as g_threads_got_initialized is not - yet set TRUE, whereas the private_set function is already set. */ + * yet set TRUE, whereas the private_set function is already set. + */ g_thread_functions_for_glib_use.private_set (g_thread_specific_private, private_old); @@ -115,7 +126,7 @@ g_static_private_get (GStaticPrivate *private_key) if (!private_key->index) return NULL; else if (private_key->index <= array->len) - return g_array_index (array, GStaticPrivateNode, (private_key->index - 1)).data; + return g_array_index (array, GStaticPrivateNode, private_key->index - 1).data; else return NULL; } @@ -127,11 +138,12 @@ g_static_private_set (GStaticPrivate *private_key, { GArray *array; static guint next_index = 0; + GStaticPrivateNode *node; array = g_private_get (g_thread_specific_private); if (!array) { - array = g_array_new (FALSE, FALSE, sizeof(GStaticPrivateNode)); + array = g_array_new (FALSE, TRUE, sizeof (GStaticPrivateNode)); g_private_set (g_thread_specific_private, array); } @@ -148,8 +160,22 @@ g_static_private_set (GStaticPrivate *private_key, if (private_key->index > array->len) g_array_set_size (array, private_key->index); - g_array_index (array, GStaticPrivateNode, (private_key->index - 1)).data = data; - g_array_index (array, GStaticPrivateNode, (private_key->index - 1)).destroy = notify; + node = &g_array_index (array, GStaticPrivateNode, private_key->index - 1); + if (node->destroy) + { + gpointer ddata = node->data; + GDestroyNotify ddestroy = node->destroy; + + node->data = data; + node->destroy = notify; + + ddestroy (ddata); + } + else + { + node->data = data; + node->destroy = notify; + } } static void @@ -163,7 +189,7 @@ g_static_private_free_data (gpointer data) for (i = 0; i < array->len; i++ ) { GStaticPrivateNode *node = &g_array_index (array, GStaticPrivateNode, i); - if (node->data && node->destroy) + if (node->destroy) node->destroy (node->data); } } @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -39,7 +46,7 @@ struct _GAllocator /* from gmem.c */ GNode *free_nodes; /* implementation specific */ }; -G_LOCK_DECLARE_STATIC (current_allocator); +G_LOCK_DEFINE_STATIC (current_allocator); static GAllocator *current_allocator = NULL; /* HOLDS: current_allocator_lock */ @@ -108,7 +115,7 @@ g_node_new (gpointer data) if (!current_allocator) { GAllocator *allocator = g_allocator_new ("GLib default GNode allocator", - 1024); + 128); g_node_validate_allocator (allocator); allocator->last = NULL; current_allocator = allocator; @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -16,6 +16,13 @@ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/gscanner.c b/gscanner.c index 360eb34f1..28528601b 100644 --- a/gscanner.c +++ b/gscanner.c @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -35,7 +42,7 @@ struct _GAllocator /* from gmem.c */ GSList *free_lists; /* implementation specific */ }; -G_LOCK_DECLARE_STATIC (current_allocator); +G_LOCK_DEFINE_STATIC (current_allocator); static GAllocator *current_allocator = NULL; /* HOLDS: current_allocator_lock */ @@ -102,7 +109,7 @@ g_slist_alloc (void) if (!current_allocator) { GAllocator *allocator = g_allocator_new ("GLib default GSList allocator", - 1024); + 128); g_slist_validate_allocator (allocator); allocator->last = NULL; current_allocator = allocator; diff --git a/gstrfuncs.c b/gstrfuncs.c index 0a1648515..f24fdcb20 100644 --- a/gstrfuncs.c +++ b/gstrfuncs.c @@ -18,6 +18,13 @@ */ /* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + +/* * MT safe */ @@ -644,13 +651,14 @@ g_strerror (gint errnum) #endif /* NO_SYS_ERRLIST */ msg = g_static_private_get (&msg_private); - if( !msg ) + if (!msg) { - msg = g_new( gchar, 64 ); + msg = g_new (gchar, 64); g_static_private_set (&msg_private, msg, g_free); } sprintf (msg, "unknown error (%d)", errnum); + return msg; } @@ -770,13 +778,14 @@ g_strsignal (gint signum) #endif /* NO_SYS_SIGLIST */ msg = g_static_private_get (&msg_private); - if( !msg ) + if (!msg) { - msg = g_new( gchar, 64 ); + msg = g_new (gchar, 64); g_static_private_set (&msg_private, msg, g_free); } sprintf (msg, "unknown signal (%d)", signum); + return msg; } @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -48,7 +55,7 @@ struct _GRealString gint alloc; }; -G_LOCK_DECLARE_STATIC (string_mem_chunk); +G_LOCK_DEFINE_STATIC (string_mem_chunk); static GMemChunk *string_mem_chunk = NULL; /* Hash Functions. diff --git a/gthread/ChangeLog b/gthread/ChangeLog index c46243772..953ed86c5 100644 --- a/gthread/ChangeLog +++ b/gthread/ChangeLog @@ -1,3 +1,14 @@ +1999-02-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * testgthread.c (test_mutexes): Use new signature of + g_static_mutex* functions. + +1999-02-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de> + + * gthread-posix.c (g_private_get_posix_impl): Use the + HAVE_PTHREAD_GETSPECIFIC_POSIX macro to determine, which signature + to use for pthread_getspecific. + Tue Jan 19 20:56:02 1999 Tor Lillqvist <tml@iki.fi> * Makefile.am (EXTRA_DIST): Added gthread.def. diff --git a/gthread/gthread-none.c b/gthread/gthread-none.c index 7b8fdf98b..1b936a276 100644 --- a/gthread/gthread-none.c +++ b/gthread/gthread-none.c @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/gthread/gthread-nspr.c b/gthread/gthread-nspr.c index 180e7da5b..2fe44b786 100644 --- a/gthread/gthread-nspr.c +++ b/gthread/gthread-nspr.c @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/gthread/gthread-posix.c b/gthread/gthread-posix.c index e35acbdd5..f45ae178c 100644 --- a/gthread/gthread-posix.c +++ b/gthread/gthread-posix.c @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -155,8 +162,15 @@ g_private_get_posix_impl (GPrivate * private_key) { if (!private_key) return NULL; - +#ifdef HAVE_PTHREAD_GETSPECIFIC_POSIX return pthread_getspecific (*(pthread_key_t *) private_key); +#else /* HAVE_PTHREAD_GETSPECIFIC_POSIX */ + { + void* data; + pthread_getspecific (*(pthread_key_t *) private_key, &data); + return data; + } +#endif /* HAVE_PTHREAD_GETSPECIFIC_POSIX */ } static GThreadFunctions g_thread_functions_for_glib_use_default = diff --git a/gthread/gthread-solaris.c b/gthread/gthread-solaris.c index df4c99f6b..4d9c3758c 100644 --- a/gthread/gthread-solaris.c +++ b/gthread/gthread-solaris.c @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/gthread/gthread.c b/gthread/gthread.c index 3a5a6220a..f7d76bed8 100644 --- a/gthread/gthread.c +++ b/gthread/gthread.c @@ -20,6 +20,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ diff --git a/gthread/testgthread.c b/gthread/testgthread.c index 2eb5b4861..72874ccbc 100644 --- a/gthread/testgthread.c +++ b/gthread/testgthread.c @@ -15,7 +15,7 @@ test_mutexes (void) GMutex *mutex = NULL; GCond *cond = NULL; GStaticMutex static_mutex = G_STATIC_MUTEX_INIT; - G_LOCK_DECLARE (test_me); + G_LOCK_DEFINE (test_me); if (g_thread_supported ()) { @@ -26,8 +26,8 @@ test_mutexes (void) g_mutex_lock (mutex); g_mutex_unlock (mutex); - g_static_mutex_lock (static_mutex); - g_static_mutex_unlock (static_mutex); + g_static_mutex_lock (&static_mutex); + g_static_mutex_unlock (&static_mutex); g_cond_signal (cond); g_cond_broadcast (cond); @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe */ @@ -83,7 +90,7 @@ static GTreeNode* g_tree_node_rotate_right (GTreeNode *node); static void g_tree_node_check (GTreeNode *node); -G_LOCK_DECLARE_STATIC (g_tree_global); +G_LOCK_DEFINE_STATIC (g_tree_global); static GMemChunk *node_mem_chunk = NULL; static GTreeNode *node_free_list = NULL; @@ -17,6 +17,13 @@ * Boston, MA 02111-1307, USA. */ +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + /* * MT safe for the unix part, FIXME: make the win32 part MT safe as well. */ @@ -372,7 +379,7 @@ g_getenv (const gchar *variable) } -G_LOCK_DECLARE_STATIC (g_utils_global); +G_LOCK_DEFINE_STATIC (g_utils_global); static gchar *g_tmp_dir = NULL; static gchar *g_user_name = NULL; @@ -401,7 +408,7 @@ g_get_any_init (void) g_tmp_dir[k-1] = '\0'; } #endif - + if (!g_tmp_dir) { #ifndef NATIVE_WIN32 @@ -442,40 +449,63 @@ g_get_any_init (void) { struct passwd *pw = NULL; gpointer buffer = NULL; - + # ifdef HAVE_GETPWUID_R struct passwd pwd; guint bufsize = 64; gint error; - + do { g_free (buffer); buffer = g_malloc (bufsize); - + errno = 0; + # ifdef HAVE_GETPWUID_R_POSIX - error = getpwuid_r (getuid (), &pwd, buffer, bufsize, &pw); + error = getpwuid_r (getuid (), &pwd, buffer, bufsize, &pw); error = error < 0 ? errno : error; # else /* !HAVE_GETPWUID_R_POSIX */ +# ifdef _AIX + error = getpwuid_r (getuid (), &pwd, buffer, bufsize); + pw = error == 0 ? &pwd : NULL; +# else /* !_AIX */ pw = getpwuid_r (getuid (), &pwd, buffer, bufsize); error = pw ? 0 : errno; +# endif /* !_AIX */ # endif /* !HAVE_GETPWUID_R_POSIX */ - - bufsize *= 2; - } - while (error == ERANGE); - - if (error) - g_warning ("getpwuid_r(): failed due to: %s", g_strerror (error)); - -# else /* !HAVE_GETPWUID_R */ - - setpwent (); - pw = getpwuid (getuid ()); - endpwent (); - + + if (!pw) + { + /* we bail out prematurely if the user id can't be found + * (should be pretty rare case actually), or if the buffer + * should be sufficiently big and lookups are still not + * successfull. + */ + if (error == 0 || error == ENOENT) + { + g_warning ("getpwuid_r(): failed due to: No such user %d.", + getuid ()); + break; + } + if (bufsize > 32 * 1024) + { + g_warning ("getpwuid_r(): failed due to: %s.", + g_strerror (error)); + break; + } + + bufsize *= 2; + } + } + while (!pw); # endif /* !HAVE_GETPWUID_R */ + if (!pw) + { + setpwent (); + pw = getpwuid (getuid ()); + endpwent (); + } if (pw) { g_user_name = g_strdup (pw->pw_name); @@ -485,9 +515,9 @@ g_get_any_init (void) } g_free (buffer); } - + #else /* !HAVE_PWD_H */ - + # ifdef NATIVE_WIN32 { guint len = 17; @@ -500,14 +530,32 @@ g_get_any_init (void) } } # endif /* NATIVE_WIN32 */ - + #endif /* !HAVE_PWD_H */ - + +#ifdef __EMX__ + /* change '\\' in %HOME% to '/' */ + g_strdelimit (g_home_dir, "\\",'/'); +#endif if (!g_user_name) g_user_name = g_strdup ("somebody"); if (!g_real_name) g_real_name = g_strdup ("Unknown"); - } + else + { + gchar *p; + + for (p = g_real_name; *p; p++) + if (*p == ',') + { + *p = 0; + p = g_strdup (g_real_name); + g_free (g_real_name); + g_real_name = p; + break; + } + } + } } gchar* @@ -603,7 +651,7 @@ gint g_direct_equal (gconstpointer v1, gconstpointer v2) { - return GPOINTER_TO_UINT (v1) == GPOINTER_TO_UINT (v2); + return v1 == v2; } gint diff --git a/makefile.msc b/makefile.msc index 19d7e74fc..9b15dbaf5 100644 --- a/makefile.msc +++ b/makefile.msc @@ -21,7 +21,7 @@ CC = cl -G5 -GF -Ox -W3 -MD -nologo LDFLAGS = /link INSTALL = copy -GLIB_VER = 1.1 +GLIB_VER = 1.2 CFLAGS = -I. -DHAVE_CONFIG_H diff --git a/testglib.c b/testglib.c index 2c4c87bda..843b49ede 100644 --- a/testglib.c +++ b/testglib.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #include <stdio.h> diff --git a/tests/array-test.c b/tests/array-test.c index 168a21109..0bcd7b299 100644 --- a/tests/array-test.c +++ b/tests/array-test.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #include <stdio.h> diff --git a/tests/dirname-test.c b/tests/dirname-test.c index 2395e623d..8bb05b349 100644 --- a/tests/dirname-test.c +++ b/tests/dirname-test.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #include <stdio.h> diff --git a/tests/hash-test.c b/tests/hash-test.c index 6176fd7d5..2e3be24e7 100644 --- a/tests/hash-test.c +++ b/tests/hash-test.c @@ -17,6 +17,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #ifdef HAVE_CONFIG_H diff --git a/tests/list-test.c b/tests/list-test.c index 3e3d01a65..13dc18475 100644 --- a/tests/list-test.c +++ b/tests/list-test.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #include <stdio.h> diff --git a/tests/node-test.c b/tests/node-test.c index 682165f52..087568791 100644 --- a/tests/node-test.c +++ b/tests/node-test.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #ifdef HAVE_CONFIG_H diff --git a/tests/relation-test.c b/tests/relation-test.c index a3d37a2c5..d0660e553 100644 --- a/tests/relation-test.c +++ b/tests/relation-test.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #include <stdio.h> diff --git a/tests/slist-test.c b/tests/slist-test.c index 42657f6f4..0ab811422 100644 --- a/tests/slist-test.c +++ b/tests/slist-test.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #include <stdio.h> diff --git a/tests/strfunc-test.c b/tests/strfunc-test.c index 1445453fc..f50a03716 100644 --- a/tests/strfunc-test.c +++ b/tests/strfunc-test.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #include <stdio.h> diff --git a/tests/string-test.c b/tests/string-test.c index 1936e2bc7..bc5b7dbca 100644 --- a/tests/string-test.c +++ b/tests/string-test.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #include <stdio.h> diff --git a/tests/testglib.c b/tests/testglib.c index 2c4c87bda..843b49ede 100644 --- a/tests/testglib.c +++ b/tests/testglib.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #include <stdio.h> diff --git a/tests/tree-test.c b/tests/tree-test.c index 3b8d45e53..7f354ffdc 100644 --- a/tests/tree-test.c +++ b/tests/tree-test.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #include <stdio.h> diff --git a/tests/type-test.c b/tests/type-test.c index 1e39484c7..94b9cab22 100644 --- a/tests/type-test.c +++ b/tests/type-test.c @@ -16,6 +16,14 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ + +/* + * Modified by the GLib Team and others 1997-1999. See the AUTHORS + * file for a list of people on the GLib Team. See the ChangeLog + * files for a list of changes. These files are distributed with + * GLib at ftp://ftp.gtk.org/pub/gtk/. + */ + #undef G_LOG_DOMAIN #include <stdio.h> |