aboutsummaryrefslogtreecommitdiffstats
path: root/addressbook/backend
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2001-07-25 02:13:14 +0800
committerDan Winship <danw@src.gnome.org>2001-07-25 02:13:14 +0800
commit0a9ba272a22ed1a8d4521321a7f8fc95042e6253 (patch)
treea677844bce80691b3199d06733110388584b651b /addressbook/backend
parent2a50df3b9536ea58ab270def25b025aff12828bc (diff)
downloadgsoc2013-evolution-0a9ba272a22ed1a8d4521321a7f8fc95042e6253.tar.gz
gsoc2013-evolution-0a9ba272a22ed1a8d4521321a7f8fc95042e6253.tar.zst
gsoc2013-evolution-0a9ba272a22ed1a8d4521321a7f8fc95042e6253.zip
Don't stop the idle_queue and unref from here, since this might be called
* backend/ebook/e-book-listener.c (e_book_listener_stop): Don't stop the idle_queue and unref from here, since this might be called from inside e_book_listener_check_queue, and we don't want to return to that function with the listener having been destroyed. (e_book_listener_check_queue): Don't exit early if the queue is stopped. Proceed through the check if the queue is NULL (which is must be if the queue is stopped), and then reach the existing code to remove the idle handler. Combined with the above, this fixes ximian #4485 (again). This is not a plot to boost my showstopper-bugfixing count by fixing the same bug over and over again. svn path=/trunk/; revision=11346
Diffstat (limited to 'addressbook/backend')
-rw-r--r--addressbook/backend/ebook/e-book-listener.c11
1 files changed, 0 insertions, 11 deletions
diff --git a/addressbook/backend/ebook/e-book-listener.c b/addressbook/backend/ebook/e-book-listener.c
index 87ea5f874f..285c6646b2 100644
--- a/addressbook/backend/ebook/e-book-listener.c
+++ b/addressbook/backend/ebook/e-book-listener.c
@@ -35,11 +35,6 @@ struct _EBookListenerPrivate {
static gboolean
e_book_listener_check_queue (EBookListener *listener)
{
- if (listener->priv->stopped) {
- listener->priv->idle_id = 0;
- return FALSE;
- }
-
if (listener->priv->response_queue != NULL) {
gtk_signal_emit (GTK_OBJECT (listener),
e_book_listener_signals [RESPONSES_QUEUED]);
@@ -678,12 +673,6 @@ e_book_listener_stop (EBookListener *listener)
g_list_free (listener->priv->response_queue);
listener->priv->response_queue = NULL;
- if (listener->priv->idle_id) {
- g_source_remove (listener->priv->idle_id);
- listener->priv->idle_id = 0;
- bonobo_object_unref (BONOBO_OBJECT (listener));
- }
-
listener->priv->stopped = TRUE;
}