diff --git a/ChangeLog b/ChangeLog index 9a1c2871d0..64b76e748d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Wed Jan 23 10:18:10 2008 Yukihiro Matsumoto + + * eval_method.c (rb_export_method): set ruby_vm_redefined_flag for + visibility change as well. reported by K.Kosako in + http://d.hatena.ne.jp/kkos/20080122#1201012720. + Tue Jan 22 22:26:23 2008 Yusuke Endoh * test/ruby/test_bignum.rb: change some tests because rational diff --git a/eval_method.c b/eval_method.c index ff26ebe083..f7043c0069 100644 --- a/eval_method.c +++ b/eval_method.c @@ -388,6 +388,9 @@ rb_export_method(VALUE klass, ID name, ID noex) rb_print_undef(klass, name, 0); } if (fbody->nd_body->nd_noex != noex) { + if (nd_type(fbody->nd_body->nd_body) == NODE_CFUNC) { + rb_vm_check_redefinition_opt_method(fbody); + } if (klass == origin) { fbody->nd_body->nd_noex = noex; } diff --git a/version.h b/version.h index e4098b5776..2d9eb6b2ad 100644 --- a/version.h +++ b/version.h @@ -1,7 +1,7 @@ #define RUBY_VERSION "1.9.0" -#define RUBY_RELEASE_DATE "2008-01-22" +#define RUBY_RELEASE_DATE "2008-01-23" #define RUBY_VERSION_CODE 190 -#define RUBY_RELEASE_CODE 20080122 +#define RUBY_RELEASE_CODE 20080123 #define RUBY_PATCHLEVEL 0 #define RUBY_VERSION_MAJOR 1 @@ -9,7 +9,7 @@ #define RUBY_VERSION_TEENY 0 #define RUBY_RELEASE_YEAR 2008 #define RUBY_RELEASE_MONTH 1 -#define RUBY_RELEASE_DAY 22 +#define RUBY_RELEASE_DAY 23 #ifdef RUBY_EXTERN RUBY_EXTERN const char ruby_version[];