2004-01-05 Andrew Cagney <cagney@redhat.com>

* target.c (unpush_target): Only close a target that is in the
	target stack.
This commit is contained in:
Andrew Cagney 2004-01-05 22:32:23 +00:00
parent 4a4c4a1dfb
commit 5269965e4c
2 changed files with 13 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2004-01-05 Andrew Cagney <cagney@redhat.com>
* target.c (unpush_target): Only close a target that is in the
target stack.
2004-01-05 Mark Kettenis <kettenis@gnu.org>
* sparc-tdep.c (sparc_extract_struct_value_address): Get the

View File

@ -709,8 +709,6 @@ unpush_target (struct target_ops *t)
struct target_ops **cur;
struct target_ops *tmp;
target_close (t, 0);
/* Look for the specified target. Note that we assume that a target
can only occur once in the target stack. */
@ -723,6 +721,14 @@ unpush_target (struct target_ops *t)
if ((*cur) == NULL)
return 0; /* Didn't find target_ops, quit now */
/* NOTE: cagney/2003-12-06: In '94 the close call was made
unconditional by moving it to before the above check that the
target was in the target stack (something about "Change the way
pushing and popping of targets work to support target overlays
and inheritance"). This doesn't make much sense - only open
targets should be closed. */
target_close (t, 0);
/* Unchain the target */
tmp = (*cur);
(*cur) = (*cur)->beneath;