aboutsummaryrefslogtreecommitdiff
path: root/gdb/exec.c
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2013-07-13 11:19:14 -0600
committerTom Tromey <tromey@redhat.com>2014-07-25 11:10:23 -0600
commitab16fce80e60f15058b594f624024219c3a7a000 (patch)
tree89823ac8f43c3fec321b57c83c181847642a418e /gdb/exec.c
parent88056fbbf4fc603517ce2e09c0ee4398ab354836 (diff)
downloadfsf-binutils-gdb-ab16fce80e60f15058b594f624024219c3a7a000.zip
fsf-binutils-gdb-ab16fce80e60f15058b594f624024219c3a7a000.tar.gz
fsf-binutils-gdb-ab16fce80e60f15058b594f624024219c3a7a000.tar.bz2
remove using_exec_ops global
This removes the using_exec_ops global from exec.c, in favor of querying the target stack directly using target_is_pushed. This is more in keeping with other code in gdb, and is also more future-proof as it is more multi-target-ready. Built and regtested on x86-64 Fedora 20. 2014-07-25 Tom Tromey <tromey@redhat.com> * exec.c (using_exec_ops): Remove. (exec_close_1): Update. Remove extraneous block, reindent. (add_target_sections): Use target_is_pushed.
Diffstat (limited to 'gdb/exec.c')
-rw-r--r--gdb/exec.c32
1 files changed, 11 insertions, 21 deletions
diff --git a/gdb/exec.c b/gdb/exec.c
index 7ba2720..8b6f588 100644
--- a/gdb/exec.c
+++ b/gdb/exec.c
@@ -63,9 +63,6 @@ void _initialize_exec (void);
static struct target_ops exec_ops;
-/* True if the exec target is pushed on the stack. */
-static int using_exec_ops;
-
/* Whether to open exec and core files read-only or read-write. */
int write_files = 0;
@@ -115,22 +112,18 @@ exec_close (void)
static void
exec_close_1 (struct target_ops *self)
{
- using_exec_ops = 0;
+ struct program_space *ss;
+ struct cleanup *old_chain;
+ old_chain = save_current_program_space ();
+ ALL_PSPACES (ss)
{
- struct program_space *ss;
- struct cleanup *old_chain;
-
- old_chain = save_current_program_space ();
- ALL_PSPACES (ss)
- {
- set_current_program_space (ss);
- clear_section_table (current_target_sections);
- exec_close ();
- }
-
- do_cleanups (old_chain);
+ set_current_program_space (ss);
+ clear_section_table (current_target_sections);
+ exec_close ();
}
+
+ do_cleanups (old_chain);
}
void
@@ -445,11 +438,8 @@ add_target_sections (void *owner,
/* If these are the first file sections we can provide memory
from, push the file_stratum target. */
- if (!using_exec_ops)
- {
- using_exec_ops = 1;
- push_target (&exec_ops);
- }
+ if (!target_is_pushed (&exec_ops))
+ push_target (&exec_ops);
}
}