summaryrefslogtreecommitdiff
path: root/coreutils/cat.c
diff options
context:
space:
mode:
Diffstat (limited to 'coreutils/cat.c')
-rw-r--r--coreutils/cat.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/coreutils/cat.c b/coreutils/cat.c
index db4d33d..d828b86 100644
--- a/coreutils/cat.c
+++ b/coreutils/cat.c
@@ -14,9 +14,12 @@
int bb_cat(char **argv)
{
+ static char *const argv_dash[] = { "-", NULL };
FILE *f;
int retval = EXIT_SUCCESS;
+ if (!*argv) argv = (char**) &argv_dash;
+
do {
f = fopen_or_warn_stdin(*argv);
if (f) {
@@ -35,11 +38,6 @@ int bb_cat(char **argv)
int cat_main(int argc, char **argv)
{
getopt32(argc, argv, "u");
-
argv += optind;
- if (!*argv) {
- *--argv = "-";
- }
-
return bb_cat(argv);
}