From fd23f145e6deee2315416a916bf8990bea44e7c2 Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 16 Jan 2004 05:56:53 +0000 Subject: [PATCH] * eavl.c (proc_eq): compare also arguments and environment. [ruby-dev:22590] git-svn-id: svn+ssh://ci.ruby-lang.org/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 0692de2351..5524cde9c9 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 2ec0dca6fa..1b769d58c9 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; } /*