Преглед на файлове

Merge pull request #21 from baron1405/javaflow

JASSIST-234.  Support Javaflow NEW bytecode pattern for replacement.
tags/rel_3_19_0_ga
Shigeru Chiba преди 9 години
родител
ревизия
e37dbe4e33
променени са 1 файла, в които са добавени 3 реда и са изтрити 2 реда
  1. 3
    2
      src/main/javassist/expr/NewExpr.java

+ 3
- 2
src/main/javassist/expr/NewExpr.java Целия файл

@@ -140,8 +140,9 @@ public class NewExpr extends Expr {

private int canReplace() throws CannotCompileException {
int op = iterator.byteAt(newPos + 3);
if (op == Opcode.DUP)
return 4;
if (op == Opcode.DUP) // Typical single DUP or Javaflow DUP DUP2_X2 POP2
return ((iterator.byteAt(newPos + 4) == Opcode.DUP2_X2
&& iterator.byteAt(newPos + 5) == Opcode.POP2)) ? 6 : 4;
else if (op == Opcode.DUP_X1
&& iterator.byteAt(newPos + 4) == Opcode.SWAP)
return 5;

Loading…
Отказ
Запис