{
int j;
struct isl_vec *sample;
- struct isl_basic_set *hull;
+ struct isl_basic_set *hull = NULL;
struct isl_tab_undo *snap;
if (!tab || !tab_cone)
return tab;
error:
+ isl_basic_set_free(hull);
isl_tab_free(tab);
return NULL;
}
hull = uset_affine_hull_bounded(bset);
- if (!hull)
+ if (!hull) {
+ isl_mat_free(Q);
isl_mat_free(U);
- else {
+ } else {
struct isl_vec *sample = isl_vec_copy(hull->sample);
U = isl_mat_drop_cols(U, 1 + total - cone_dim, cone_dim);
if (sample && sample->size > 0)
return hull;
error:
+ isl_mat_free(T1);
isl_mat_free(T2);
isl_basic_set_free(bset);
isl_basic_set_free(hull);