isl_map_simplify.c: remove_duplicate_divs: avoid NULL pointer dereference
[platform/upstream/isl.git] / isl_name.c
index 2ef6cbe..8e902db 100644 (file)
@@ -1,3 +1,12 @@
+/*
+ * Copyright 2008-2009 Katholieke Universiteit Leuven
+ *
+ * Use of this software is governed by the GNU LGPLv2.1 license
+ *
+ * Written by Sven Verdoolaege, K.U.Leuven, Departement
+ * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
+ */
+
 #include <string.h>
 #include "isl_name.h"
 
@@ -10,12 +19,15 @@ struct isl_name *isl_name_alloc(struct isl_ctx *ctx, const char *s)
                return NULL;
        name = isl_alloc_type(ctx, struct isl_name);
        if (!name)
-               return NULL;
+               goto error;
 
        name->ref = 1;
        name->name = copy;
 
        return name;
+error:
+       free((char *)copy);
+       return NULL;
 }
 
 static int isl_name_has_name(const void *entry, const void *val)