JavaInterfaceMethodRef2.st
branchdevelopment
changeset 2908 064418faa2e3
parent 2820 1ab75f8aa9de
child 2992 732f9db2a195
--- a/JavaInterfaceMethodRef2.st	Fri Nov 08 10:11:49 2013 +0000
+++ b/JavaInterfaceMethodRef2.st	Mon Nov 11 09:48:58 2013 +0000
@@ -79,16 +79,17 @@
 findResolvedValue: doClassInit
     "Resolve reference and set valueCache."
     
-    valueCache := JavaResolver uniqueInstance 
-                resolveInterfaceMethodIdentifiedByRef: self.
+    valueCache := JavaResolver uniqueInstance resolveInterfaceMethodIdentifiedByRef: self.
+    valueCache mclass classInit. "/ Apparently, invocation of interface method initializes the interface   
     classCache := self classRef resolve: doClassInit.
-    classCache ifNil: [ self breakPoint: #mh ].
+    classCache isNil ifTrue: [ self breakPoint: #mh ].
     nameAndTypeCache := (constantPool at: nameAndTypeIndex) resolve.
-    nameAndTypeCache ifNil: [ self breakPoint: #mh ].
+    nameAndTypeCache isNil ifTrue: [ self breakPoint: #mh ].
 
     "Modified: / 18-05-2011 / 12:44:44 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
     "Created: / 09-02-2012 / 23:10:44 / mh <hlopik@gmail.com>"
     "Modified: / 12-10-2013 / 18:07:47 / Marcel Hlopko <marcel.hlopko@fit.cvut.cz>"
+    "Modified (format): / 09-11-2013 / 00:15:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !JavaInterfaceMethodRef2 methodsFor:'queries'!