diff options
| author | Denis Vlasenko <vda.linux@googlemail.com> | 2008-07-26 19:34:00 +0000 |
|---|---|---|
| committer | Denis Vlasenko <vda.linux@googlemail.com> | 2008-07-26 19:34:00 +0000 |
| commit | 5e40070d38cf02b96da72db5c6612e8971ef65f0 (patch) | |
| tree | 6c5242140719a15c406e4d18888859e01986b3d0 | |
| parent | df96df9c7c78d0f19c8d1ac1aa3d8d80abbe16bb (diff) | |
| download | busybox-5e40070d38cf02b96da72db5c6612e8971ef65f0.tar.gz | |
tr: fix "access past the end of a string" bug 4354
| -rw-r--r-- | coreutils/tr.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/coreutils/tr.c b/coreutils/tr.c index e439fcb5b..28798fe4f 100644 --- a/coreutils/tr.c +++ b/coreutils/tr.c @@ -138,7 +138,7 @@ static unsigned int expand(const char *arg, char *buffer) arg += 3; /* skip CHAR=] */ continue; } - if (*arg != '-') { /* not [x-...] - copy verbatim */ + if (i == '\0' || *arg != '-') { /* not [x-...] - copy verbatim */ *buffer++ = '['; arg--; /* points to x */ continue; /* copy all, including eventual ']' */ |
