diff options
author | Owen Taylor <otaylor@redhat.com> | 1998-12-15 07:32:11 +0000 |
---|---|---|
committer | Owen Taylor <otaylor@src.gnome.org> | 1998-12-15 07:32:11 +0000 |
commit | a0c84d6818f278d273b43c651c345f2110bc7f37 (patch) | |
tree | cb07d50ab001a4538983c1d0421bcd69d9618cbf /gtk/gtkselection.c | |
parent | 58475f05a54f7a165fe92adf8358f59cf0223c08 (diff) | |
download | gdk-pixbuf-a0c84d6818f278d273b43c651c345f2110bc7f37.tar.gz |
Commented out testthreads from the build process, since we won't have any
Tue Dec 15 01:38:53 1998 Owen Taylor <otaylor@redhat.com>
* gtk/Makefile.am: Commented out testthreads from
the build process, since we won't have any idea
how to create a thread.
* configure.in (LIBS): use glib-config ... gthread
so we always build a thread-compatible library.
* gtk/gtkaccellabel.c gtk/gtkclist.c gtk/gtkcolorsel.c
gtk/gtkcombo.c gtk/gtkcontainer.c gtk/gtkentry.c
gtk/gtklist.c gtk/gtkmenuitem.c gtk/gtknotebook.c
gtk/gtkrange.c gtk/gtkselection.c gtk/gtkspinbutton.c
gtk/gtktext.c gtk/gtktooltips.c gtk/gtkwidget.c:
Add GTK_THREADS_ENTER/LEAVE pairs around timeouts
and idles to account for the fact that they are no
longer called within the GTK+ lock.
* gtk/gtkprivate.h: Added definitions for locking
the main GTK+ mutex.
* gtk/gtkmain.c: Re-implement the main loop
in terms of the GLib main loop.
* gdk/gdk.h gdk/gdkthreads.c gdk/Makefile.am: Removed threading
functionality, as it seems better to subsume GDK within the
GTK+ lock than vice-versa.
* gdk/gdkevents.c: New file, containing event handling bits
from gdk.c.
* gdk/gdkevents.c: Implement event source for GDK
events.
* configure.in gdk/gdkevents.c: Removed attempts to
subtract base_id, which were already non-functional.
Diffstat (limited to 'gtk/gtkselection.c')
-rw-r--r-- | gtk/gtkselection.c | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/gtk/gtkselection.c b/gtk/gtkselection.c index d9dc09b6f..0b4ea6fa4 100644 --- a/gtk/gtkselection.c +++ b/gtk/gtkselection.c @@ -49,6 +49,7 @@ #include <gdk/gdkx.h> /* we need this for gdk_window_lookup() */ #include "gtkmain.h" +#include "gtkprivate.h" #include "gtkselection.h" #include "gtksignal.h" @@ -1089,6 +1090,9 @@ static gint gtk_selection_incr_timeout (GtkIncrInfo *info) { GList *tmp_list; + gboolean retval; + + GTK_THREADS_ENTER; /* Determine if retrieval has finished by checking if it still in list of pending retrievals */ @@ -1116,14 +1120,18 @@ gtk_selection_incr_timeout (GtkIncrInfo *info) g_free (info); - return FALSE; /* remove timeout */ + retval = FALSE; /* remove timeout */ } else { info->idle_time++; - return TRUE; /* timeout will happen again */ + retval = TRUE; /* timeout will happen again */ } + + GTK_THREADS_LEAVE; + + return retval; } /************************************************************* @@ -1324,6 +1332,9 @@ static gint gtk_selection_retrieval_timeout (GtkRetrievalInfo *info) { GList *tmp_list; + gboolean retval; + + GTK_THREADS_ENTER; /* Determine if retrieval has finished by checking if it still in list of pending retrievals */ @@ -1349,15 +1360,18 @@ gtk_selection_retrieval_timeout (GtkRetrievalInfo *info) g_free (info->buffer); g_free (info); - return FALSE; /* remove timeout */ + retval = FALSE; /* remove timeout */ } else { info->idle_time++; - return TRUE; /* timeout will happen again */ + retval = TRUE; /* timeout will happen again */ } - + + GTK_THREADS_LEAVE; + + return retval; } /************************************************************* |