about summary refs log tree commit diff
path: root/src/process/waitpid.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/process/waitpid.c')
-rw-r--r--src/process/waitpid.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/process/waitpid.c b/src/process/waitpid.c
index ec2757b3..5e0320f7 100644
--- a/src/process/waitpid.c
+++ b/src/process/waitpid.c
@@ -1,7 +1,13 @@
 #include <sys/wait.h>
 #include "syscall.h"
+#include "libc.h"
 
 pid_t waitpid(pid_t pid, int *status, int options)
 {
-	return syscall(SYS_wait4, pid, status, options, 0);
+	int r;
+	CANCELPT_BEGIN;
+	r = syscall(SYS_wait4, pid, status, options, 0);
+	if (r<0) CANCELPT_TRY;
+	CANCELPT_END;
+	return r;
 }