From 0f95c6338acf6289cc34b28f814e8bf9e19aaee5 Mon Sep 17 00:00:00 2001 From: jochen Date: Fri, 2 Jul 1999 18:45:00 +0000 Subject: [PATCH] allow the exception slot of class$ method to be some other slot git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@977 379699f6-c40d-0410-875b-85095c16579e --- jode/jode/jvm/SyntheticAnalyzer.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/jode/jode/jvm/SyntheticAnalyzer.java b/jode/jode/jvm/SyntheticAnalyzer.java index ac05641..16a0c7f 100644 --- a/jode/jode/jvm/SyntheticAnalyzer.java +++ b/jode/jode/jvm/SyntheticAnalyzer.java @@ -86,6 +86,7 @@ public class SyntheticAnalyzer implements jode.bytecode.Opcodes { if (excHandlers.length != 1) return false; + int excSlot = -1; Instruction instr = bytecode.getFirstInstr(); if (excHandlers[0].start != instr) return false; @@ -94,7 +95,9 @@ public class SyntheticAnalyzer implements jode.bytecode.Opcodes { return false; if (i==0 && instr.localSlot != 0) return false; - if ((i == 3 || i == 6) && instr.localSlot != 1) + if (i == 3) + excSlot = instr.localSlot; + if (i == 6 && instr.localSlot != excSlot) return false; if (i == 2 && excHandlers[0].end != instr) return false;