From 49dc00ea8faf0509ebbca718d7e4c76c3370219f Mon Sep 17 00:00:00 2001 From: matz Date: Mon, 22 May 2006 07:01:53 +0000 Subject: * eval.c (umethod_bind): should not update original class. [ruby-dev:28636] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8@10171 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- eval.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'eval.c') diff --git a/eval.c b/eval.c index eebb663bc..6bb236b4a 100644 --- a/eval.c +++ b/eval.c @@ -9179,12 +9179,12 @@ umethod_bind(method, recv) VALUE method, recv; { struct METHOD *data, *bound; - VALUE rklass = CLASS_OF(recv), klass = rklass; + VALUE rklass = CLASS_OF(recv); Data_Get_Struct(method, struct METHOD, data); if (data->rklass != rklass) { if (FL_TEST(data->rklass, FL_SINGLETON)) { - rb_raise(rb_eTypeError, "singleton method called for a different object"); + rb_raise(rb_eTypeError, "singleton method bound for a different object"); } if (TYPE(data->rklass) == T_MODULE) { st_table *m_tbl = RCLASS(data->rklass)->m_tbl; @@ -9203,7 +9203,6 @@ umethod_bind(method, recv) method = Data_Make_Struct(rb_cMethod,struct METHOD,bm_mark,free,bound); *bound = *data; bound->recv = recv; - bound->klass = klass; bound->rklass = rklass; return method; -- cgit