isl_map_align_divs: fix error handling
[platform/upstream/isl.git] / isl_vertices.c
index 5147293..cd8f463 100644 (file)
@@ -101,7 +101,7 @@ static __isl_give isl_vertices *vertices_from_list(__isl_keep isl_basic_set *bse
 
        return vertices;
 error:
-       free(vertices);
+       isl_vertices_free(vertices);
        free_vertex_list(list);
        return NULL;
 }
@@ -495,6 +495,7 @@ __isl_give isl_vertices *isl_basic_set_compute_vertices(
 
        return vertices;
 error:
+       free_vertex_list(list);
        isl_mat_free(facets);
        free(selection);
        free(snap);
@@ -878,6 +879,8 @@ static __isl_give isl_vertices *compute_chambers(__isl_take isl_basic_set *bset,
        bset = isl_basic_set_params(bset);
 
        tab = isl_tab_from_basic_set(bset, 1);
+       if (!tab)
+               goto error;
        for (i = 0; i < bset->n_ineq; ++i)
                if (isl_tab_freeze_constraint(tab, i) < 0)
                        goto error;