diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2008-07-26 23:34:00 +0400 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2008-07-26 23:34:00 +0400 |
commit | 5e40070d38cf02b96da72db5c6612e8971ef65f0 (patch) | |
tree | 6c5242140719a15c406e4d18888859e01986b3d0 /coreutils/tr.c | |
parent | df96df9c7c78d0f19c8d1ac1aa3d8d80abbe16bb (diff) |
tr: fix "access past the end of a string" bug 4354
Diffstat (limited to 'coreutils/tr.c')
-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 ']' */ |