--- 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