src/JavaExceptionTableEntry.st
branchjk_new_structure
changeset 1692 561d5ac3f2df
parent 1155 d6f6d5fc0343
--- a/src/JavaExceptionTableEntry.st	Mon Sep 03 14:57:38 2012 +0000
+++ b/src/JavaExceptionTableEntry.st	Mon Sep 03 18:04:13 2012 +0000
@@ -142,21 +142,23 @@
         (catchType == 0) ifTrue:[^ handlerPC].
         (catchType isNil) ifTrue:[^ handlerPC].
         cls := aMethod javaClass.
-        catchType := catchType javaClass.
+        exception notNil ifTrue:[
+            catchType := catchType javaClass.
 
-        (catchType isKindOf:JavaClass) ifFalse:[
-            self halt.
+            (catchType isKindOf:JavaClass) ifFalse:[
+                self halt.
+                ^ nil
+            ].
+            (exception isKindOf:catchType) ifTrue:[
+                ^ handlerPC
+            ].
             ^ nil
-        ].
-        (exception isKindOf:catchType) ifTrue:[
-            ^ handlerPC
-        ].
-        ^ nil
+        ]
     ].
     ^ nil
 
     "Modified: / 07-01-1998 / 15:30:14 / cg"
-    "Modified: / 31-05-2011 / 09:53:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 03-09-2012 / 18:50:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 startPC:start_pc endPC:end_pc handlerPC:handler_pc catchType:catch_type