isl_input.c: read_defined_var_list: avoid double free on error
authorSven Verdoolaege <skimo@kotnet.org>
Fri, 25 Jun 2010 16:25:18 +0000 (18:25 +0200)
committerSven Verdoolaege <skimo@kotnet.org>
Sat, 26 Jun 2010 15:37:39 +0000 (17:37 +0200)
isl_input.c

index fc27090..b70b091 100644 (file)
@@ -500,7 +500,6 @@ static struct isl_basic_map *read_defined_var_list(struct isl_stream *s,
                        isl_stream_error(s, tok, "expecting unique identifier");
                        goto error;
                }
-               isl_token_free(tok);
 
                bmap = isl_basic_map_cow(bmap);
                bmap = isl_basic_map_extend_dim(bmap, isl_dim_copy(bmap->dim),
@@ -510,6 +509,7 @@ static struct isl_basic_map *read_defined_var_list(struct isl_stream *s,
                        goto error;
                isl_seq_clr(bmap->div[k], 1 + 1 + total);
 
+               isl_token_free(tok);
                tok = isl_stream_next_token(s);
                if (tok && tok->type == '=') {
                        isl_token_free(tok);