xref: /aosp_15_r20/external/javassist/src/test/test4/JIRA195.java (revision f1fbf3c2ab775ce834e0af96b7a85bdc7a0eac65)
1*f1fbf3c2SXin Li package test4;
2*f1fbf3c2SXin Li 
3*f1fbf3c2SXin Li import javassist.ClassPool;
4*f1fbf3c2SXin Li import javassist.CtClass;
5*f1fbf3c2SXin Li import javassist.CtMethod;
6*f1fbf3c2SXin Li 
7*f1fbf3c2SXin Li public class JIRA195 {
run()8*f1fbf3c2SXin Li     public int run() { return test(3); }
9*f1fbf3c2SXin Li 
test(int i)10*f1fbf3c2SXin Li     public int test(int i) {
11*f1fbf3c2SXin Li         try {}
12*f1fbf3c2SXin Li         catch (Throwable t) {}
13*f1fbf3c2SXin Li         finally {
14*f1fbf3c2SXin Li             i = incByOne(i);
15*f1fbf3c2SXin Li         }
16*f1fbf3c2SXin Li 
17*f1fbf3c2SXin Li         return i;
18*f1fbf3c2SXin Li     }
19*f1fbf3c2SXin Li 
incByOne(int i)20*f1fbf3c2SXin Li     private int incByOne(int i) {
21*f1fbf3c2SXin Li         return i + 1;
22*f1fbf3c2SXin Li     }
23*f1fbf3c2SXin Li 
main(String[] args)24*f1fbf3c2SXin Li     public static void main(String[] args) throws Exception {
25*f1fbf3c2SXin Li         ClassPool cp = new ClassPool();
26*f1fbf3c2SXin Li         cp.appendClassPath("./target/test-classes");
27*f1fbf3c2SXin Li         CtClass cc = cp.get("test4.JIRA195");
28*f1fbf3c2SXin Li         CtMethod mth = cc.getDeclaredMethod("test");
29*f1fbf3c2SXin Li         mth.getMethodInfo().rebuildStackMap(cc.getClassPool());
30*f1fbf3c2SXin Li     }
31*f1fbf3c2SXin Li }
32