breakpoint with lazy native method
authorcg
Thu, 27 Jan 2000 12:04:33 +0000
changeset 660 9e916dc2ff18
parent 659 5b92a855ef25
child 661 49ce5b1c223a
breakpoint with lazy native method
JavaNativeMethod.st
--- a/JavaNativeMethod.st	Thu Jan 27 12:03:54 2000 +0000
+++ b/JavaNativeMethod.st	Thu Jan 27 12:04:33 2000 +0000
@@ -48,7 +48,7 @@
 !JavaNativeMethod methodsFor:'vm support'!
 
 nativeMethodInvokation
-    |nm sel mthd|
+    |nm sel mthd sender|
 
     (mthd := nativeImplementation) isNil ifTrue:[
         nm := selector copyWithoutLast:signature size.
@@ -56,9 +56,14 @@
 
         mthd := (JavaVM class compiledMethodAt:sel).
         (mthd isNil or:[mthd isLazyMethod]) ifTrue:[
+            sender := thisContext sender.
+            sender sender selector == #noByteCode ifTrue:[
+                sender := sender sender.
+self halt.
+            ].
             ^ JavaVM 
                 perform:sel
-                with:thisContext sender.
+                with:sender.
         ].
         nativeImplementation := mthd.
     ].
@@ -70,12 +75,12 @@
         search:JavaVM class
         sender:nil
 
-    "Modified: / 25.9.1999 / 23:10:29 / cg"
+    "Modified: / 27.1.2000 / 02:18:41 / cg"
 ! !
 
 !JavaNativeMethod class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaNativeMethod.st,v 1.4 1999/12/24 02:16:37 cg Exp $'
+    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaNativeMethod.st,v 1.5 2000/01/27 12:04:33 cg Exp $'
 ! !
 JavaNativeMethod initialize!