diff -r 09ef8479a874 -r 50473c5384bb MessageNode.st --- a/MessageNode.st Mon Jan 25 12:30:37 2010 +0100 +++ b/MessageNode.st Mon Jan 25 12:35:04 2010 +0100 @@ -1036,15 +1036,17 @@ ! evaluateIn:anEnvironment forCascade:forCascade - |retVal r a1 a2 a3 nargs argValueArray class sel| + |retVal defClass r a1 a2 a3 nargs argValueArray class sel| sel := self evaluationSelector. receiver isSuper ifTrue:[ r := receiver value. + + defClass := receiver definingClass. receiver isHere ifTrue:[ - class := receiver definingClass. + class := defClass. ] ifFalse:[ - class := receiver definingClass superclass. + class := defClass superclass. ]. argArray notNil ifTrue:[ argValueArray := argArray collect:[:arg | arg evaluateIn:anEnvironment]. @@ -2983,9 +2985,9 @@ !MessageNode class methodsFor:'documentation'! version - ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.169 2010-01-18 16:01:23 cg Exp $' + ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.170 2010-01-25 11:35:04 cg Exp $' ! version_CVS - ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.169 2010-01-18 16:01:23 cg Exp $' + ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.170 2010-01-25 11:35:04 cg Exp $' ! !