ruby-changes:18701
From: nobu <ko1@a...>
Date: Sun, 30 Jan 2011 12:53:55 +0900 (JST)
Subject: [ruby-changes:18701] Ruby:r30727 (trunk): * enc/emacs_mule.c (emacsmule_islead): fix inverse condition.
nobu 2011-01-30 12:53:44 +0900 (Sun, 30 Jan 2011) New Revision: 30727 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=30727 Log: * enc/emacs_mule.c (emacsmule_islead): fix inverse condition. Modified files: trunk/ChangeLog trunk/enc/emacs_mule.c trunk/test/ruby/test_m17n.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 30726) +++ ChangeLog (revision 30727) @@ -1,3 +1,7 @@ +Sun Jan 30 12:53:38 2011 Nobuyoshi Nakada <nobu@r...> + + * enc/emacs_mule.c (emacsmule_islead): fix inverse condition. + Sun Jan 30 09:37:25 2011 Yutaka Kanemoto <kanemoto@r...> * io.c (struct argf): char behaves like an unsigned char Index: enc/emacs_mule.c =================================================================== --- enc/emacs_mule.c (revision 30726) +++ enc/emacs_mule.c (revision 30727) @@ -30,7 +30,7 @@ #include "regint.h" -#define emacsmule_islead(c) ((UChar )((c) - 0x81) > 0x9d - 0x81) +#define emacsmule_islead(c) ((UChar )((c) - 0x81) < 0x9e - 0x81) /* CHARACTER := ASCII_CHAR | MULTIBYTE_CHAR Index: test/ruby/test_m17n.rb =================================================================== --- test/ruby/test_m17n.rb (revision 30726) +++ test/ruby/test_m17n.rb (revision 30727) @@ -1106,6 +1106,18 @@ s1 = s("\x81\x40") s2 = "@" assert_equal(false, s1.end_with?(s2), "#{encdump s1}.end_with?(#{encdump s2})") + s1orig = "\u3042\u3044" + s2orig = "\u3044" + Encoding.list.each do |enc| + next if enc.dummy? + begin + s1 = s1orig.encode(enc) + s2 = s2orig.encode(enc) + rescue + else + assert_equal(true, s1.end_with?(s2), "#{encdump s1}.end_with?(#{encdump s2})") + end + end end def test_each_line -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/