From 4fb7359d9732eb52a34a9d1b51aa775d362207b3 Mon Sep 17 00:00:00 2001 From: Stu Grossman Date: Fri, 12 Aug 1994 22:54:53 +0000 Subject: [PATCH] * remote.c (remote_wait): Return inferior_pid instead of 0 for `W` message. --- gdb/ChangeLog | 5 +++++ gdb/remote.c | 20 ++++++++++---------- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 061be3ece7f..ee8bd5f91bb 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +Fri Aug 12 15:52:37 1994 Stu Grossman (grossman@cygnus.com) + + * remote.c (remote_wait): Return inferior_pid instead of 0 for + `W` message. + Fri Aug 12 11:47:10 1994 J.T. Conklin (jtc@phishhead.cygnus.com) * sparclite/aload.c (sys_error, error): Use vfprintf to variable diff --git a/gdb/remote.c b/gdb/remote.c index 8debf22b170..fb6184a3f24 100644 --- a/gdb/remote.c +++ b/gdb/remote.c @@ -411,13 +411,6 @@ device is attached to the remote system (e.g. /dev/ttya)."); stub to another, we can (if the target is closed and reopened) cope. */ stub_supports_P = 1; - /* Start the remote connection; if error (0), discard this target. - In particular, if the user quits, be sure to discard it - (we'd be in an inconsistent state otherwise). */ - if (!catch_errors (remote_start_remote, (char *)0, - "Couldn't establish connection to remote target\n", RETURN_MASK_ALL)) - pop_target(); - /* Without this, some commands which require an active target (such as kill) won't work. This variable serves (at least) double duty as both the pid of the target process (if it has such), and as a flag indicating that a @@ -425,7 +418,14 @@ device is attached to the remote system (e.g. /dev/ttya)."); variables, especially since GDB will someday have a notion of debugging several processes. */ - inferior_pid = -1; + inferior_pid = 42000; + + /* Start the remote connection; if error (0), discard this target. + In particular, if the user quits, be sure to discard it + (we'd be in an inconsistent state otherwise). */ + if (!catch_errors (remote_start_remote, (char *)0, + "Couldn't establish connection to remote target\n", RETURN_MASK_ALL)) + pop_target(); } /* remote_detach() @@ -630,13 +630,13 @@ remote_wait (pid, status) status->value.sig = (enum target_signal) (((fromhex (buf[1])) << 4) + (fromhex (buf[2]))); - return 0; + return inferior_pid; case 'W': /* Target exited */ { /* The remote process exited. */ status->kind = TARGET_WAITKIND_EXITED; status->value.integer = (fromhex (buf[1]) << 4) + fromhex (buf[2]); - return 0; + return inferior_pid; } case 'O': /* Console output */ fputs_filtered (buf + 1, gdb_stdout); -- 2.30.2