[gnome-builder/wip/chergert/clang] fixit: ensure there is a valid range



commit 89d9d81a322ccacb1a096ce3117a2c35fb60ce95
Author: Christian Hergert <chergert redhat com>
Date:   Wed Apr 25 01:52:45 2018 -0700

    fixit: ensure there is a valid range

 src/libide/diagnostics/ide-fixit.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)
---
diff --git a/src/libide/diagnostics/ide-fixit.c b/src/libide/diagnostics/ide-fixit.c
index ab871d7ec..518a17363 100644
--- a/src/libide/diagnostics/ide-fixit.c
+++ b/src/libide/diagnostics/ide-fixit.c
@@ -170,9 +170,9 @@ ide_fixit_new_from_variant (GVariant *variant)
   g_autoptr(GVariant) unboxed = NULL;
   g_autoptr(GVariant) vrange = NULL;
   GVariantDict dict;
-  IdeSourceRange *range;
+  IdeSourceRange *range = NULL;
   const gchar *text;
-  IdeFixit *self;
+  IdeFixit *self = NULL;
 
   if (variant == NULL)
     return NULL;
@@ -186,10 +186,15 @@ ide_fixit_new_from_variant (GVariant *variant)
     text = "";
 
   if ((vrange = g_variant_dict_lookup_value (&dict, "range", NULL)))
-    range = ide_source_range_new_from_variant (vrange);
+    {
+      if (!(range = ide_source_range_new_from_variant (vrange)))
+        goto failed;
+    }
 
   self = ide_fixit_new (range, text);
 
+failed:
+
   g_variant_dict_clear (&dict);
 
   return self;


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