From 92b05e72eab38351ab9a486e0e0ec9db11f4413b Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 29 May 2012 13:34:38 +0200 Subject: re PR middle-end/53510 (OOM while compile some code) PR middle-end/53510 * input.c (read_line): Use XRESIZEVEC instead of XNEWVEC to avoid leaking memory. No need to handle memory allocation failure. Double string_len on each reallocation instead of adding 2. * gcov.c (read_line): Likewise. From-SVN: r187952 --- gcc/gcov.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) (limited to 'gcc/gcov.c') diff --git a/gcc/gcov.c b/gcc/gcov.c index 9707111..d482399 100644 --- a/gcc/gcov.c +++ b/gcc/gcov.c @@ -2219,15 +2219,8 @@ read_line (FILE *file) return string; } pos += len; - ptr = XNEWVEC (char, string_len * 2); - if (ptr) - { - memcpy (ptr, string, pos); - string = ptr; - string_len += 2; - } - else - pos = 0; + string = XRESIZEVEC (char, string, string_len * 2); + string_len *= 2; } return pos ? string : NULL; -- cgit v1.1