[libgsf] gsf: plug leak.



commit 2f10f7f71d8566f688b47d887331b004a9c08886
Author: Morten Welinder <terra gnome org>
Date:   Sat Nov 15 10:57:22 2014 -0500

    gsf: plug leak.

 ChangeLog               |    4 ++++
 NEWS                    |    2 +-
 gsf/gsf-opendoc-utils.c |    3 ++-
 3 files changed, 7 insertions(+), 2 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index f1e3a91..0be117d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2014-11-15  Morten Welinder  <terra gnome org>
+
+       * gsf/gsf-opendoc-utils.c (od_meta_user_defined_end): Plug leak.
+
 2014-11-01  Morten Welinder  <terra gnome org>
 
        * gsf/gsf-msole-utils.c (gsf_msole_inflate): Don't place
diff --git a/NEWS b/NEWS
index 3bebd71..b3e8408 100644
--- a/NEWS
+++ b/NEWS
@@ -4,7 +4,7 @@ Allin Cottrell:
        * Add support for non-default zip compression level.  [#722470]
 
 Morten:
-       * Plug leak.
+       * Plug leaks.
        * Dead kittens.
        * Reduce number of CRITICALs for corrupted files.
 
diff --git a/gsf/gsf-opendoc-utils.c b/gsf/gsf-opendoc-utils.c
index 8555ddd..4e50178 100644
--- a/gsf/gsf-opendoc-utils.c
+++ b/gsf/gsf-opendoc-utils.c
@@ -327,7 +327,7 @@ od_meta_user_defined_end (GsfXMLIn *xin, G_GNUC_UNUSED GsfXMLBlob *blob)
                if (t == G_TYPE_NONE) t = G_TYPE_STRING;
                if (gsf_xml_gvalue_from_str (res, t, xin->content->str)) {
                        if (g_str_has_prefix (mi->name, "GSF_DOCPROP_VECTOR:")) {
-                               gchar *true_name = strchr (mi->name + 19, ':');
+                               const gchar *true_name = strchr (mi->name + 19, ':');
                                if (true_name != NULL && *(++true_name) != 0) {
                                        GsfDocProp *prop = gsf_doc_meta_data_lookup
                                                (mi->md, true_name);
@@ -341,6 +341,7 @@ od_meta_user_defined_end (GsfXMLIn *xin, G_GNUC_UNUSED GsfXMLBlob *blob)
                                                                          val_vector);
                                                g_value_unset (res);
                                                g_free (res);
+                                               g_object_unref (vector);
                                        } else {
                                                GValue const *old = gsf_doc_prop_get_val (prop);
                                                if (G_VALUE_HOLDS (old, GSF_DOCPROP_VECTOR_TYPE)) {


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