[evolution-data-server] Fix a reference leak from e-webdav-discover
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution-data-server] Fix a reference leak from e-webdav-discover
- Date: Wed, 23 Sep 2015 17:06:56 +0000 (UTC)
commit aebcdc9869b8b53d5f6cfb983b7a35d969cb569e
Author: Milan Crha <mcrha redhat com>
Date: Wed Sep 23 19:05:11 2015 +0200
Fix a reference leak from e-webdav-discover
The SoupMessage was never freed, which also holds a reference
on an ESource, through e_soup_ssl_trust_connect(), thus leaking
two objects at once.
libedataserver/e-webdav-discover.c | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)
---
diff --git a/libedataserver/e-webdav-discover.c b/libedataserver/e-webdav-discover.c
index 5ff6b35..35a1b2f 100644
--- a/libedataserver/e-webdav-discover.c
+++ b/libedataserver/e-webdav-discover.c
@@ -859,8 +859,10 @@ e_webdav_discover_get_calendar_collection_details (SoupSession *session,
soup_uri_free (soup_uri);
doc = e_webdav_discover_parse_xml (message, "multistatus", out_certificate_pem,
out_certificate_errors, error);
- if (!doc)
+ if (!doc) {
+ g_clear_object (&message);
return FALSE;
+ }
xp_ctx = xmlXPathNewContext (doc);
xmlXPathRegisterNs (xp_ctx, XC ("D"), XC (NS_WEBDAV));
@@ -888,6 +890,8 @@ e_webdav_discover_get_calendar_collection_details (SoupSession *session,
xmlXPathFreeContext (xp_ctx);
xmlFreeDoc (doc);
+ g_clear_object (&message);
+
return TRUE;
}
@@ -1256,8 +1260,10 @@ e_webdav_discover_get_addressbook_collection_details (SoupSession *session,
soup_uri_free (soup_uri);
doc = e_webdav_discover_parse_xml (message, "multistatus", out_certificate_pem,
out_certificate_errors, error);
- if (!doc)
+ if (!doc) {
+ g_clear_object (&message);
return FALSE;
+ }
xp_ctx = xmlXPathNewContext (doc);
xmlXPathRegisterNs (xp_ctx, XC ("D"), XC (NS_WEBDAV));
@@ -1285,6 +1291,8 @@ e_webdav_discover_get_addressbook_collection_details (SoupSession *session,
xmlXPathFreeContext (xp_ctx);
xmlFreeDoc (doc);
+ g_clear_object (&message);
+
return TRUE;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]