[evolution-data-server] Fix few memory leaks
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution-data-server] Fix few memory leaks
- Date: Tue, 6 Jun 2017 12:57:53 +0000 (UTC)
commit c216395a624e94c612c8fce64e26723ac93d700a
Author: Milan Crha <mcrha redhat com>
Date: Tue Jun 6 14:56:41 2017 +0200
Fix few memory leaks
.../backends/webdav/e-book-backend-webdav.c | 3 +++
.../backends/caldav/e-cal-backend-caldav.c | 3 +++
src/libedataserver/e-xml-utils.c | 4 ++++
3 files changed, 10 insertions(+), 0 deletions(-)
---
diff --git a/src/addressbook/backends/webdav/e-book-backend-webdav.c
b/src/addressbook/backends/webdav/e-book-backend-webdav.c
index f02eb93..79593f2 100644
--- a/src/addressbook/backends/webdav/e-book-backend-webdav.c
+++ b/src/addressbook/backends/webdav/e-book-backend-webdav.c
@@ -215,13 +215,16 @@ ebb_webdav_connect_sync (EBookMetaBackend *meta_backend,
if (g_error_matches (local_error, SOUP_HTTP_ERROR, SOUP_STATUS_CANCELLED)) {
local_error->domain = G_IO_ERROR;
local_error->code = G_IO_ERROR_CANCELLED;
+ g_propagate_error (error, local_error);
} else if (g_error_matches (local_error, SOUP_HTTP_ERROR, SOUP_STATUS_FORBIDDEN) &&
credentials_empty) {
*out_auth_result = E_SOURCE_AUTHENTICATION_REQUIRED;
+ g_clear_error (&local_error);
} else if (g_error_matches (local_error, SOUP_HTTP_ERROR, SOUP_STATUS_UNAUTHORIZED)) {
if (credentials_empty)
*out_auth_result = E_SOURCE_AUTHENTICATION_REQUIRED;
else
*out_auth_result = E_SOURCE_AUTHENTICATION_REJECTED;
+ g_clear_error (&local_error);
} else if (local_error) {
g_propagate_error (error, local_error);
local_error = NULL;
diff --git a/src/calendar/backends/caldav/e-cal-backend-caldav.c
b/src/calendar/backends/caldav/e-cal-backend-caldav.c
index 3300542..0421143 100644
--- a/src/calendar/backends/caldav/e-cal-backend-caldav.c
+++ b/src/calendar/backends/caldav/e-cal-backend-caldav.c
@@ -183,13 +183,16 @@ ecb_caldav_connect_sync (ECalMetaBackend *meta_backend,
if (g_error_matches (local_error, SOUP_HTTP_ERROR, SOUP_STATUS_CANCELLED)) {
local_error->domain = G_IO_ERROR;
local_error->code = G_IO_ERROR_CANCELLED;
+ g_propagate_error (error, local_error);
} else if (g_error_matches (local_error, SOUP_HTTP_ERROR, SOUP_STATUS_FORBIDDEN) &&
credentials_empty) {
*out_auth_result = E_SOURCE_AUTHENTICATION_REQUIRED;
+ g_clear_error (&local_error);
} else if (g_error_matches (local_error, SOUP_HTTP_ERROR, SOUP_STATUS_UNAUTHORIZED)) {
if (credentials_empty)
*out_auth_result = E_SOURCE_AUTHENTICATION_REQUIRED;
else
*out_auth_result = E_SOURCE_AUTHENTICATION_REJECTED;
+ g_clear_error (&local_error);
} else if (local_error) {
g_propagate_error (error, local_error);
local_error = NULL;
diff --git a/src/libedataserver/e-xml-utils.c b/src/libedataserver/e-xml-utils.c
index 9aa5b5f..c36b74b 100644
--- a/src/libedataserver/e-xml-utils.c
+++ b/src/libedataserver/e-xml-utils.c
@@ -392,6 +392,8 @@ e_xml_xpath_eval_as_string (xmlXPathContext *xpath_ctx,
}
object = e_xml_xpath_eval (xpath_ctx, "%s", expr);
+ g_free (expr);
+
if (!object)
return NULL;
@@ -435,6 +437,8 @@ e_xml_xpath_eval_exists (xmlXPathContext *xpath_ctx,
va_end (va);
object = e_xml_xpath_eval (xpath_ctx, "%s", expr);
+ g_free (expr);
+
if (!object)
return FALSE;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]