From c0c2e3fbdad5f8e3bac4ef7a5ec01dd51b902aea Mon Sep 17 00:00:00 2001 From: Dan Winship Date: Mon, 23 Jul 2001 17:52:53 +0000 Subject: Re-fix for my 07-18 not-quite-fix. * backend/ebook/e-book-listener.c: Add a "stopped" flag like EBookViewListener. (e_book_listener_check_queue): Don't emit signals if the listener is stopped. (e_book_listener_queue_generic_response, etc): Don't queue responses if the listener is stopped. (e_book_listener_stop): Flush the queue and stop queue/emitting further responses. * backend/ebook/e-book.c (e_book_unload_uri): Revert the previous change and call e_book_listener_stop() instead. * backend/ebook/e-book-view-listener.c (e_book_view_listener_stop): When removing an idle handler, unref the listener as well, since e_book_view_listener_queue_response will have ref'ed it. svn path=/trunk/; revision=11306 --- addressbook/backend/ebook/e-book.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'addressbook/backend/ebook/e-book.c') diff --git a/addressbook/backend/ebook/e-book.c b/addressbook/backend/ebook/e-book.c index 3bd13ea4ff..73b39b6c46 100644 --- a/addressbook/backend/ebook/e-book.c +++ b/addressbook/backend/ebook/e-book.c @@ -531,7 +531,6 @@ void e_book_unload_uri (EBook *book) { CORBA_Environment ev; - EBookListenerResponse *resp; g_return_if_fail (book != NULL); g_return_if_fail (E_IS_BOOK (book)); @@ -559,8 +558,7 @@ e_book_unload_uri (EBook *book) CORBA_exception_free (&ev); - while ((resp = e_book_listener_pop_response (book->priv->listener))) - g_free (resp); + e_book_listener_stop (book->priv->listener); bonobo_object_unref (BONOBO_OBJECT (book->priv->listener)); book->priv->listener = NULL; -- cgit v1.2.3