diff options
author | andersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2000-07-10 16:38:50 +0000 |
---|---|---|
committer | andersen <andersen@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2000-07-10 16:38:50 +0000 |
commit | dc896876bd598fdedca38c43895f255319bc5199 (patch) | |
tree | 2aa0b95f63205b067eac7ef738ba4f41620474c3 /tr.c | |
parent | 9f0bd313486f7e9f4f9b9cf586dae7f1f65dafcb (diff) | |
download | busybox-w32-dc896876bd598fdedca38c43895f255319bc5199.tar.gz busybox-w32-dc896876bd598fdedca38c43895f255319bc5199.tar.bz2 busybox-w32-dc896876bd598fdedca38c43895f255319bc5199.zip |
Patch from Matt Kraai <kraai@alumni.carnegiemellon.edu>:
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
git-svn-id: svn://busybox.net/trunk/busybox@797 69ca8d6d-28ef-0310-b511-8ec308f3f277
Diffstat (limited to 'tr.c')
-rw-r--r-- | tr.c | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -187,10 +187,12 @@ extern int tr_main(int argc, char **argv) | |||
187 | expand(argv[index++], input); | 187 | expand(argv[index++], input); |
188 | if (com_fl) | 188 | if (com_fl) |
189 | complement(input); | 189 | complement(input); |
190 | if (argv[index] != NULL) | 190 | if (argv[index] != NULL) { |
191 | if (*argv[index] == '\0') | ||
192 | fatalError("tr: STRING2 cannot be empty\n"); | ||
191 | expand(argv[index], output); | 193 | expand(argv[index], output); |
192 | if (argv[index] != NULL) | ||
193 | map(input, output); | 194 | map(input, output); |
195 | } | ||
194 | for (ptr = input; *ptr; ptr++) | 196 | for (ptr = input; *ptr; ptr++) |
195 | invec[*ptr] = TRUE; | 197 | invec[*ptr] = TRUE; |
196 | for (ptr = output; *ptr; ptr++) | 198 | for (ptr = output; *ptr; ptr++) |