summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2004-02-06 14:35:31 +0000
committerDan Winship <danw@src.gnome.org>2004-02-06 14:35:31 +0000
commit331f33d78642f19d06d02aa4af277ce016d1242d (patch)
treedf343f8abc3e24faa79791b7debd4fd89d4fea9f
parent9139f7656888a25a53b0700181b09922a40e9f9d (diff)
downloadlibsoup-331f33d78642f19d06d02aa4af277ce016d1242d.tar.gz
Ref the filter when adding it. (soup_session_remove_filter): And unref it
* libsoup/soup-session.c (soup_session_add_filter): Ref the filter when adding it. (soup_session_remove_filter): And unref it here (we were already unreffing it in dispose().)
-rw-r--r--ChangeLog7
-rw-r--r--libsoup/soup-session.c2
2 files changed, 9 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 287376e9..ba11a8ea 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2004-02-05 Dan Winship <danw@ximian.com>
+
+ * libsoup/soup-session.c (soup_session_add_filter): Ref the filter
+ when adding it.
+ (soup_session_remove_filter): And unref it here (we were already
+ unreffing it in dispose().)
+
2004-02-05 Joe Shaw <joe@ximian.com>
* libsoup/soup-dns.c (soup_dns_entry_unref): Don't try to free the
diff --git a/libsoup/soup-session.c b/libsoup/soup-session.c
index b6b41272..ded3cde8 100644
--- a/libsoup/soup-session.c
+++ b/libsoup/soup-session.c
@@ -387,6 +387,7 @@ soup_session_add_filter (SoupSession *session, SoupMessageFilter *filter)
g_return_if_fail (SOUP_IS_SESSION (session));
g_return_if_fail (SOUP_IS_MESSAGE_FILTER (filter));
+ g_object_ref (filter);
session->priv->filters = g_slist_prepend (session->priv->filters,
filter);
}
@@ -406,6 +407,7 @@ soup_session_remove_filter (SoupSession *session, SoupMessageFilter *filter)
session->priv->filters = g_slist_remove (session->priv->filters,
filter);
+ g_object_unref (filter);
}