diff options
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/breakpoint.c | 5 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 3e10ccf..f92fadc 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2003-11-16 Daniel Jacobowitz <drow@mvista.com> + + * breakpoint.c (re_enable_breakpoints_in_shlibs): Only re-enable a + bp_shlib_disabled breakpoint if there is a shared library mapped + at its expected address. + 2003-11-16 Andrew Cagney <cagney@redhat.com> * configure.tgt: Delete mips*tx39*-elf*. diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c index 0e95e20..02874bc 100644 --- a/gdb/breakpoint.c +++ b/gdb/breakpoint.c @@ -4297,11 +4297,12 @@ re_enable_breakpoints_in_shlibs (void) ALL_BREAKPOINTS (b) if (b->enable_state == bp_shlib_disabled) { - char buf[1]; + char buf[1], *lib; /* Do not reenable the breakpoint if the shared library is still not mapped in. */ - if (target_read_memory (b->loc->address, buf, 1) == 0) + lib = PC_SOLIB (b->loc->address); + if (lib != NULL && target_read_memory (b->loc->address, buf, 1) == 0) b->enable_state = bp_enabled; } } |