From: Neil Booth Date: Tue, 27 Mar 2001 21:04:55 +0000 (+0000) Subject: * cppmacro.c (stringify_arg): Null terminate strings. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b044e9d5e9f15c20a62ba92c601128e9630438f4;p=gcc.git * cppmacro.c (stringify_arg): Null terminate strings. From-SVN: r40880 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 19c4205afdd..0ff97291e32 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2001-03-27 Neil Booth + + * cppmacro.c (stringify_arg): Null terminate strings. + 2001-03-27 Zack Weinberg * config.gcc (m68hc11-*-*, m68hc12-*-*): Convert to new tm.h diff --git a/gcc/cppmacro.c b/gcc/cppmacro.c index 7d20f1c0464..62469804f4a 100644 --- a/gcc/cppmacro.c +++ b/gcc/cppmacro.c @@ -296,7 +296,7 @@ stringify_arg (pfile, arg) if (escape_it) /* Worst case is each char is octal. */ len *= 4; - len++; /* Room for initial space. */ + len += 2; /* Room for initial space and final NUL. */ dest = &start[total_len]; if (dest + len > POOL_LIMIT (pool)) @@ -334,7 +334,9 @@ stringify_arg (pfile, arg) total_len--; } - POOL_COMMIT (pool, total_len); + /* Null terminate, and commit the memory. */ + start[total_len] = '\0'; + POOL_COMMIT (pool, total_len + 1); arg->stringified = xnew (cpp_token); arg->stringified->flags = 0;