diff options
-rw-r--r-- | ar.c | 3 | ||||
-rw-r--r-- | archival/ar.c | 3 |
2 files changed, 4 insertions, 2 deletions
@@ -298,7 +298,8 @@ extern int ar_main(int argc, char **argv) while(extractList->next != NULL) { if ( (funct & EXT_TO_FILE) == EXT_TO_FILE) { - dstFd = open(extractList->name, O_WRONLY | O_CREAT); + dstFd = open(extractList->name, O_WRONLY | O_CREAT, extractList->mode); + extractAr(srcFd, dstFd, extractList); } if ( (funct & EXT_TO_STDOUT) == EXT_TO_STDOUT) diff --git a/archival/ar.c b/archival/ar.c index b758a69..eaa15a5 100644 --- a/archival/ar.c +++ b/archival/ar.c @@ -298,7 +298,8 @@ extern int ar_main(int argc, char **argv) while(extractList->next != NULL) { if ( (funct & EXT_TO_FILE) == EXT_TO_FILE) { - dstFd = open(extractList->name, O_WRONLY | O_CREAT); + dstFd = open(extractList->name, O_WRONLY | O_CREAT, extractList->mode); + extractAr(srcFd, dstFd, extractList); } if ( (funct & EXT_TO_STDOUT) == EXT_TO_STDOUT) |