summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Eischen <deischen@FreeBSD.org>2002-01-11 19:46:08 +0000
committerDaniel Eischen <deischen@FreeBSD.org>2002-01-11 19:46:08 +0000
commitaee4cebfe79239d771ddf6a74885846d0fd047cc (patch)
tree134e0e541818593b4623cf46a44e49fe449efbd2
parentdeba2451768df7509013747bcbbf1ad926f2d9d5 (diff)
Notes
-rw-r--r--lib/libc/gen/swapcontext.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/lib/libc/gen/swapcontext.c b/lib/libc/gen/swapcontext.c
index 5434c0f405fb..d58ae6dc6d30 100644
--- a/lib/libc/gen/swapcontext.c
+++ b/lib/libc/gen/swapcontext.c
@@ -29,6 +29,7 @@ __FBSDID("$FreeBSD$");
#include <errno.h>
#include <signal.h>
+#include <stddef.h>
#include <ucontext.h>
__weak_reference(__swapcontext, swapcontext);
@@ -36,17 +37,17 @@ __weak_reference(__swapcontext, swapcontext);
int
__swapcontext(ucontext_t *oucp, const ucontext_t *ucp)
{
- volatile int swapped;
- int ret;
+ volatile int swapping;
+ int ret;
if (oucp == NULL || ucp == NULL) {
errno = EINVAL;
ret = -1;
- }
- else {
- swapped = 0;
- if ((ret = getcontext(oucp) == 0) && (swapped == 0)) {
- swapped = 1;
+ } else {
+ swapping = 0;
+ ret = getcontext(oucp);
+ if (ret == 0 && swapping == 0) {
+ swapping = 1;
ret = setcontext(ucp);
}
}