diff options
| -rw-r--r-- | sys/src/9/port/devproc.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/src/9/port/devproc.c b/sys/src/9/port/devproc.c index bb6d3d970..29b8031c1 100644 --- a/sys/src/9/port/devproc.c +++ b/sys/src/9/port/devproc.c @@ -1339,6 +1339,7 @@ proctext(Chan *c, Proc *p) void procstopwait(Proc *p, int ctl) { + char *state; int pid; if(p->pdbg != nil) @@ -1354,14 +1355,17 @@ procstopwait(Proc *p, int ctl) return; p->pdbg = up; qunlock(&p->debug); + state = up->psstate; up->psstate = "Stopwait"; if(waserror()) { + up->psstate = state; qlock(&p->debug); p->pdbg = nil; nexterror(); } sleep(&up->sleep, procstopped, p); poperror(); + up->psstate = state; qlock(&p->debug); if(p->pid != pid) error(Eprocdied); |
