This patch makes
cat -- -foo
cat the file ./foo and not stdin.
emg
From 71b02bf573c5345ee0994192ad74d591dc89a7d4 Mon Sep 17 00:00:00 2001
From: Evan Gates <[email protected]>
Date: Tue, 18 Nov 2014 13:41:52 -0800
Subject: [PATCH] read stdin if arg is exactly "-" not just begins with '-'
---
cat.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cat.c b/cat.c
index a7842c8..fbf8069 100644
--- a/cat.c
+++ b/cat.c
@@ -30,7 +30,7 @@ main(int argc, char *argv[])
concat(stdin, "<stdin>", stdout, "<stdout>");
} else {
for (; argc; argc--, argv++) {
- if (argv[0][0] == '-')
+ if (argv[0][0] == '-' && !argv[0][1])
argv[0] = "/dev/fd/0";
if (!(fp = fopen(argv[0], "r"))) {
weprintf("fopen %s:", argv[0]);
--
2.1.3