aboutsummaryrefslogtreecommitdiff
path: root/gdb/breakpoint.c
diff options
context:
space:
mode:
authorVladimir Prus <vladimir@codesourcery.com>2009-02-18 07:28:34 +0000
committerVladimir Prus <vladimir@codesourcery.com>2009-02-18 07:28:34 +0000
commitc86cf029308edd78d12d1bb67a1d4ae1c14a9155 (patch)
tree8bbde8319811ab5834de6e902c8be4e3bcfd42b4 /gdb/breakpoint.c
parent62f59e66f8f3df327032d365d24884c69f79e759 (diff)
downloadgdb-c86cf029308edd78d12d1bb67a1d4ae1c14a9155.zip
gdb-c86cf029308edd78d12d1bb67a1d4ae1c14a9155.tar.gz
gdb-c86cf029308edd78d12d1bb67a1d4ae1c14a9155.tar.bz2
* mi/mi-interp.c (mi_solib_loaded, mi_solib_unloaded): New.
(mi_interpreter_init): Register the above. * solib.c (clear_solib): Notify solib unload. * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Do not disable breakpoints on a.out targets.
Diffstat (limited to 'gdb/breakpoint.c')
-rw-r--r--gdb/breakpoint.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index 0caedec..8a7057b 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -4457,6 +4457,14 @@ disable_breakpoints_in_unloaded_shlib (struct so_list *solib)
struct bp_location *loc;
int disabled_shlib_breaks = 0;
+ /* SunOS a.out shared libraries are always mapped, so do not
+ disable breakpoints; they will only be reported as unloaded
+ through clear_solib when GDB discards its shared library
+ list. See clear_solib for more information. */
+ if (exec_bfd != NULL
+ && bfd_get_flavour (exec_bfd) == bfd_target_aout_flavour)
+ return;
+
ALL_BP_LOCATIONS (loc)
{
struct breakpoint *b = loc->owner;