From a03d86cf5496a24ccf81bfbf8fdbb10b1ad13a0a Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Mon, 10 Jul 2000 16:38:50 +0000 Subject: Patch from Matt Kraai : GNU tr complains on the following: $ tr a '' tr: when not truncating set1, string2 must be non-empty BusyBox tr does not complain: $ tr a '' a ^D 0 It should result in an error, not in some spurious output. The attached patch generates an error. Matt --- coreutils/tr.c | 6 ++++-- tr.c | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/coreutils/tr.c b/coreutils/tr.c index 48cdd47bd..5a8116db0 100644 --- a/coreutils/tr.c +++ b/coreutils/tr.c @@ -187,10 +187,12 @@ extern int tr_main(int argc, char **argv) expand(argv[index++], input); if (com_fl) complement(input); - if (argv[index] != NULL) + if (argv[index] != NULL) { + if (*argv[index] == '\0') + fatalError("tr: STRING2 cannot be empty\n"); expand(argv[index], output); - if (argv[index] != NULL) map(input, output); + } for (ptr = input; *ptr; ptr++) invec[*ptr] = TRUE; for (ptr = output; *ptr; ptr++) diff --git a/tr.c b/tr.c index 48cdd47bd..5a8116db0 100644 --- a/tr.c +++ b/tr.c @@ -187,10 +187,12 @@ extern int tr_main(int argc, char **argv) expand(argv[index++], input); if (com_fl) complement(input); - if (argv[index] != NULL) + if (argv[index] != NULL) { + if (*argv[index] == '\0') + fatalError("tr: STRING2 cannot be empty\n"); expand(argv[index], output); - if (argv[index] != NULL) map(input, output); + } for (ptr = input; *ptr; ptr++) invec[*ptr] = TRUE; for (ptr = output; *ptr; ptr++) -- cgit v1.2.3