[rygel] core: Fix small memory leak with XPath use



commit 7b55bad1a92e253b56c5fe912ef52abef23755e5
Author: Jens Georg <mail jensge org>
Date:   Tue Feb 9 20:33:34 2016 +0100

    core: Fix small memory leak with XPath use
    
    Signed-off-by: Jens Georg <mail jensge org>

 src/librygel-core/rygel-description-file.vala |   13 ++++++++++---
 1 files changed, 10 insertions(+), 3 deletions(-)
---
diff --git a/src/librygel-core/rygel-description-file.vala b/src/librygel-core/rygel-description-file.vala
index adcee0b..eb1a917 100644
--- a/src/librygel-core/rygel-description-file.vala
+++ b/src/librygel-core/rygel-description-file.vala
@@ -318,7 +318,10 @@ public class Rygel.DescriptionFile : Object {
         // Check if the X_DLNADOC node has already dev_cap
         // dlnadoc_xpath checks for a X_DLNADOC element that contains a
         // capablity. We can return if that's the case.
-        if (this.apply_xpath (dlnadoc_xpath, null)) {
+        Xml.XPath.Object *tmp;
+        if (this.apply_xpath (dlnadoc_xpath, out tmp)) {
+            delete tmp;
+
             return;
         }
 
@@ -385,8 +388,12 @@ public class Rygel.DescriptionFile : Object {
         var retval = result != null &&
                      result->type == XPath.ObjectType.NODESET &&
                      !result->nodesetval->is_empty ();
-
-        xpo = result;
+        if (!retval && result != null) {
+            xpo = null;
+            delete result;
+        } else {
+            xpo = result;
+        }
 
         return retval;
     }


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