From: Scott Snyder Date: Sun, 8 Feb 1998 22:57:54 +0000 (-0700) Subject: * method.c (make_thunk): Avoid name buffer overflow. X-Git-Tag: prereleases/egcs-1.0.2-prerelease~73 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=99d73a5bdbe704b8634f0eba73114da5ae77314b;p=thirdparty%2Fgcc.git * method.c (make_thunk): Avoid name buffer overflow. From-SVN: r17785 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index d864a63b3148..87e72a1401e8 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +Sun Feb 8 23:59:04 1998 scott snyder + + * method.c (make_thunk): Avoid name buffer overflow. + Sun Jan 25 13:20:00 1998 Jason Merrill * decl.c (cp_finish_decl): When bailing on a comdat variable, also diff --git a/gcc/cp/method.c b/gcc/cp/method.c index c16f6eaf02f6..c146069964c8 100644 --- a/gcc/cp/method.c +++ b/gcc/cp/method.c @@ -1803,7 +1803,7 @@ make_thunk (function, delta) tree function; int delta; { - char buffer[250]; + char *buffer; tree thunk_id; tree thunk; char *func_name; @@ -1814,6 +1814,7 @@ make_thunk (function, delta) if (TREE_CODE (func_decl) != FUNCTION_DECL) abort (); func_name = IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (func_decl)); + buffer = (char *)alloca (strlen (func_name) + 32); if (delta<=0) sprintf (buffer, "__thunk_%d_%s", -delta, func_name); else