From 7eb1d3f8b52e4c06ec1268fb2618294d29d799c1 Mon Sep 17 00:00:00 2001 From: hoenicke Date: Fri, 15 Dec 2000 20:56:57 +0000 Subject: [PATCH] Forgot to calc stacksize for exception handlers. git-svn-id: https://svn.code.sf.net/p/jode/code/branches/branch_1_1@1282 379699f6-c40d-0410-875b-85095c16579e --- jode/jode/bytecode/BytecodeInfo.java.in | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/jode/jode/bytecode/BytecodeInfo.java.in b/jode/jode/bytecode/BytecodeInfo.java.in index 025700a..52decfc 100644 --- a/jode/jode/bytecode/BytecodeInfo.java.in +++ b/jode/jode/bytecode/BytecodeInfo.java.in @@ -949,6 +949,16 @@ public class BytecodeInfo extends BinaryInfo implements Opcodes { todo.push(next); } } + for (int i=0; i< exceptionHandlers.length; i++) { + if (exceptionHandlers[i].start.compareTo(instr) <= 0 + && exceptionHandlers[i].end.compareTo(instr) >= 0) { + int catcher = exceptionHandlers[i].catcher.getAddr(); + if (stackHeights[catcher] == -1) { + stackHeights[catcher] = 1; + todo.push(exceptionHandlers[i].catcher); + } + } + } } // System.err.println("New maxStack: "+maxStack+" Locals: "+maxLocals); }