ruby-changes:2381
From: ko1@a...
Date: 10 Nov 2007 23:53:47 +0900
Subject: [ruby-changes:2381] akr - Ruby:r13872 (trunk): * string.c (tr_trans): cast to unsigned char after dereference
akr 2007-11-10 23:53:26 +0900 (Sat, 10 Nov 2007)
New Revision: 13872
Modified files:
trunk/ChangeLog
trunk/string.c
Log:
* string.c (tr_trans): cast to unsigned char after dereference
a pointer to a char to avoid SEGV with "\377".tr("a", "b").
on FreeBSD/amd64.
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/string.c?r1=13872&r2=13871
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=13872&r2=13871
Index: ChangeLog
===================================================================
--- ChangeLog (revision 13871)
+++ ChangeLog (revision 13872)
@@ -1,3 +1,9 @@
+Sat Nov 10 23:50:31 2007 Tanaka Akira <akr@f...>
+
+ * string.c (tr_trans): cast to unsigned char after dereference
+ a pointer to a char to avoid SEGV with "\377".tr("a", "b").
+ on FreeBSD/amd64.
+
Sat Nov 10 23:08:53 2007 Tanaka Akira <akr@f...>
* configure.in, common.mk, Makefile.in: don't generate
Index: string.c
===================================================================
--- string.c (revision 13871)
+++ string.c (revision 13872)
@@ -3475,7 +3475,7 @@
}
else if (rb_enc_mbmaxlen(enc) == 1) {
while (s < send) {
- c = *s;
+ c = (unsigned char)*s;
if (trans[c] >= 0) {
if (!cflag) {
c = FIX2INT(trans[c]);
--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml