diff options
author | Stu Grossman <grossman@cygnus> | 1994-08-12 22:54:53 +0000 |
---|---|---|
committer | Stu Grossman <grossman@cygnus> | 1994-08-12 22:54:53 +0000 |
commit | 4fb7359d9732eb52a34a9d1b51aa775d362207b3 (patch) | |
tree | 50074275350f68a6062ba02324248307f2208dcf /gdb/remote.c | |
parent | 9a1ef62dcd6c36bfe43f787e7913111e7239b7c3 (diff) | |
download | gdb-4fb7359d9732eb52a34a9d1b51aa775d362207b3.zip gdb-4fb7359d9732eb52a34a9d1b51aa775d362207b3.tar.gz gdb-4fb7359d9732eb52a34a9d1b51aa775d362207b3.tar.bz2 |
* remote.c (remote_wait): Return inferior_pid instead of 0 for
`W` message.
Diffstat (limited to 'gdb/remote.c')
-rw-r--r-- | gdb/remote.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/gdb/remote.c b/gdb/remote.c index 8debf22..fb6184a 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); |