As required by SUSv3, a file argument of "-" causes standard input
to be compressed/decompressed to standard output.
This commit is contained in:
parent
b635dacd57
commit
b477159065
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=96772
@ -79,8 +79,11 @@ output) for confirmation.
|
||||
If prompting is not possible or confirmation is not received, the files
|
||||
are not overwritten.
|
||||
.Pp
|
||||
If no files are specified, the standard input is compressed or uncompressed
|
||||
to the standard output.
|
||||
If no files are specified or a
|
||||
.Ar file
|
||||
argument is a single dash
|
||||
.Pq Ql - ,
|
||||
the standard input is compressed or uncompressed to the standard output.
|
||||
If either the input and output files are not regular files, the checks for
|
||||
reduction in size and file overwriting are not performed, the input file is
|
||||
not removed, and the attributes of the input file are not retained.
|
||||
|
@ -140,7 +140,10 @@ main(argc, argv)
|
||||
for (; *argv; ++argv)
|
||||
switch(style) {
|
||||
case COMPRESS:
|
||||
if (cat) {
|
||||
if (strcmp(*argv, "-") == 0) {
|
||||
compress("/dev/stdin", "/dev/stdout", bits);
|
||||
break;
|
||||
} else if (cat) {
|
||||
compress(*argv, "/dev/stdout", bits);
|
||||
break;
|
||||
}
|
||||
@ -162,6 +165,10 @@ main(argc, argv)
|
||||
compress(*argv, newname, bits);
|
||||
break;
|
||||
case DECOMPRESS:
|
||||
if (strcmp(*argv, "-") == 0) {
|
||||
decompress("/dev/stdin", "/dev/stdout", bits);
|
||||
break;
|
||||
}
|
||||
len = strlen(*argv);
|
||||
if ((p = rindex(*argv, '.')) == NULL ||
|
||||
strcmp(p, ".Z")) {
|
||||
|
Loading…
Reference in New Issue
Block a user