diff options
author | Eric Andersen <andersen@codepoet.org> | 2000-09-11 04:55:31 +0000 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2000-09-11 04:55:31 +0000 |
commit | 49352adf9c96c05babe78fa99ddaa7caaf440655 (patch) | |
tree | 922f53dc53e94ee22e49a07258ade07ead0e756f /archival | |
parent | 605a819a179e4cd00823dda41a6804c6636a3523 (diff) | |
download | busybox-49352adf9c96c05babe78fa99ddaa7caaf440655.tar.gz |
Simplify a few little things, and merge in a patch from
robotti@metconnect.com so that 'ar -xv' and 'ar -x -v'
both work.
-Erik
Diffstat (limited to 'archival')
-rw-r--r-- | archival/ar.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/archival/ar.c b/archival/ar.c index adb6982b2..61ce83029 100644 --- a/archival/ar.c +++ b/archival/ar.c @@ -181,7 +181,7 @@ static headerL_t *getHeaders(int srcFd, headerL_t *head, int funct) *head = *list; /* recursive check for sub-archives */ - if ((funct & RECURSIVE) == RECURSIVE) + if ( funct & RECURSIVE ) head = getHeaders(srcFd, head, funct); lseek(srcFd, head->offset + head->size, SEEK_SET); } @@ -207,7 +207,7 @@ static headerL_t *findEntry(headerL_t *head, const char *filename) */ static int displayEntry(headerL_t *head, int funct) { - if ((funct & VERBOSE) == VERBOSE) { + if ( funct & VERBOSE ) { printf("%s %d/%d %8d %s ", modeString(head->mode), head->uid, head->gid, head->size, timeString(head->mtime)); } printf("%s\n", head->name); @@ -232,22 +232,22 @@ extern int ar_main(int argc, char **argv) while ((opt = getopt(argc, argv, "ovtpxR")) != -1) { switch (opt) { case 'o': - funct = funct | PRESERVE_DATE; + funct |= PRESERVE_DATE; break; case 'v': - funct = funct | VERBOSE; + funct |= VERBOSE; break; case 't': - funct = funct | DISPLAY; + funct |= DISPLAY; break; case 'x': - funct = funct | EXT_TO_FILE; + funct |= EXT_TO_FILE; break; case 'p': - funct = funct | EXT_TO_STDOUT; + funct |= EXT_TO_STDOUT; break; case 'R': - funct = funct | RECURSIVE; + funct |= RECURSIVE; break; default: usage(ar_usage); @@ -288,14 +288,14 @@ extern int ar_main(int argc, char **argv) extractList = header; while(extractList->next != NULL) { - if ( (funct & EXT_TO_FILE) == EXT_TO_FILE) { + if ( funct & EXT_TO_FILE ) { dstFd = open(extractList->name, O_WRONLY | O_CREAT, extractList->mode); extractAr(srcFd, dstFd, extractList); } - if ( (funct & EXT_TO_STDOUT) == EXT_TO_STDOUT) + if ( funct & EXT_TO_STDOUT ) extractAr(srcFd, fileno(stdout), extractList); - if ( (funct & DISPLAY) == DISPLAY) + if ( (funct & DISPLAY) || (funct & VERBOSE)) displayEntry(extractList, funct); extractList=extractList->next; } |