summaryrefslogtreecommitdiff
path: root/archival
diff options
context:
space:
mode:
authorGlenn L McGrath2001-03-29 00:57:20 +0000
committerGlenn L McGrath2001-03-29 00:57:20 +0000
commited7a77653847c72bfe22879cea5f976fa9defb24 (patch)
tree6f87e5d57a3c9fd4ec4a5816e904e41cc15e85c1 /archival
parentae8ad35590ad2b82232920c94a0e2317e4008552 (diff)
downloadbusybox-ed7a77653847c72bfe22879cea5f976fa9defb24.zip
busybox-ed7a77653847c72bfe22879cea5f976fa9defb24.tar.gz
gunzip -c works again
Diffstat (limited to 'archival')
-rw-r--r--archival/gunzip.c42
1 files changed, 19 insertions, 23 deletions
diff --git a/archival/gunzip.c b/archival/gunzip.c
index 93f7c35..d457b75 100644
--- a/archival/gunzip.c
+++ b/archival/gunzip.c
@@ -1080,32 +1080,31 @@ extern int gunzip_main(int argc, char **argv)
if (argc != 2) {
show_usage();
}
- flags |= gunzip_force;
- flags |= gunzip_to_stdout;
+ flags |= (gunzip_force | gunzip_to_stdout);
} else
#endif
- {
+ if (strcmp(applet_name, "gunzip") == 0) {
/* workout flags as regular gunzip */
/* set default flags */
if (argc == 1) {
flags |= (gunzip_from_stdin | gunzip_to_stdout);
- }
-
- /* Parse any options */
- while ((opt = getopt(argc, argv, "ctfh")) != -1) {
- switch (opt) {
- case 'c':
- flags |= gunzip_to_stdout;
- break;
- case 'f':
- flags |= gunzip_force;
- break;
- case 't':
- flags |= gunzip_test;
- break;
- case 'h':
- default:
- show_usage(); /* exit's inside usage */
+ } else {
+ /* Parse any options */
+ while ((opt = getopt(argc, argv, "ctfh")) != -1) {
+ switch (opt) {
+ case 'c':
+ flags |= gunzip_to_stdout;
+ break;
+ case 'f':
+ flags |= gunzip_force;
+ break;
+ case 't':
+ flags |= gunzip_test;
+ break;
+ case 'h':
+ default:
+ show_usage(); /* exit's inside usage */
+ }
}
}
}
@@ -1116,7 +1115,6 @@ extern int gunzip_main(int argc, char **argv)
if ((flags & gunzip_force) == 0) {
error_msg_and_die("data not written to terminal. Use -f to force it.");
}
- strcpy(if_name, "stdin");
} else {
if_name = strdup(argv[optind]);
/* Open input file */
@@ -1135,8 +1133,6 @@ extern int gunzip_main(int argc, char **argv)
if (isatty(fileno(out_file)) && ((flags & gunzip_force) == 0)) {
error_msg_and_die("data not written to terminal. Use -f to force it.");
}
-
- strcpy(of_name, "stdout");
} else if (flags & gunzip_test) {
out_file = xfopen("/dev/null", "w"); /* why does test use filenum 2 ? */
} else {