You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sirona.apache.org by rm...@apache.org on 2014/02/23 22:30:24 UTC
svn commit: r1571095 - in
/incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent:
SironaClassVisitor.java SironaTransformer.java
Author: rmannibucau
Date: Sun Feb 23 21:30:24 2014
New Revision: 1571095
URL: http://svn.apache.org/r1571095
Log:
in java 7 we need ClassWriter.COMPUTE_FRAMES
Modified:
incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaClassVisitor.java
incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaTransformer.java
Modified: incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaClassVisitor.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaClassVisitor.java?rev=1571095&r1=1571094&r2=1571095&view=diff
==============================================================================
--- incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaClassVisitor.java (original)
+++ incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaClassVisitor.java Sun Feb 23 21:30:24 2014
@@ -228,12 +228,6 @@ public class SironaClassVisitor extends
returnValue();
}
- @Override
- public void visitEnd() {
- visitMaxs(0, 0);
- super.visitEnd();
- }
-
private static class Primitive {
private Type wrapper;
private Method method;
Modified: incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaTransformer.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaTransformer.java?rev=1571095&r1=1571094&r2=1571095&view=diff
==============================================================================
--- incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaTransformer.java (original)
+++ incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaTransformer.java Sun Feb 23 21:30:24 2014
@@ -50,7 +50,7 @@ public class SironaTransformer implement
new ClassReader(classfileBuffer).accept(keyVisitor, ClassReader.SKIP_DEBUG);
if (keyVisitor.hasAdviced()) {
final ClassReader reader = new ClassReader(classfileBuffer);
- final ClassWriter writer = new ClassWriter(reader, ClassWriter.COMPUTE_MAXS);
+ final ClassWriter writer = new ClassWriter(reader, ClassWriter.COMPUTE_FRAMES);
final SironaClassVisitor advisor = new SironaClassVisitor(writer, className, keyVisitor.getKeys());
reader.accept(advisor, ClassReader.SKIP_DEBUG);
Fwd: svn commit: r1571095 - in /incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent:
SironaClassVisitor.java SironaTransformer.java
Posted by Romain Manni-Bucau <rm...@gmail.com>.
Hi guys,
got an error on this class
https://gist.github.com/anonymous/04db21e65e954faaa767 without this
change (about stack map table):
Caused by: java.lang.VerifyError: StackMapTable error: bad offset
Exception Details:
Location:
com/github/rmannibucau/genovajug/batch/writer/SquareWriter.writeItems(Ljava/util/List;)V
@0: getstatic
Reason:
Invalid stackmap specification.
Current Frame:
bci: @65536
flags: { }
locals: { 'com/github/rmannibucau/genovajug/batch/writer/SquareWriter',
'java/util/List' }
stack: { }
Bytecode:
0000000: b200 462a b800 4d4d 2a2b b600 4f2c 01b6
0000010: 0052 b14e 2c2d b600 582d bf
Exception Handler Table:
bci [8, 19] => handler: 19
Stackmap Table:
full_frame(@19,{Object[#7],Object[#42],Object[#73]},{Object[#84]})
chop_frame(@65536,1)
full_frame(@65555,{Object[#7],Object[#42],Object[#73]},{Object[#84]})
Please test against your apps if you can to see side effects of this change.
Romain Manni-Bucau
Twitter: @rmannibucau
Blog: http://rmannibucau.wordpress.com/
LinkedIn: http://fr.linkedin.com/in/rmannibucau
Github: https://github.com/rmannibucau
---------- Forwarded message ----------
From: <rm...@apache.org>
Date: 2014-02-23 22:30 GMT+01:00
Subject: svn commit: r1571095 - in
/incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent:
SironaClassVisitor.java SironaTransformer.java
To: commits@sirona.incubator.apache.org
Author: rmannibucau
Date: Sun Feb 23 21:30:24 2014
New Revision: 1571095
URL: http://svn.apache.org/r1571095
Log:
in java 7 we need ClassWriter.COMPUTE_FRAMES
Modified:
incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaClassVisitor.java
incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaTransformer.java
Modified: incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaClassVisitor.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaClassVisitor.java?rev=1571095&r1=1571094&r2=1571095&view=diff
==============================================================================
--- incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaClassVisitor.java
(original)
+++ incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaClassVisitor.java
Sun Feb 23 21:30:24 2014
@@ -228,12 +228,6 @@ public class SironaClassVisitor extends
returnValue();
}
- @Override
- public void visitEnd() {
- visitMaxs(0, 0);
- super.visitEnd();
- }
-
private static class Primitive {
private Type wrapper;
private Method method;
Modified: incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaTransformer.java
URL: http://svn.apache.org/viewvc/incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaTransformer.java?rev=1571095&r1=1571094&r2=1571095&view=diff
==============================================================================
--- incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaTransformer.java
(original)
+++ incubator/sirona/trunk/agent/javaagent/src/main/java/org/apache/sirona/javaagent/SironaTransformer.java
Sun Feb 23 21:30:24 2014
@@ -50,7 +50,7 @@ public class SironaTransformer implement
new ClassReader(classfileBuffer).accept(keyVisitor,
ClassReader.SKIP_DEBUG);
if (keyVisitor.hasAdviced()) {
final ClassReader reader = new ClassReader(classfileBuffer);
- final ClassWriter writer = new ClassWriter(reader,
ClassWriter.COMPUTE_MAXS);
+ final ClassWriter writer = new ClassWriter(reader,
ClassWriter.COMPUTE_FRAMES);
final SironaClassVisitor advisor = new
SironaClassVisitor(writer, className, keyVisitor.getKeys());
reader.accept(advisor, ClassReader.SKIP_DEBUG);