aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--archival/libunarchive/open_transformer.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/archival/libunarchive/open_transformer.c b/archival/libunarchive/open_transformer.c
index c1007f982..fb149fc0b 100644
--- a/archival/libunarchive/open_transformer.c
+++ b/archival/libunarchive/open_transformer.c
@@ -36,15 +36,16 @@ extern int open_transformer(int src_fd, int (*transformer)(int src_fd, int dst_f
36 36
37 if (pid == 0) { 37 if (pid == 0) {
38 /* child process */ 38 /* child process */
39 close(fd_pipe[0]); /* We don't wan't to read from the pipe */ 39 close(fd_pipe[0]); /* We don't wan't to read from the parent */
40 transformer(src_fd, fd_pipe[1]); 40 transformer(src_fd, fd_pipe[1]);
41 close(fd_pipe[1]); /* Send EOF */ 41 close(fd_pipe[1]); /* Send EOF */
42 close(src_fd);
42 exit(0); 43 exit(0);
43 /* notreached */ 44 /* notreached */
44 } 45 }
46
45 /* parent process */ 47 /* parent process */
46 close(fd_pipe[1]); /* Don't want to write down the pipe */ 48 close(fd_pipe[1]); /* Don't want to write to the child */
47 close(src_fd);
48 49
49 return(fd_pipe[0]); 50 return(fd_pipe[0]);
50} 51}