[evolution-data-server] Fix various memory leaks



commit fd827f48cd9b307534daf0567fd277a079c4b7db
Author: Milan Crha <mcrha redhat com>
Date:   Tue Apr 21 21:02:33 2015 +0200

    Fix various memory leaks

 calendar/backends/file/e-cal-backend-file.c |   10 +++++++---
 calendar/backends/http/e-cal-backend-http.c |    2 +-
 2 files changed, 8 insertions(+), 4 deletions(-)
---
diff --git a/calendar/backends/file/e-cal-backend-file.c b/calendar/backends/file/e-cal-backend-file.c
index d60d07f..9e3511d 100644
--- a/calendar/backends/file/e-cal-backend-file.c
+++ b/calendar/backends/file/e-cal-backend-file.c
@@ -646,9 +646,11 @@ add_component_to_intervaltree (ECalBackendFile *cbfile,
                resolve_tzid, priv->icalcomp, icaltimezone_get_utc_timezone (),
                e_cal_backend_get_kind (E_CAL_BACKEND (cbfile)));
 
-       if (time_end != -1 && time_start > time_end)
-               g_print ("Bogus component %s\n", e_cal_component_get_as_string (comp));
-       else
+       if (time_end != -1 && time_start > time_end) {
+               gchar *str = e_cal_component_get_as_string (comp);
+               g_print ("Bogus component %s\n", str);
+               g_free (str);
+       } else
                e_intervaltree_insert (priv->interval_tree, time_start, time_end, comp);
 
        return FALSE;
@@ -1066,8 +1068,10 @@ free_refresh_data (ECalBackendFile *cbfile)
                g_cond_wait (priv->refresh_gone_cond, &priv->refresh_lock);
 
                g_cond_clear (priv->refresh_cond);
+               g_free (priv->refresh_cond);
                priv->refresh_cond = NULL;
                g_cond_clear (priv->refresh_gone_cond);
+               g_free (priv->refresh_gone_cond);
                priv->refresh_gone_cond = NULL;
        }
 
diff --git a/calendar/backends/http/e-cal-backend-http.c b/calendar/backends/http/e-cal-backend-http.c
index 65d8544..5110d9a 100644
--- a/calendar/backends/http/e-cal-backend-http.c
+++ b/calendar/backends/http/e-cal-backend-http.c
@@ -997,7 +997,7 @@ e_cal_backend_http_open (ECalBackendSync *backend,
                g_free (certificate_pem);
 
                if (local_error != NULL)
-                       g_propagate_error (perror, g_error_copy (local_error));
+                       g_propagate_error (perror, local_error);
        }
 
        if (opened) {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]