]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/m32r/kernel/sys_m32r.c
sys_pipe(): fix file descriptor leaks
[linux-2.6-omap-h63xx.git] / arch / m32r / kernel / sys_m32r.c
index 6d7a80fdad488676b8e69c43b0db180e68baf823..319c79720b8a2ba3860ff35fad5a20b2552210cc 100644 (file)
@@ -90,8 +90,11 @@ sys_pipe(unsigned long r0, unsigned long r1, unsigned long r2,
 
        error = do_pipe(fd);
        if (!error) {
-               if (copy_to_user((void __user *)r0, fd, 2*sizeof(int)))
+               if (copy_to_user((void __user *)r0, fd, 2*sizeof(int))) {
+                       sys_close(fd[0]);
+                       sys_close(fd[1]);
                        error = -EFAULT;
+               }
        }
        return error;
 }