[librsvg] gitlab#179 - rsvg_filter_primitive_free(): Check the GStrings for NULL before freeing them



commit 29f1d9a71fb2a0968b19e6d0b9afb6fe140a9cda
Author: Federico Mena Quintero <federico gnome org>
Date:   Mon Jan 8 13:50:49 2018 -0600

    gitlab#179 - rsvg_filter_primitive_free(): Check the GStrings for NULL before freeing them
    
    rsvg_new_filter_primitive_merge_node() reuses a plain
    RsvgFilterPrimitive struct and doesn't set ->result.  Allow for this
    general behavior in the destructor.
    
    https://gitlab.gnome.org/GNOME/librsvg/issues/179

 rsvg-filter.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)
---
diff --git a/rsvg-filter.c b/rsvg-filter.c
index 0773fce..0434285 100644
--- a/rsvg-filter.c
+++ b/rsvg-filter.c
@@ -103,8 +103,13 @@ rsvg_filter_primitive_free (gpointer impl)
 {
     RsvgFilterPrimitive *primitive = impl;
 
-    g_string_free (primitive->in, TRUE);
-    g_string_free (primitive->result, TRUE);
+    if (primitive->in) {
+        g_string_free (primitive->in, TRUE);
+    }
+
+    if (primitive->result) {
+        g_string_free (primitive->result, TRUE);
+    }
 
     g_free (primitive);
 }


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