diff options
-rw-r--r-- | addressbook/ChangeLog | 12 | ||||
-rw-r--r-- | addressbook/backend/pas/pas-backend-ldap.c | 4 |
2 files changed, 12 insertions, 4 deletions
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 <toshok@ximian.com> + + * 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 <toshok@ximian.com> [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; |