diff options
author | Jason Thorpe <thorpej@netbsd.org> | 2002-04-20 23:54:28 +0000 |
---|---|---|
committer | Jason Thorpe <thorpej@netbsd.org> | 2002-04-20 23:54:28 +0000 |
commit | aa40ec9031076c07d84a1a60322e5bba66378782 (patch) | |
tree | 817bd94bc0001d9e94ecc0ef3389e83a095f19fe /gdb/frame.c | |
parent | 0f79675b658bbf6871b720d7b662ddfb6cce1533 (diff) | |
download | fsf-binutils-gdb-aa40ec9031076c07d84a1a60322e5bba66378782.zip fsf-binutils-gdb-aa40ec9031076c07d84a1a60322e5bba66378782.tar.gz fsf-binutils-gdb-aa40ec9031076c07d84a1a60322e5bba66378782.tar.bz2 |
* frame.c (find_saved_register): Avoid a NULL pointer
dereference and actually walk the frame list.
Diffstat (limited to 'gdb/frame.c')
-rw-r--r-- | gdb/frame.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gdb/frame.c b/gdb/frame.c index 7923660..819ee2c 100644 --- a/gdb/frame.c +++ b/gdb/frame.c @@ -83,9 +83,10 @@ find_saved_register (struct frame_info *frame, int regnum) while (1) { QUIT; - frame1 = get_next_frame (frame1); - if (frame1 == 0 || frame1 == frame) + frame1 = get_next_frame (frame); + if (frame1 == 0) break; + frame = frame1; FRAME_INIT_SAVED_REGS (frame1); if (frame1->saved_regs[regnum]) addr = frame1->saved_regs[regnum]; |