diff options
-rw-r--r-- | calendar/ChangeLog | 4 | ||||
-rw-r--r-- | calendar/cal-client/cal-query.c | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog index 722ed04711..f65572ecf9 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,5 +1,9 @@ 2002-09-24 Rodrigo Moya <rodrigo@ximian.com> + * cal-client/cal-query.c (cal_query_destroy): unref the query + since now the query object on the server keeps a copy of it and + must know when the listener is no longer valid. + * pcs/query.c (listener_died_cb): unref the QueryListener object. (query_construct): create an EComponentListener for the non-cached queries' listeners also. diff --git a/calendar/cal-client/cal-query.c b/calendar/cal-client/cal-query.c index 97e7b81240..e1bef97e3c 100644 --- a/calendar/cal-client/cal-query.c +++ b/calendar/cal-client/cal-query.c @@ -180,8 +180,9 @@ cal_query_destroy (GtkObject *object) query = CAL_QUERY (object); priv = query->priv; - /* The server unrefs the query listener, so we just NULL it out here */ + /* The server keeps a copy of the query listener, so we must unref it */ query_listener_stop_notification (priv->ql); + bonobo_object_unref (BONOBO_OBJECT (priv->ql)); priv->ql = NULL; if (priv->corba_query != CORBA_OBJECT_NIL) { |