2004-01-30 Chris Toshok <toshok@ximian.com>
* libedata-book/e-book-backend.c (e_book_backend_remove_client):
add ref/unref around this function body so that we don't get
unreffed by something below last_client_gone.
+2004-01-30 Chris Toshok <toshok@ximian.com>
+
+ * libedata-book/e-book-backend.c (e_book_backend_remove_client):
+ add ref/unref around this function body so that we don't get
+ unreffed by something below last_client_gone.
+
2004-01-29 Chris Toshok <toshok@ximian.com>
* libedata-book/ximian-vcard.h (XIMIAN_VCARD): update for new
g_return_if_fail (E_IS_BOOK_BACKEND (backend));
g_return_if_fail (E_IS_DATA_BOOK (book));
+ /* up our backend's refcount here so that last_client_gone
+ doesn't end up unreffing us (while we're holding the
+ lock) */
+ g_object_ref (backend);
+
/* Disconnect */
g_mutex_lock (backend->priv->clients_mutex);
backend->priv->clients = g_list_remove (backend->priv->clients, book);
last_client_gone (backend);
g_mutex_unlock (backend->priv->clients_mutex);
+
+ g_object_unref (backend);
}
char *