Thu Aug 4 10:26:36 1994 Stu Grossman (grossman@rtl.cygnus.com)
+ * target.c (add_target): Don't call clean_target on target
+ vectors anymore.
+ * (unpush_target): Test for to_close being set before calling.
+ * (target_xfer_memory, target_info): Check for to_has_memory
+ before playing with memory.
+
* remote.c (remote_open): Set inferior_pid to make kill command
happy.
* inflow.c (kill_command): Revert change of Aug 2. Use
target_struct_allocsize * sizeof (*target_structs));
}
target_structs[target_struct_size++] = t;
- cleanup_target (t);
+/* cleanup_target (t);*/
if (targetlist == NULL)
add_prefix_cmd ("target", class_run, target_command,
{
struct target_stack_item *cur, *prev;
- t->to_close (0); /* Let it clean up */
+ if (t->to_close)
+ t->to_close (0); /* Let it clean up */
/* Look for the specified target. Note that we assume that a target
can only occur once in the target stack. */
for (item = target_stack; item; item = item->next)
{
t = item->target_ops;
+ if (!t->to_has_memory)
+ continue;
res = t->to_xfer_memory (memaddr, myaddr, curlen, write, t);
if (res > 0)
{
t = item->target_ops;
+ if (!t->to_has_memory)
+ continue;
+
if ((int)(t->to_stratum) <= (int)dummy_stratum)
continue;
if (has_all_mem)