This commit is contained in:
Redkale
2016-07-07 09:46:33 +08:00
parent 0d6a778d9c
commit a996ab5eb5
5 changed files with 18 additions and 14 deletions

View File

@@ -17,6 +17,7 @@ import java.nio.*;
import java.util.*; import java.util.*;
import java.util.concurrent.*; import java.util.concurrent.*;
import jdk.internal.org.objectweb.asm.*; import jdk.internal.org.objectweb.asm.*;
import static jdk.internal.org.objectweb.asm.ClassWriter.COMPUTE_FRAMES;
import static jdk.internal.org.objectweb.asm.Opcodes.*; import static jdk.internal.org.objectweb.asm.Opcodes.*;
/** /**
@@ -191,7 +192,7 @@ public abstract class BasedHttpServlet extends HttpServlet {
} }
} }
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
ClassWriter cw = new ClassWriter(0); ClassWriter cw = new ClassWriter(COMPUTE_FRAMES);
FieldVisitor fv; FieldVisitor fv;
MethodVisitor mv; MethodVisitor mv;
AnnotationVisitor av0; AnnotationVisitor av0;

View File

@@ -15,6 +15,7 @@ import java.util.function.*;
import java.util.logging.*; import java.util.logging.*;
import javax.annotation.*; import javax.annotation.*;
import jdk.internal.org.objectweb.asm.*; import jdk.internal.org.objectweb.asm.*;
import static jdk.internal.org.objectweb.asm.ClassWriter.COMPUTE_FRAMES;
import static jdk.internal.org.objectweb.asm.Opcodes.*; import static jdk.internal.org.objectweb.asm.Opcodes.*;
import jdk.internal.org.objectweb.asm.Type; import jdk.internal.org.objectweb.asm.Type;
import org.redkale.convert.bson.*; import org.redkale.convert.bson.*;
@@ -181,9 +182,9 @@ public final class SncpDynServlet extends SncpServlet {
* } * }
* </pre></blockquote> * </pre></blockquote>
* *
* @param service Service * @param service Service
* @param actionid 操作ID * @param actionid 操作ID
* @param method 方法 * @param method 方法
* *
* @return SncpServletAction * @return SncpServletAction
*/ */
@@ -207,7 +208,7 @@ public final class SncpDynServlet extends SncpServlet {
} }
} }
//------------------------------------------------------------- //-------------------------------------------------------------
ClassWriter cw = new ClassWriter(0); ClassWriter cw = new ClassWriter(COMPUTE_FRAMES);
FieldVisitor fv; FieldVisitor fv;
AsmMethodVisitor mv; AsmMethodVisitor mv;
@@ -371,9 +372,8 @@ public final class SncpDynServlet extends SncpServlet {
mv.visitMethodInsn(INVOKEVIRTUAL, convertName, "convertTo", "(" + convertWriterDesc + "Ljava/lang/reflect/Type;Ljava/lang/Object;)V", false); mv.visitMethodInsn(INVOKEVIRTUAL, convertName, "convertTo", "(" + convertWriterDesc + "Ljava/lang/reflect/Type;Ljava/lang/Object;)V", false);
mv.visitInsn(RETURN); mv.visitInsn(RETURN);
store++; store++;
if (maxStack < 10) maxStack = 10;
} }
mv.visitMaxs(maxStack + 10, store + 10); mv.visitMaxs(maxStack, store);
mv.visitEnd(); mv.visitEnd();
} }
cw.visitEnd(); cw.visitEnd();

View File

@@ -8,6 +8,7 @@ package org.redkale.util;
import java.util.*; import java.util.*;
import java.util.function.*; import java.util.function.*;
import jdk.internal.org.objectweb.asm.*; import jdk.internal.org.objectweb.asm.*;
import static jdk.internal.org.objectweb.asm.ClassWriter.COMPUTE_FRAMES;
import static jdk.internal.org.objectweb.asm.Opcodes.*; import static jdk.internal.org.objectweb.asm.Opcodes.*;
/** /**
@@ -442,7 +443,7 @@ public interface Attribute<T, F> {
} catch (Throwable ex) { } catch (Throwable ex) {
} }
//--------------------------------------------------- //---------------------------------------------------
final ClassWriter cw = new ClassWriter(0); final ClassWriter cw = new ClassWriter(COMPUTE_FRAMES);
MethodVisitor mv; MethodVisitor mv;
cw.visit(V1_8, ACC_PUBLIC + ACC_FINAL + ACC_SUPER, newDynName, "Ljava/lang/Object;L" + supDynName + "<" + interDesc + columnDesc + ">;", "java/lang/Object", new String[]{supDynName}); cw.visit(V1_8, ACC_PUBLIC + ACC_FINAL + ACC_SUPER, newDynName, "Ljava/lang/Object;L" + supDynName + "<" + interDesc + columnDesc + ">;", "java/lang/Object", new String[]{supDynName});

View File

@@ -4,6 +4,7 @@ import java.lang.reflect.Modifier;
import java.util.function.Predicate; import java.util.function.Predicate;
import static jdk.internal.org.objectweb.asm.Opcodes.*; import static jdk.internal.org.objectweb.asm.Opcodes.*;
import jdk.internal.org.objectweb.asm.*; import jdk.internal.org.objectweb.asm.*;
import static jdk.internal.org.objectweb.asm.ClassWriter.COMPUTE_FRAMES;
/** /**
* *
@@ -41,7 +42,7 @@ public interface Reproduce<D, S> {
} catch (Exception ex) { } catch (Exception ex) {
} }
// ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------
ClassWriter cw = new ClassWriter(0); ClassWriter cw = new ClassWriter(COMPUTE_FRAMES);
FieldVisitor fv; FieldVisitor fv;
MethodVisitor mv; MethodVisitor mv;
AnnotationVisitor av0; AnnotationVisitor av0;

View File

@@ -8,6 +8,7 @@ import java.lang.reflect.Type;
import java.lang.reflect.*; import java.lang.reflect.*;
import java.util.*; import java.util.*;
import jdk.internal.org.objectweb.asm.*; import jdk.internal.org.objectweb.asm.*;
import static jdk.internal.org.objectweb.asm.ClassWriter.COMPUTE_FRAMES;
import static jdk.internal.org.objectweb.asm.Opcodes.*; import static jdk.internal.org.objectweb.asm.Opcodes.*;
/** /**
@@ -139,7 +140,7 @@ public abstract class TypeToken<T> {
break; break;
} }
} }
ClassWriter cw = new ClassWriter(0); ClassWriter cw = new ClassWriter(COMPUTE_FRAMES);
FieldVisitor fv; FieldVisitor fv;
MethodVisitor mv; MethodVisitor mv;
cw.visit(V1_8, ACC_PUBLIC + ACC_FINAL + ACC_SUPER, newDynName, null, "java/lang/Object", null); cw.visit(V1_8, ACC_PUBLIC + ACC_FINAL + ACC_SUPER, newDynName, null, "java/lang/Object", null);