[gegl] gegl: don't crash if an XML file contains a bogus enum value



commit b3a510f7152158008596fa48e142885c9a11544f
Author: Michael Natterer <mitch gimp org>
Date:   Sat May 24 18:10:48 2014 +0200

    gegl: don't crash if an XML file contains a bogus enum value

 gegl/gegl-xml.c |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)
---
diff --git a/gegl/gegl-xml.c b/gegl/gegl-xml.c
index 3acfbca..85a4b43 100644
--- a/gegl/gegl-xml.c
+++ b/gegl/gegl-xml.c
@@ -181,7 +181,17 @@ set_clone_prop_as_well:
         {
           GEnumClass *eclass = g_type_class_peek (paramspec->value_type);
           GEnumValue *evalue = g_enum_get_value_by_nick (eclass, param_value);
-          gegl_node_set (new, param_name, evalue->value, NULL);
+          if (evalue)
+            {
+              gegl_node_set (new, param_name, evalue->value, NULL);
+            }
+          else
+            {
+              g_printerr ("gegl-xml (param_set %s): enum %s has no value '%s'\n",
+                          paramspec->name,
+                          g_type_name (paramspec->value_type),
+                          param_value);
+            }
         }
       else if (paramspec->value_type == GEGL_TYPE_COLOR)
         {


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