+2000-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * giounix.c (g_io_unix_write, g_io_unix_read): Interpret EINTR as
+ G_IO_ERROR_AGAIN.
+
+2000-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * configure.in: Added the missing POSIX_NO_YIELD and
+ POSIX_NO_PRIORITIES warning messages.
+
+ * configure.in: Use AC_TRY_RUN instead of AC_TRY_LINK, to test for
+ real thread support. On solaris pthread_create can be linked to
+ even in -lc, but it doesn't work then.
+
+ * configure.in: Don't use priorities for threads, when the
+ minimal/maximal priorities couldn't be determined at configure
+ time.
+
+ * configure.in, gthread.c: Always define GSystemThread in
+ glibconfig.h to represent a system thread.
+
+ * configure.in: Do not use native recursive threads, when
+ possibe. We use some features, that they do not expose (namely the
+ depth counter).
+
+ * glib.h, gthread.c: Redefined GStaticRecMutex. The functions are
+ now implemented in a different way, which should be way
+ faster. Alsothere are now functions g_static_rec_mutex_unlock_full
+ and g_static_rec_mutex_lock_full to leave/enter a recursive mutex
+ completly.
+
+ * gthread.c (g_thread_self): Do not test the system_thread to be
+ non-zero to speed things up.
+
+ * gthread.c (g_mutex_init): Therefore set the system_thread of the
+ main thread here.
+
+ * tests/thread-test.c: Rerun all tests once again, but this time
+ we fool the system into thinking, that the available thread system
+ is not native, but userprovided.
+
+2000-03-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * gqueue.c (g_queue_push_tail_link, g_queue_push_head_link): We
+ want the next and prev pointer of the inserted link to be NULL.
+
+2000-03-06 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * configure.in: Another small change to the pthread_.. search
+ pattern. Should work *now* for AIX.
+
+2000-03-04 Tor Lillqvist <tml@iki.fi>
+
+ * gwin32.c (g_win32_error_message): New function that returns the
+ message string for a Win32 error code.
+
+ * glib.h: Declare it.
+
+ * glib.def: Export it, plus g_node_copy.
+
+2000-03-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * configure.in: Make the search for pthread_attr_... prototypes
+ find names at the start of a line also, like it is on AIX. Thanks
+ to Valdis Kletnieks <Valdis.Kletnieks@vt.edu> for the info.
+
+Wed Mar 1 10:39:39 2000 Tim Janik <timj@gtk.org>
+
+ * gslist.c (g_slist_reverse): minor optimization.
+
+ * testglib.c (g_node_test): added a couple of tests for
+ g_node_copy().
+
+ * glib.h:
+ * gnode.c (g_node_copy): new function to copy subtrees,
+ supplied by dbsears@ix.netcom.com.
+ changed iterator to walk the children list backwards, so
+ we get down from O(n^2) to O(n).
+
+ * gnode.c (g_node_first_sibling): applied patch from
+ dbsears@ix.netcom.com to optimize access if node->parent
+ is present.
+
+ * gutils.c (g_get_any_init): backed out HAVE_PW_GECOS check around
+ assignment of g_real_name, sicne HAVE_PW_GECOS is never defined and
+ thus breaks the original code.
+
+ * merged changes from 1.2.7.
+
+Fri Jan 28 11:37:41 2000 Owen Taylor <otaylor@redhat.com>
+
+ Bug #4156 - Changes vaguely modelled after Scott Gifford's patch
+
+ * gtimer.c (g_timer_elapsed): Never report negative times -
+ clip times to 0.
+
+ * gmain.c (g_timeout_prepare): Guard against unexpected
+ clock shifts by never setting a timeout of more than
+ data->interval msecs.
+
+2000-02-27 Tor Lillqvist <tml@iki.fi>
+
+ * glib.def: Add new functions.
+
+2000-02-23 Tor Lillqvist <tml@iki.fi>
+
+ * README.win32: Add a missing step to the setup instructions for
+ gcc-2.95.2. Thanks to Arnaud Charlet.
+
+ * glib.def: Add missing entry point.
+
+2000-02-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * configure.in: Changed GCC version test to also accept major
+ versions > 2. Thanks to Ben Gertzfield <che@debian.org> for
+ pointing this out.
+
+Thu Feb 17 12:53:44 2000 Tim Janik <timj@gtk.org>
+
+ * gstring.c: changed g_str_hash() to a 31 bit version based on
+ a submission by Karl Nelson and hand optimized ad absurdum by
+ various people ;)
+
+ * gstring.c: applied patch from havoc for new gstring functions,
+ added some more sanity checks, coding style fixups.
+
+2000-02-13 Havoc Pennington <hp@pobox.com>
+
+ * tests/string-test.c (main): Add tests for the new GString
+ features
+
+ * testglib.c (main): Add tests for the new GString features
+
+ * gstring.c (g_string_insert_len): New function; insert
+ a given length of string at a given position.
+ (g_string_append): reimplement in terms of g_string_insert_len
+ (g_string_append_len): new function
+ (g_string_insert_c): accept -1 for "pos" arg to mean "append"
+ (g_string_append_c): reimplement in terms of g_string_insert_c
+ (g_string_prepend): reimplement in terms of g_string_insert_len
+ (g_string_prepend_len): new function
+ (g_string_prepend_c): reimplement in terms of g_string_insert_c
+ (g_string_insert): reimplement in terms of g_string_insert_len
+
+ * glib.h: Declare g_string_insert_len, g_string_append_len,
+ g_string_prepend_len
+
+Sun Feb 13 08:16:47 2000 Tim Janik <timj@gtk.org>
+
+ * configure.in: wtf??? someone destroyed the configure.in, reverting to
+ an older version from Feb 4 which apears to still work.
+
+2000-02-07 Tor Lillqvist <tml@iki.fi>
+
+ * gmodule.rc.in gthread.rc.in: Move to corresponding subdirectories.
+
+ * Makefile.am
+ * gmodule/Makefile.am
+ * gthread/Makefile.am: Change accordingly.
+
+ * makefile.cygwin: Corresponding changes, some cleanup.
+
+2000-02-05 Tor Lillqvist <tml@iki.fi>
+
+ * glib.rc.in gmodule.rc.in gthread.rc.in: New files, for putting
+ version info in the DLLs on Win32.
+
+ * Makefile.am: Generate corresponding *.rc files and distribute
+ them.
+
+ * makefile.cygwin.in: Add rules to automatically bump a "build
+ number" in the version info in the rc files each time the DLL is
+ built. But do this only for the person who releases binaries. If
+ others build the DLLs, the build number is set to zero.
+
+Fri Feb 4 19:36:05 2000 Tim Janik <timj@gtk.org>
+
+ * glib.h:
+ * gdataset.c: return stolen data from g_datalist_id_remove_no_notify()
+ and g_dataset_id_remove_no_notify() to avoid second lookup for common
+ use.
+
+2000-02-01 Tor Lillqvist <tml@iki.fi>
+
+ * glib.h
+ * gstrfuncs.c (g_filename_to_utf8, g_filename_from_utf8): New
+ functions for conversion between UTF-8 and the encoding expected
+ by C runtime functions like open() and stat(), and returned by
+ readdir().
+
+ Implement them on Win32 where we use the system "ANSI" codepage,
+ which might be single-byte or double-byte. On Unix, just skip the
+ issue for now and provide dummy implementations that return a copy
+ of the argument.
+
+ * README.win32
+ * build-dll
+ * glib.def: Minor updates.
+
+Wed Jan 26 05:24:38 2000 Tim Janik <timj@gtk.org>
+
+ * glib.h:
+ * gmain.c: s/current_time/dispatch_time/ for the dispatch() handlers.
+ refetch the current time after invocation of poll() to cover up for
+ the time spent in that function call.
+
+Fri Jan 21 10:18:24 2000 Owen Taylor <otaylor@redhat.com>
+
+ * glib.h (G_N_ELEMENTS): Added G_N_ELEMENTS macro to determine
+ the number of elements in an array.
+
+Sun Jan 9 13:28:36 2000 Tim Janik <timj@gtk.org>
+
+ * gstrfuncs.c (g_strtod): correctly fetch the current locale,
+ fix from owen.
+
+1999-12-16 Tor Lillqvist <tml@iki.fi>
+
+ * gmodule/gmodule-win32.c: Use FormatMessage to translate system
+ error codes into textual messages.
+
+1999-11-25 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * glib.h (G_TRYLOCK): This of course should return TRUE in a
+ program with a thread-disabled GLib.
+
+1999-11-18 Tor Lillqvist <tml@iki.fi>
+
+ * glib.def: g_strjoin was missing.
+
+1999-11-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * acconfig.h, config.h.win32.in, configure.in: Renamed
+ GLIB_SIZEOF_PTHREAD_T to GLIB_SIZEOF_SYSTEM_THREAD to reflect
+ changed meaning.
+
+ * configure.in: Cope with systems, that have a pthread_t type,
+ that is not a pointer. Hint from Karl Nelson
+ <kenelson@ece.ucdavis.edu>. Define GLIB_SIZEOF_SYSTEM_THREAD to 4
+ for Solaris. Cope with systems, that have no default mutex
+ initialize, like obviously most DCE systems.
+
+ * glib.h, gthread.c: Changed the prototype of thread_create and
+ thread_self to return the system thread into provided memory
+ instead of a return value. This is necessary, as HPUX has a
+ pthread_t, that is bigger than the biggest integral type there.
+
+ * gthread.c: system_thread is no longer a pointer, but an memory
+ area of size GLIB_SIZEOF_SYSTEM_THREAD. Changed the
+ zeroinitialization and the tests for zeroness accordingly.
+
+1999-11-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * configure.in: Create docs/glib-config.1 from
+ docs/glib-config.1.in. Makes 'make distcheck' happy (and me too).
+
+ * glib-config.1: Removed from CVS, as it is a generated file.
+
+1999-11-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * configure.in: Make the test for getpwuid_r work on newer AIX
+ versions, too. Still works on Solaris and Linux. Patch from Craig
+ Rodrigues <rodrigc@mediaone.net>.
+
+1999-11-08 Tor Lillqvist <tml@iki.fi>
+
+ * gwin32.c (g_win32_getlocale): Look at env vars LC_ALL, LC_CTYPE
+ and LANG first. Some refinements to the sublanguage logic.
+
+1999-11-04 Tor Lillqvist <tml@iki.fi>
+
+ * makefile.{cygwin,msc}.in: Add gwin32 object. Add rule to make .i
+ (preprocessed source) files.
+
+1999-11-01 Tor Lillqvist <tml@iki.fi>
+
+ * glib.h
+ * glib.def: Rename Win32-only functions from gwin_* to g_win32_*
+ to match the GLib naming conventions.
+
+ * gutils.c
+ * gwin32.c
+ * testglib.c
+ * Makefile.am: Move the Win32-only functions to the new
+ file gwin32.c
+
+1999-10-31 Tor Lillqvist <tml@iki.fi>
+
+ * gutils.c (gwin_getlocale): New Win32-specific function, returns
+ a Unixish current locale string (en, zh_TW etc).
+
+ * glib.h: Declare it.
+
+ * glib.def: Export it.
+
+ * testglib.c: Test it.
+
+ * gmessages.c (Win32: ensure_stdout_valid): Some improvements,
+ make sure we don't call AllocConsole several times, which I think
+ has happened.
+
+Sun Oct 31 18:55:01 1999 ape@spacetec.no (Asbjorn Pettersen)
+
+ * gcache.c (g_cache_remove): Test if node is NULL.
+ If not tested, GIMP's script-fu will crash.
+
+Sun Oct 17 18:11:40 1999 Tim Janik <timj@gtk.org>
+
+ * gdataset.c (g_data_set_internal): remove g_dataset_global_lock around
+ destroy() notification here as well.
+
+1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
+ is called recursivly. Reported by Ola Andersson <rand@ling.umu.se>.
+
+Tue Oct 12 14:17:12 1999 Tim Janik <timj@gtk.org>
+
+ * glib.h: removed useless g_string(x) macro that cluttered the namespace
+ and was just a poor wrapper around the cpp '#' symbol, use #x if you
+ need to work around this.
+ added new macro G_STRINGIFY(arg) that will convert arg to a string,
+ no matter whether it contains macros or not.
+
+1999-10-12 Tor Lillqvist <tml@iki.fi>
+
+ * config.h.win32.in: Define the new GLIB_SIZEOF_* constants here,
+ too.
+
+ * glib.h: Small Win32 comments improvement.
+
+Tue Oct 12 12:16:12 1999 Tim Janik <timj@gtk.org>
+
+ * gmessages.c (g_printf_string_upper_bound): completly new implementation
+ for printf string upper bounds calculation.
+ we handle all glibc 2.1 format specifiers now, except for positional
+ parameters (%nn$...) and wide char strings, plus some obscure upper
+ case variants of the standard conversions. this fixes a lot of
+ bugs in the old code, i.e.
+ - NULL format strings
+ - floats with exponents >+24
+ - %G
+ - precision specifications in general
+ - negative field widths
+ - %p for SIZEOF_VOID_P > 4 platforms
+ we now issue warnigns in places where the old code would have
+ caused buffer overruns anyways. warnings are suppressed when invoked
+ from glogv(), to avoid infinite recursions if someone passes a log
+ message that comes with really obscure format specifications.
+
+Tue Oct 12 11:49:00 1999 Tim Janik <timj@gtk.org>
+
+ * gstrfuncs.c: nuked old g_printf_string_upper_bound() version.
+
+Tue Oct 12 03:34:40 1999 Tim Janik <timj@gtk.org>
+
+ * glib.h: added GFloatIEEE754 and GDoubleIEEE754 unions to access sign,
+ mantissa and exponent of IEEE floats and doubles (required by the new
+ version of g_printf_string_upper_bound). the unions are endian specific,
+ we handle G_LITTLE_ENDIAN and G_BIG_ENDIAN as of currently. ieee floats
+ and doubles are supported (used for storage) by at least intel, ppc and
+ sparc, reference:
+ http://twister.ou.edu/workshop.docs/common-tools/numerical_comp_guide/ncg_math.doc.html
+
+Mon Oct 11 18:01:49 1999 Tim Janik <timj@gtk.org>
+
+ * configure.in: added additional checks to figure sizes of size_t,
+ ptrdiff_t and intmax_t (required by g_printf_string_upper_bound).
+
+Wed Oct 6 12:44:23 PDT 1999 Manish Singh <yosh@gimp.org>
+
+ * configure.in: blah. use G_WITH_CYGWIN instead of G_HAVE_CYGWIN
+
+1999-10-05 Tor Lillqvist <tml@iki.fi>
+
+ * glib.h: (Win32) Drop the mapping of POSIX function names to the
+ underscored versions, it's unnecessary after all. With MSVC we get
+ them from oldnames.lib, with gcc-2.95 and mingw32 from
+ -lmoldname-msvc. Add comment about what headers to include for
+ prototypes.
+
+ * glibconfig.h.win32.in: Don't define WIN32 and NATIVE_WIN32.
+
+ * gerror.c (g_on_error_query): (Win32) Slightly increased verbosity.
+
+ * build-dll: Don't strip.
+
+ * tests/string-test.c tests/dirname-test.c: Use G_OS_WIN32.
+
+ * glib.def: Add g_thread_use_default_impl.
+
+Sun Oct 3 19:46:55 PDT 1999 Manish Singh <yosh@gimp.org>
+
+ * configure.in: use G_HAVE_CYGWIN instead of G_OS_FEATURE_CYGWIN
+
+Sun Oct 3 19:25:42 PDT 1999 Manish Singh <yosh@gimp.org>
+
+ * acconfig.h
+ * configure.in
+ * glibconfig.h.win32: G_OS_FOO #defines. I *think* I got the cygwin
+ and beos stuff right, but I haven't tested it. The respective
+ porters should fix any screwups
+
+ * glib.h
+ * gerror.c
+ * gmain.c
+ * gmessages.c
+ * gscanner.c
+ * gthread.c
+ * gtimer.c
+ * gutils.c
+ * testglib.c: use G_OS stuff
+
+Wed Sep 22 01:53:18 1999 Tim Janik <timj@gtk.org>
+
+ * glib.h (NULL): define NULL as (0L) if __cplusplus is defined, to
+ avoid "ANSI C++ forbids implicit conversion from `void *' in argument
+ passing" errors upon NULL usage in C++ programs (gcc-2.95 is on crack
+ for erroring out on this, instead of just issueing a warning).
+
+ * glib.h (g_trash_stack_pop): use uncasted NULL again.
+
+Fri Sep 17 10:24:45 1999 Tim Janik <timj@gtk.org>
+
+ * gmem.c (g_mem_chunk_compute_size) (g_mem_chunk_new): applied patch
+ from Soeren Sandmann <sandmann@daimi.au.dk>, to force mem chunk's area
+ sizes to be a multitiple of atom_size, and to eliminate the MAX_MEM_AREA
+ restriction of 65536 bytes. we also catch cases where users pass an area
+ size < atom size with a return_if_fail statement now (which is ok,
+ because previously this lead to memory corruption anyways).
+
+Thu Sep 16 13:19:54 1999 Tim Janik <timj@gtk.org>
+
+ * glib.h (g_trash_stack_pop): add explicit (GTrashStack*) cast for NULL
+ pointer to cure ANSI C++ error.
+
+Mon Sep 13 23:25:59 1999 Tim Janik <timj@gtk.org>
+
+ * gmessages.c (g_logv): in case we have to abort the program,
+ debugging is enabled and we are not called recursively, try
+ to abort with raise (SIGTRAP) first, so developers may ignore
+ certain failure conditions during debugging stage.
+
+Thu Aug 26 15:09:36 1999 Tim Janik <timj@gtk.org>
+
+ * Makefile.am:
+ * gmodule/Makefile.am:
+ * gthread/Makefile.am: added --export-dynamic so we can load dynmic
+ modules, (required, according to the libtool 1.3.3 docu).
+
+1999-07-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
+
+ * grand.c (g_rand_new): Use /dev/urandom, as it doesn't block,
+ which /dev/random might do. Do not XOR the time, when getting the
+ seed form /dev/urandom, as this is good itself. Prevent the
+ initial seed from being zero, which causes the PRNG to produce
+ only zeros. Hints from Colin Plumb <colin@pgp.com>.
+
+1999-08-17 Tor Lillqvist <tml@iki.fi>
+
+ * glib.h (g_trash_stack_push): Add a cast.
+
+ * gslist.c
+ * glist.c: Make the inline functions static inline, and add
+ separate extern wrappers. Not all compilers produce callable entry
+ points for inline functions, even if gcc does.
+
+Sun Aug 15 02:47:14 1999 Tim Janik <timj@gtk.org>
+
+ * glib.h (g_trash_stack_pop): eliminate memset() call, since string.h
+ has not neccessarily been included prior to glib.h.
+
+Mon Aug 2 21:03:10 1999 Tim Janik <timj@gtk.org>
+
+ * configure.in: added --enable-msg-prefix option.
+
+ * gmessages.c (g_log_default_handler): feature "prg_name (pid:%u): "
+ if --enable-msg-prefix was selected (use "(process:%u): " if
+ g_get_prgname () returns NULL, along the lines of g_on_error_query).
+
+1999-08-03 Tor Lillqvist <tml@iki.fi>
+
+ * glib.h
+ * gstrfuncs.c
+ * tests/strfunc-test.c: Rename g_strccpy to g_strcompress and
+ g_strecpy to g_strescape per Tim Janik's suggestion. Dropped the
+ destination parameter, always g_malloc a new string. Fix bug in
+ g_strcompress, octal digits were gobbled up without limit, should
+ use max three.
+
+ Sources that use g_strescape must have ifdefs to be compilable
+ both with GLib 1.2 and 1.3.
+
Sat Jul 31 17:52:03 PDT 1999 Manish Singh <yosh@gimp.org>
* glib.h