fix one bug in stabsread.c

Some code in stabsread.c can return without running cleanups.

	* stabsread.c (read_struct_type): Call do_cleanups along
	all return paths.
This commit is contained in:
Tom Tromey 2013-05-30 17:25:15 +00:00
parent 7d26658403
commit 73b8d9dab1
2 changed files with 9 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2013-05-30 Tom Tromey <tromey@redhat.com>
* stabsread.c (read_struct_type): Call do_cleanups along
all return paths.
2013-05-30 Maciej W. Rozycki <macro@codesourcery.com>
* mips-linux-tdep.c: Adjust formatting throughout.

View File

@ -3515,7 +3515,10 @@ read_struct_type (char **pp, struct type *type, enum type_code type_code,
TYPE_LENGTH (type) = read_huge_number (pp, 0, &nbits, 0);
if (nbits != 0)
return error_type (pp, objfile);
{
do_cleanups (back_to);
return error_type (pp, objfile);
}
set_length_in_type_chain (type);
}