|
38 | 38 | import org.objectweb.asm.ClassWriter; |
39 | 39 | import org.objectweb.asm.FieldVisitor; |
40 | 40 | import org.objectweb.asm.Label; |
| 41 | +import org.objectweb.asm.MethodVisitor; |
41 | 42 | import org.objectweb.asm.Type; |
42 | 43 | import org.objectweb.asm.commons.GeneratorAdapter; |
43 | 44 | import org.objectweb.asm.util.CheckClassAdapter; |
@@ -445,13 +446,14 @@ public void writeMethod(ClassVisitor classVisitor, @Nullable ObjectDef objectDef |
445 | 446 | if (methodDef.isSynthetic()) { |
446 | 447 | modifiersFlag |= ACC_SYNTHETIC; |
447 | 448 | } |
448 | | - GeneratorAdapter generatorAdapter = new GeneratorAdapter(classVisitor.visitMethod( |
| 449 | + MethodVisitor methodVisitor = classVisitor.visitMethod( |
449 | 450 | modifiersFlag, |
450 | 451 | name, |
451 | 452 | methodDescriptor, |
452 | 453 | SignatureWriterUtils.getMethodSignature(objectDef, methodDef), |
453 | 454 | null |
454 | | - ), modifiersFlag, name, methodDescriptor); |
| 455 | + ); |
| 456 | + GeneratorAdapter generatorAdapter = new GeneratorAdapter(methodVisitor, modifiersFlag, name, methodDescriptor); |
455 | 457 | for (AnnotationDef annotation : methodDef.getAnnotations()) { |
456 | 458 | generatorAdapter.visitAnnotation(TypeUtils.getType(annotation.getType(), null).getDescriptor(), true); |
457 | 459 | } |
@@ -510,7 +512,7 @@ public void writeMethod(ClassVisitor classVisitor, @Nullable ObjectDef objectDef |
510 | 512 | generatorAdapter.visitLabel(endMethod); |
511 | 513 | } |
512 | 514 | for (MethodContext.LocalData localsDatum : context.locals().values()) { |
513 | | - generatorAdapter.getDelegate().visitLocalVariable( |
| 515 | + methodVisitor.visitLocalVariable( |
514 | 516 | localsDatum.name(), |
515 | 517 | localsDatum.type().getDescriptor(), |
516 | 518 | null, |
|
0 commit comments