From: Eric Andersen Date: Fri, 12 Mar 2004 22:10:40 +0000 (-0000) Subject: Hideki IWAMOTO writes: X-Git-Tag: 1_00_pre9~69 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=ed43806c3b3394ea4ee94c5c9ab042d0aa51f033;p=oweals%2Fbusybox.git Hideki IWAMOTO writes: Current `tr' implementation has a problem, if `plain char' is signed. [current cvs version] >echo a | _install/usr/bin/tr '\0' '\377' Segmentation fault (core dumped) [patched version] >echo a | _install/usr/bin/tr '\0' '\377' a --- diff --git a/coreutils/tr.c b/coreutils/tr.c index 4e69dc89c..958fc80b8 100644 --- a/coreutils/tr.c +++ b/coreutils/tr.c @@ -202,9 +202,9 @@ extern int tr_main(int argc, char **argv) map(input, input_length, output, output_length); } for (i = 0; i < input_length; i++) - invec[(int)input[i]] = TRUE; + invec[(unsigned char)input[i]] = TRUE; for (i = 0; i < output_length; i++) - outvec[(int)output[i]] = TRUE; + outvec[(unsigned char)output[i]] = TRUE; } convert(); return (0);