From 8ad83fdce75b7d360d92bbd20175f4279faad19a Mon Sep 17 00:00:00 2001 From: Chris Toshok Date: Thu, 28 Feb 2002 21:51:17 +0000 Subject: don't ref the view here, since it keeps the view alive until the search is 2002-02-28 Chris Toshok * backend/pas/pas-backend-ldap.c (pas_backend_ldap_search): don't ref the view here, since it keeps the view alive until the search is over, which we don't want. we want the view's death to cancel the search. This speeds up starting new searches after one is already active (since switching searches actually creates a new book view and destroys the old one.) (ldap_search_dtor): remove the matching unref here. The unref as it was was incorrect anyway, and caused a crash (we needed search_op->view, not op->view.) svn path=/trunk/; revision=15877 --- addressbook/ChangeLog | 12 ++++++++++++ addressbook/backend/pas/pas-backend-ldap.c | 4 ---- 2 files changed, 12 insertions(+), 4 deletions(-) (limited to 'addressbook') diff --git a/addressbook/ChangeLog b/addressbook/ChangeLog index bae7938514..b80b2ab802 100644 --- a/addressbook/ChangeLog +++ b/addressbook/ChangeLog @@ -1,3 +1,15 @@ +2002-02-28 Chris Toshok + + * backend/pas/pas-backend-ldap.c (pas_backend_ldap_search): don't + ref the view here, since it keeps the view alive until the search + is over, which we don't want. we want the view's death to cancel + the search. This speeds up starting new searches after one is + already active (since switching searches actually creates a new + book view and destroys the old one.) + (ldap_search_dtor): remove the matching unref here. The unref as + it was was incorrect anyway, and caused a crash (we needed + search_op->view, not op->view.) + 2002-02-27 Chris Toshok [fixes bug #20690] diff --git a/addressbook/backend/pas/pas-backend-ldap.c b/addressbook/backend/pas/pas-backend-ldap.c index 3128b79104..6a98246257 100644 --- a/addressbook/backend/pas/pas-backend-ldap.c +++ b/addressbook/backend/pas/pas-backend-ldap.c @@ -2437,9 +2437,6 @@ ldap_search_dtor (PASBackend *backend, LDAPOp *op) { LDAPSearchOp *search_op = (LDAPSearchOp*) op; - if (op->view) - bonobo_object_release_unref(bonobo_object_corba_objref(BONOBO_OBJECT(op->view)), NULL); - g_free (search_op->ldap_query); g_free (search_op); } @@ -2451,7 +2448,6 @@ pas_backend_ldap_search (PASBackendLDAP *bl, { LDAPSearchOp *op = g_new (LDAPSearchOp, 1); - bonobo_object_dup_ref(bonobo_object_corba_objref(BONOBO_OBJECT(view->book_view)), NULL); ldap_op_init ((LDAPOp*)op, PAS_BACKEND(bl), book, view->book_view, ldap_search_handler, ldap_search_dtor); op->ldap_query = NULL; -- cgit