diff --git a/src/lib/lwp/lwp.c b/src/lib/lwp/lwp.c index 23d35ef8..6c88a79e 100644 --- a/src/lib/lwp/lwp.c +++ b/src/lib/lwp/lwp.c @@ -110,7 +110,8 @@ lwpReschedule(void) if (LwpCurrent) lwpStatus(LwpCurrent, "switch out"); /* do context switch */ - if (LwpCurrent != nextp && !(LwpCurrent && lwpSave(LwpCurrent->context))) { + i = LwpCurrent && lwpSave(LwpCurrent->context); + if (LwpCurrent != nextp && !i) { /* restore previous context */ lwpStatus(nextp, "switch in %d", nextp->pri); LwpCurrent = nextp;