isl_vertices_foreach_cell: store individual vertex ids inside cell
[platform/upstream/isl.git] / isl_point.c
index 9177c34..1833572 100644 (file)
@@ -4,6 +4,7 @@
 #include <isl_sample.h>
 #include <isl_scan.h>
 #include <isl_seq.h>
+#include <isl_dim_private.h>
 
 __isl_give isl_point *isl_point_alloc(__isl_take isl_dim *dim,
        __isl_take isl_vec *vec)
@@ -13,10 +14,6 @@ __isl_give isl_point *isl_point_alloc(__isl_take isl_dim *dim,
        if (!dim || !vec)
                goto error;
 
-       pnt = isl_alloc_type(dim->ctx, struct isl_point);
-       if (!pnt)
-               goto error;
-
        if (vec->size > 1 + isl_dim_total(dim)) {
                vec = isl_vec_cow(vec);
                if (!vec)
@@ -24,6 +21,10 @@ __isl_give isl_point *isl_point_alloc(__isl_take isl_dim *dim,
                vec->size = 1 + isl_dim_total(dim);
        }
 
+       pnt = isl_alloc_type(dim->ctx, struct isl_point);
+       if (!pnt)
+               goto error;
+
        pnt->ref = 1;
        pnt->dim = dim;
        pnt->vec = vec;