re PR other/29176 (Seg fault in demangler)

PR other/29176
	* cp-demangle.c (d_substitution): Check for overflow when
	computing substitution index.

From-SVN: r117144
This commit is contained in:
Ian Lance Taylor 2006-09-22 13:52:29 +00:00 committed by Ian Lance Taylor
parent 2319ffbb7a
commit 53e3e587a9
3 changed files with 13 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2006-09-22 Ian Lance Taylor <ian@airs.com>
PR other/29176
* cp-demangle.c (d_substitution): Check for overflow when
computing substitution index.
2006-08-30 Corinna Vinschen <corinna@vinschen.de>
* configure.ac: Add case for Mingw as host.

View File

@ -2505,6 +2505,8 @@ d_substitution (struct d_info *di, int prefix)
id = id * 36 + c - 'A' + 10;
else
return NULL;
if (id < 0)
return NULL;
c = d_next_char (di);
}
while (c != '_');

View File

@ -3811,3 +3811,8 @@ make<Factory, int>
_Z1fM1AKiPKS1_
f(int const A::*, int const A::* const*)
f
# This used to cause a core dump in the demangler -- PR 29176
--format=auto --no-params
SASDASDFASDF_sdfsdf
SASDASDFASDF_sdfsdf
SASDASDFASDF_sdfsdf