Fix memory access violations triggered by running dlltool on corrupt binaries.

PR binutils/17512
	* dlltool.c (identify_search_archive): If the last archive was the
	same as the current archive, terminate the loop.

	* pdp11.c (aout_get_external_symbols): Return false if there are
	no symbols.
This commit is contained in:
Nick Clifton 2015-01-27 11:30:15 +00:00
parent 20d79870f3
commit 37e3922eed
4 changed files with 24 additions and 1 deletions

View file

@ -1189,6 +1189,9 @@ aout_get_external_symbols (bfd *abfd)
count = exec_hdr (abfd)->a_syms / EXTERNAL_NLIST_SIZE;
/* PR 17512: file: 011f5a08. */
if (count == 0)
return FALSE;
#ifdef USE_MMAP
if (! bfd_get_file_window (abfd, obj_sym_filepos (abfd),
exec_hdr (abfd)->a_syms,