From ef9186ffd1433cdb5eaace15ae8dbb5b0bd267ab Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 16 Jan 2004 05:56:53 +0000 Subject: * eavl.c (proc_eq): compare also arguments and environment. [ruby-dev:22590] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@5472 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ eval.c | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0692de235..5524cde9c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Fri Jan 16 14:56:49 2004 Nobuyoshi Nakada + + * eavl.c (proc_eq): compare also arguments and environment. + [ruby-dev:22590] + Fri Jan 16 14:33:35 2004 Nobuyoshi Nakada * marshal.c (class2path): get class path and check referable. diff --git a/eval.c b/eval.c index 2ec0dca6f..1b769d58c 100644 --- a/eval.c +++ b/eval.c @@ -8212,8 +8212,10 @@ proc_eq(self, other) if (CLASS_OF(self) != CLASS_OF(other)) return Qfalse; Data_Get_Struct(self, struct BLOCK, data); Data_Get_Struct(other, struct BLOCK, data2); - if (data->body == data2->body) return Qtrue; - return Qfalse; + if (data->body != data2->body) return Qfalse; + if (data->var != data2->var) return Qfalse; + if (data->frame.uniq != data2->frame.uniq) return Qfalse; + return Qtrue; } /* -- cgit