Browse Source

fixed JASSIST-186


git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@702 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
tags/log
chiba 11 years ago
parent
commit
d5500a2a6f

+ 2
- 2
src/main/javassist/CtClass.java View File

@@ -69,7 +69,7 @@ public abstract class CtClass {
/**
* The version number of this release.
*/
public static final String version = "3.17.1-GA";
public static final String version = "3.18.0-GA";

/**
* Prints the version number and the copyright notice.
@@ -80,7 +80,7 @@ public abstract class CtClass {
*/
public static void main(String[] args) {
System.out.println("Javassist version " + CtClass.version);
System.out.println("Copyright (C) 1999-2012 Shigeru Chiba."
System.out.println("Copyright (C) 1999-2013 Shigeru Chiba."
+ " All Rights Reserved.");
}


+ 2
- 2
src/main/javassist/bytecode/Bytecode.java View File

@@ -1083,7 +1083,7 @@ public class Bytecode extends ByteVector implements Cloneable, Opcode {
public void addInvokevirtual(int clazz, String name, String desc) {
add(INVOKEVIRTUAL);
addIndex(constPool.addMethodrefInfo(clazz, name, desc));
growStack(Descriptor.dataSize(desc)); // assume CosntPool#REF_invokeStatic
growStack(Descriptor.dataSize(desc) - 1);
}

/**
@@ -1170,7 +1170,7 @@ public class Bytecode extends ByteVector implements Cloneable, Opcode {
add(INVOKEDYNAMIC);
addIndex(dyn);
add(0, 0);
growStack(Descriptor.dataSize(desc) - 1);
growStack(Descriptor.dataSize(desc)); // assume ConstPool#REF_invokeStatic
}

/**

+ 11
- 0
src/test/javassist/JvstTest4.java View File

@@ -817,4 +817,15 @@ public class JvstTest4 extends JvstTestRoot {
assertEquals(10, invoke(obj, "test33"));
assertEquals(100, invoke(obj, "test44"));
}

public void testJIRA186() throws Exception {
CtClass cc = sloader.get("test4.JIRA186");
cc.getDeclaredMethod("test").insertBefore("{" +
" java.util.List l = new java.util.ArrayList();" +
" l.add(this.toString());" +
"}");
cc.writeFile();
Object obj = make(cc.getName());
assertEquals(1, invoke(obj, "test"));
}
}

Loading…
Cancel
Save