* dwarf2.c (find_line): Don't update stash->sec_info_ptr until
	after comp_unit_find_line call.
This commit is contained in:
Alan Modra 2009-01-22 08:54:20 +00:00
parent 8b700390bf
commit be04437d39
2 changed files with 15 additions and 8 deletions

View File

@ -1,3 +1,9 @@
2009-01-22 Alan Modra <amodra@bigpond.net.au>
PR 6832
* dwarf2.c (find_line): Don't update stash->sec_info_ptr until
after comp_unit_find_line call.
2009-01-21 Nick Clifton <nickc@redhat.com>
PR 9769

View File

@ -1,6 +1,6 @@
/* DWARF 2 support.
Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
Adapted from gdb/dwarf2read.c by Gavin Koch of Cygnus Solutions
(gavin@cygnus.com).
@ -3189,13 +3189,6 @@ find_line (bfd *abfd,
break;
stash->info_ptr += length;
if ((bfd_vma) (stash->info_ptr - stash->sec_info_ptr)
== stash->sec->size)
{
stash->sec = find_debug_info (stash->bfd, stash->sec);
stash->sec_info_ptr = stash->info_ptr;
}
if (stash->all_comp_units)
stash->all_comp_units->prev_unit = each;
else
@ -3225,6 +3218,14 @@ find_line (bfd *abfd,
functionname_ptr,
linenumber_ptr,
stash));
if ((bfd_vma) (stash->info_ptr - stash->sec_info_ptr)
== stash->sec->size)
{
stash->sec = find_debug_info (stash->bfd, stash->sec);
stash->sec_info_ptr = stash->info_ptr;
}
if (found)
goto done;
}