diff options
| author | Robert Watson <rwatson@FreeBSD.org> | 2004-11-23 22:15:08 +0000 |
|---|---|---|
| committer | Robert Watson <rwatson@FreeBSD.org> | 2004-11-23 22:15:08 +0000 |
| commit | 436cac68e60047527fafc60693ffb2a5d3e02a18 (patch) | |
| tree | 6aec7035a982e1002ebf2c9544b9c9579506434d /sys/kern/sys_pipe.c | |
| parent | 3f40c363120b4aa0538e10bd6e6d36ab76c9ae52 (diff) | |
Notes
Diffstat (limited to 'sys/kern/sys_pipe.c')
| -rw-r--r-- | sys/kern/sys_pipe.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/kern/sys_pipe.c b/sys/kern/sys_pipe.c index 16af8097eb93..e8468d4a8ff0 100644 --- a/sys/kern/sys_pipe.c +++ b/sys/kern/sys_pipe.c @@ -1292,8 +1292,9 @@ pipe_ioctl(fp, cmd, data, active_cred, td) break; case FIOSETOWN: + PIPE_UNLOCK(mpipe); error = fsetown(*(int *)data, &mpipe->pipe_sigio); - break; + goto out_unlocked; case FIOGETOWN: *(int *)data = fgetown(&mpipe->pipe_sigio); @@ -1301,8 +1302,9 @@ pipe_ioctl(fp, cmd, data, active_cred, td) /* This is deprecated, FIOSETOWN should be used instead. */ case TIOCSPGRP: + PIPE_UNLOCK(mpipe); error = fsetown(-(*(int *)data), &mpipe->pipe_sigio); - break; + goto out_unlocked; /* This is deprecated, FIOGETOWN should be used instead. */ case TIOCGPGRP: @@ -1314,6 +1316,7 @@ pipe_ioctl(fp, cmd, data, active_cred, td) break; } PIPE_UNLOCK(mpipe); +out_unlocked: return (error); } |
