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
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>
* 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.
1998-12-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in (have_threads): Changed the last pthread_cond_init
to pthread_attr_init.
1998-12-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* testgthread.c (new_thread): As a joinable thread seems to be the
default on posix, leave the explicit setting out, as it causes
problems on some older platforms.
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 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)
* gthread-posix.c: use g_free in mutex_free (from Tim Janik)
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.
Thu Dec 17 03:38:57 1998 Tim Janik <timj@gtk.org>
* Makefile.am: -DG_LOG_DOMAIN="GThread", we don't need an extern
variable for that (noticed by Joel Becker <jlbec@ocala.cs.miami.edu>)
1998-12-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* 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/.
* Added threading support
- The ability to specify a set of functions to be used for
locking at runtime.
- Default implementations of locking functions for pthreads,
Solaris threads, and (experimentally) NSPR.
- All static variables should now properly locked.
- Enhancements to the generic main-loop mechanism to be thread-safe.
(It is used for the main-loop in GTK+ as of GTK+-1.1.8)
* Portability fixes.
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
-fstack-check generates non-working code for at least a few compilers
(egcs 1.1 included) and the benefits are dubious (your program is going to
crash anyways if you run out of stack) so comment that out for now.
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 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* Makefile.am (EXTRA_DIST): updated.
* testgthread.c, gthread-*.c: Changed private to private_key to
avoid problems when compiling with under C++.
1998-12-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gthread-none.c:
s/g_mutex_functions_for_glib_use/g_thread_functions_for_glib_use/
* ChangeLog: from now on there is an extra ChangeLog for gthread
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)
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.
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
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.