From fddce8be99832b67ab7aaeb6c306eba1790a8ad7 Mon Sep 17 00:00:00 2001 From: Sven Verdoolaege Date: Thu, 17 Mar 2011 13:15:25 +0100 Subject: [PATCH] isl_stream_getc: avoid memory leak when realloc fails Signed-off-by: Sven Verdoolaege --- isl_stream.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/isl_stream.c b/isl_stream.c index 4c61ee4..6b5e7f7 100644 --- a/isl_stream.c +++ b/isl_stream.c @@ -213,10 +213,12 @@ static int isl_stream_getc(struct isl_stream *s) static int isl_stream_push_char(struct isl_stream *s, int c) { if (s->len >= s->size) { + char *buffer; s->size = (3*s->size)/2; - s->buffer = isl_realloc_array(s->ctx, s->buffer, char, s->size); - if (!s->buffer) + buffer = isl_realloc_array(s->ctx, s->buffer, char, s->size); + if (!buffer) return -1; + s->buffer = buffer; } s->buffer[s->len++] = c; return 0; -- 2.7.4