isl_map_align_divs: fix error handling
authorSven Verdoolaege <skimo@kotnet.org>
Thu, 6 Jun 2013 12:03:41 +0000 (14:03 +0200)
committerSven Verdoolaege <skimo@kotnet.org>
Thu, 6 Jun 2013 12:03:41 +0000 (14:03 +0200)
Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
isl_map.c

index 9f201e8..bbb86d8 100644 (file)
--- a/isl_map.c
+++ b/isl_map.c
@@ -7714,8 +7714,11 @@ struct isl_map *isl_map_align_divs(struct isl_map *map)
 
        for (i = 1; i < map->n; ++i)
                map->p[0] = isl_basic_map_align_divs(map->p[0], map->p[i]);
-       for (i = 1; i < map->n; ++i)
+       for (i = 1; i < map->n; ++i) {
                map->p[i] = isl_basic_map_align_divs(map->p[i], map->p[0]);
+               if (!map->p[i])
+                       return isl_map_free(map);
+       }
 
        ISL_F_CLR(map, ISL_MAP_NORMALIZED);
        return map;