diff options
author | Andrew Cagney <cagney@redhat.com> | 2004-10-29 20:23:17 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 2004-10-29 20:23:17 +0000 |
commit | b04f3ab41782ec089e698e372f567bde75831438 (patch) | |
tree | 0a3b97a891dba140098c58f5313ca4b75fcbdb47 /gdb/frame.c | |
parent | 00b25ff323929eaa3b7ddaea20985a4174cf6381 (diff) | |
download | gdb-b04f3ab41782ec089e698e372f567bde75831438.zip gdb-b04f3ab41782ec089e698e372f567bde75831438.tar.gz gdb-b04f3ab41782ec089e698e372f567bde75831438.tar.bz2 |
2004-10-29 Andrew Cagney <cagney@gnu.org>
* frame.h (get_selected_frame): Add message parameter.
* frame.c (get_selected_frame): Add and use message parameter.
* stack.c (current_frame_command, return_command, locals_info)
(catch_info, args_info, up_silently_base, down_silently_base): Use
get_selected_frame with an explicit message.
* thread.c, stack.c, sh-tdep.c, sh64-tdep.c: Update.
* remote-rdp.c, remote-mips.c, remote-e7000.c: Update.
* ocd.c, mi/mi-main.c, mi/mi-cmd-stack.c: Update.
* infrun.c, inflow.c, infcmd.c, frame.c: Update.
* findvar.c, eval.c, corelow.c, bsd-kvm.c: Update.
* breakpoint.c: Update.
Diffstat (limited to 'gdb/frame.c')
-rw-r--r-- | gdb/frame.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/gdb/frame.c b/gdb/frame.c index 0d0e2c9..d9de0e6 100644 --- a/gdb/frame.c +++ b/gdb/frame.c @@ -822,13 +822,19 @@ struct frame_info *deprecated_selected_frame; thrown. */ struct frame_info * -get_selected_frame (void) +get_selected_frame (const char *message) { if (deprecated_selected_frame == NULL) - /* Hey! Don't trust this. It should really be re-finding the - last selected frame of the currently selected thread. This, - though, is better than nothing. */ - select_frame (get_current_frame ()); + { + if (message != NULL && (!target_has_registers + || !target_has_stack + || !target_has_memory)) + error ("%s", message); + /* Hey! Don't trust this. It should really be re-finding the + last selected frame of the currently selected thread. This, + though, is better than nothing. */ + select_frame (get_current_frame ()); + } /* There is always a frame. */ gdb_assert (deprecated_selected_frame != NULL); return deprecated_selected_frame; @@ -843,7 +849,7 @@ deprecated_safe_get_selected_frame (void) { if (!target_has_registers || !target_has_stack || !target_has_memory) return NULL; - return get_selected_frame (); + return get_selected_frame (NULL); } /* Select frame FI (or NULL - to invalidate the current frame). */ |