summaryrefslogtreecommitdiff
path: root/archival/libunarchive
diff options
context:
space:
mode:
authorGlenn L McGrath2003-11-18 21:31:19 +0000
committerGlenn L McGrath2003-11-18 21:31:19 +0000
commit20872be9a4e670666b307f94b8fca6bf807c9b7b (patch)
treeb611e7b17fd5f900bac0f3f70a2fc48caf11c9bf /archival/libunarchive
parent3b9fc8fe2a0fee6f1128f3f73ff408555ff45df8 (diff)
downloadbusybox-20872be9a4e670666b307f94b8fca6bf807c9b7b.zip
busybox-20872be9a4e670666b307f94b8fca6bf807c9b7b.tar.gz
Dont close original file handle, we may need it later.
Diffstat (limited to 'archival/libunarchive')
-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 c1007f9..fb149fc 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
if (pid == 0) {
/* child process */
- close(fd_pipe[0]); /* We don't wan't to read from the pipe */
+ close(fd_pipe[0]); /* We don't wan't to read from the parent */
transformer(src_fd, fd_pipe[1]);
close(fd_pipe[1]); /* Send EOF */
+ close(src_fd);
exit(0);
/* notreached */
}
+
/* parent process */
- close(fd_pipe[1]); /* Don't want to write down the pipe */
- close(src_fd);
+ close(fd_pipe[1]); /* Don't want to write to the child */
return(fd_pipe[0]);
}