diff options
author | Paul Pluzhnikov <ppluzhnikov@google.com> | 2009-03-05 23:45:14 +0000 |
---|---|---|
committer | Paul Pluzhnikov <ppluzhnikov@google.com> | 2009-03-05 23:45:14 +0000 |
commit | a3247a22136e0b53cf5c40c67ee4f5e8eb92ec32 (patch) | |
tree | f87264eeaaddf26d435bc7553430988fb66560de /gdb/solib.c | |
parent | d36df9c574a35b93e079b0058168474ad6872204 (diff) | |
download | gdb-a3247a22136e0b53cf5c40c67ee4f5e8eb92ec32.zip gdb-a3247a22136e0b53cf5c40c67ee4f5e8eb92ec32.tar.gz gdb-a3247a22136e0b53cf5c40c67ee4f5e8eb92ec32.tar.bz2 |
2009-03-05 Paul Pluzhnikov <ppluzhnikov@google.com>
* printcmd.c (do_one_display): Reparse exp_string.
(display_uses_solib_p): New function.
(clear_dangling_display_expressions): New function.
(_initialize_printcmd): Add observer.
* solib.c (no_shared_libraries): Swap order of calls to
clear_solib and objfile_purge_solibs.
Diffstat (limited to 'gdb/solib.c')
-rw-r--r-- | gdb/solib.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gdb/solib.c b/gdb/solib.c index f3e03a1..800319f 100644 --- a/gdb/solib.c +++ b/gdb/solib.c @@ -999,8 +999,13 @@ sharedlibrary_command (char *args, int from_tty) void no_shared_libraries (char *ignored, int from_tty) { - objfile_purge_solibs (); + /* The order of the two routines below is important: clear_solib notifies + the solib_unloaded observers, and some of these observers might need + access to their associated objfiles. Therefore, we can not purge the + solibs' objfiles before clear_solib has been called. */ + clear_solib (); + objfile_purge_solibs (); } static void |