1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-10 09:58:01 +00:00

pterm.c now relies on backend `exitcode' functions returning <0 when

the session is still connected, and not returning an exit code until
after it's finished.

[originally from svn r3033]
This commit is contained in:
Simon Tatham 2003-03-31 12:10:08 +00:00
parent 3a41ec782e
commit 9e59f4534b
3 changed files with 18 additions and 8 deletions

8
raw.c
View File

@ -217,8 +217,12 @@ static void raw_provide_logctx(void *handle, void *logctx)
static int raw_exitcode(void *handle) static int raw_exitcode(void *handle)
{ {
/* Exit codes are a meaningless concept in the Raw protocol */ Raw raw = (Raw) handle;
return 0; if (raw->s != NULL)
return -1; /* still connected */
else
/* Exit codes are a meaningless concept in the Raw protocol */
return 0;
} }
Backend raw_backend = { Backend raw_backend = {

View File

@ -284,9 +284,12 @@ static void rlogin_provide_logctx(void *handle, void *logctx)
static int rlogin_exitcode(void *handle) static int rlogin_exitcode(void *handle)
{ {
/* Rlogin rlogin = (Rlogin) handle; */ Rlogin rlogin = (Rlogin) handle;
/* If we ever implement RSH, we'll probably need to do this properly */ if (rlogin->s != NULL)
return 0; return -1; /* still connected */
else
/* If we ever implement RSH, we'll probably need to do this properly */
return 0;
} }
Backend rlogin_backend = { Backend rlogin_backend = {

View File

@ -996,9 +996,12 @@ static void telnet_provide_logctx(void *handle, void *logctx)
static int telnet_exitcode(void *handle) static int telnet_exitcode(void *handle)
{ {
/* Telnet telnet = (Telnet) handle; */ Telnet telnet = (Telnet) handle;
/* Telnet doesn't transmit exit codes back to the client */ if (telnet->s != NULL)
return 0; return -1; /* still connected */
else
/* Telnet doesn't transmit exit codes back to the client */
return 0;
} }
Backend telnet_backend = { Backend telnet_backend = {