diff --git a/ChangeLog b/ChangeLog index aee6e25d13..6537d8a83a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Sun Oct 07 15:48:40 2007 Koichi Sasada + + * insns.def (opt_eq): fix to use rb_str_equal(). + Sat Oct 6 23:14:54 2007 Yukihiro Matsumoto * string.c (rb_str_to_i): update RDoc since base can be any value diff --git a/insns.def b/insns.def index d5a6fe7b63..ee6de0a845 100644 --- a/insns.def +++ b/insns.def @@ -1694,21 +1694,7 @@ opt_eq else if (HEAP_CLASS_OF(recv) == rb_cString && HEAP_CLASS_OF(obj) == rb_cString && BASIC_OP_UNREDEFINED_P(BOP_EQ)) { - - VALUE str1 = recv; - VALUE str2 = obj; - val = Qtrue; - do { - if (str1 == str2) break; - if (!ENCODING_GET(str1) && !ENCODING_GET(str2)) { - if (RSTRING_LEN(str1) == RSTRING_LEN(str2)) { - int cmp = memcmp(RSTRING_PTR(str1), RSTRING_PTR(str2), - RSTRING_LEN(str1)); - if (!cmp) break; - } - } - val = rb_str_equal(str1, str2); - } while (0); + val = rb_str_equal(recv, obj); } else { goto INSN_LABEL(normal_dispatch); diff --git a/version.h b/version.h index 78ccad4bb2..1ca86152a8 100644 --- a/version.h +++ b/version.h @@ -1,7 +1,7 @@ #define RUBY_VERSION "1.9.0" -#define RUBY_RELEASE_DATE "2007-10-06" +#define RUBY_RELEASE_DATE "2007-10-07" #define RUBY_VERSION_CODE 190 -#define RUBY_RELEASE_CODE 20071006 +#define RUBY_RELEASE_CODE 20071007 #define RUBY_PATCHLEVEL 0 #define RUBY_VERSION_MAJOR 1 @@ -9,7 +9,7 @@ #define RUBY_VERSION_TEENY 0 #define RUBY_RELEASE_YEAR 2007 #define RUBY_RELEASE_MONTH 10 -#define RUBY_RELEASE_DAY 6 +#define RUBY_RELEASE_DAY 7 #ifdef RUBY_EXTERN RUBY_EXTERN const char ruby_version[];