diff options
-rw-r--r-- | gdb/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/frame.c | 5 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index deb73732c62..de60e7daba9 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2003-08-04 Andrew Cagney <cagney@redhat.com> + + * frame.c (frame_func_unwind): Use frame_unwind_address_in_block. + 2003-08-02 Andrew Cagney <cagney@redhat.com> * config/djgpp/fnchange.lst: Fix up testsuite/gdb.c++/annota3.cc, diff --git a/gdb/frame.c b/gdb/frame.c index 9b95e9caec1..2b54ed78d5a 100644 --- a/gdb/frame.c +++ b/gdb/frame.c @@ -421,8 +421,11 @@ frame_func_unwind (struct frame_info *fi) { if (!fi->prev_func.p) { + /* Make certain that this, and not the adjacent, function is + found. */ + CORE_ADDR addr_in_block = frame_unwind_address_in_block (fi); fi->prev_func.p = 1; - fi->prev_func.addr = get_pc_function_start (frame_pc_unwind (fi)); + fi->prev_func.addr = get_pc_function_start (addr_in_block); if (frame_debug) fprintf_unfiltered (gdb_stdlog, "{ frame_func_unwind (fi=%d) -> 0x%s }\n", |