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/.
branch. See the ChangeLog for details of the changes.
In brief overview:
- The set of threading functions can be set
- A default implementation is provided in -lgthread
- All static data structures are locked using these
functions if g_thread_init() is called.
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 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.
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.
Mon Sep 21 01:54:48 1998 Tim Janik <timj@gtk.org>
* gmodule.h:
* gmodule.c: renamed old _de_init functionality to _unload.
modules are now expected to export:
G_MODULE_EXPORT const gchar* g_module_check_init (GModule *module);
and
G_MODULE_EXPORT void g_module_unload (GModule *module);
returning a string other than NULL from g_module_check_init() will
prevent the module from being loaded. a call to g_module_make_resident()
from g_module_unload() will prevent the module from being unloaded and
still make it resident.
nothing will break.
* 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).
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...