[BusyBox-cvs] busybox/coreutils tr.c,1.36,1.37

Erik Andersen andersen at busybox.net
Fri Mar 12 22:10:43 UTC 2004


Update of /var/cvs/busybox/coreutils
In directory nail:/tmp/cvs-serv27842/coreutils

Modified Files:
	tr.c 
Log Message:
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



Index: tr.c
===================================================================
RCS file: /var/cvs/busybox/coreutils/tr.c,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -d -r1.36 -r1.37
--- a/tr.c	22 Jul 2003 22:15:17 -0000	1.36
+++ b/tr.c	12 Mar 2004 22:10:40 -0000	1.37
@@ -202,9 +202,9 @@
 			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);




More information about the busybox-cvs mailing list