summaryrefslogtreecommitdiffstats
path: root/sys/kern/sys_pipe.c
diff options
context:
space:
mode:
authorart <art@openbsd.org>2004-07-21 17:05:40 +0000
committerart <art@openbsd.org>2004-07-21 17:05:40 +0000
commit0ca578369a8b3a9596ecaa0241d50b4781dfab7c (patch)
treec674d229bc1b1365f23c0eaa8aa87ccab9aa618c /sys/kern/sys_pipe.c
parentregen (diff)
downloadwireguard-openbsd-0ca578369a8b3a9596ecaa0241d50b4781dfab7c.tar.xz
wireguard-openbsd-0ca578369a8b3a9596ecaa0241d50b4781dfab7c.zip
In pipe_read, when the pipelock fails (most likely because we catch a
signal), don't jump to unlocked_error: and do things that we don't need to do (including messing up the internal state of the pipe). Just return. ok niklas@ miod@
Diffstat (limited to 'sys/kern/sys_pipe.c')
-rw-r--r--sys/kern/sys_pipe.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/sys_pipe.c b/sys/kern/sys_pipe.c
index 7e4966a861e..2fd73bea680 100644
--- a/sys/kern/sys_pipe.c
+++ b/sys/kern/sys_pipe.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sys_pipe.c,v 1.47 2004/06/24 19:35:24 tholo Exp $ */
+/* $OpenBSD: sys_pipe.c,v 1.48 2004/07/21 17:05:40 art Exp $ */
/*
* Copyright (c) 1996 John S. Dyson
@@ -285,7 +285,7 @@ pipe_read(fp, poff, uio, cred)
error = pipelock(rpipe);
if (error)
- goto unlocked_error;
+ return (error);
++rpipe->pipe_busy;