From 40fa8c710f916d3b44a8d133fc15b70f3cad813c Mon Sep 17 00:00:00 2001 From: Andy Clement Date: Wed, 27 Sep 2017 14:44:32 -0700 Subject: [PATCH] Pass explicitly whether it is an interface target If you only let it determine it from the INVOKE instruction this can make a mistake when using INVOKESTATIC with an interface target. --- weaver/src/org/aspectj/weaver/bcel/Utility.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/weaver/src/org/aspectj/weaver/bcel/Utility.java b/weaver/src/org/aspectj/weaver/bcel/Utility.java index afbfbc7ef..cd1fd4ab8 100644 --- a/weaver/src/org/aspectj/weaver/bcel/Utility.java +++ b/weaver/src/org/aspectj/weaver/bcel/Utility.java @@ -212,7 +212,7 @@ public class Utility { kind = Constants.INVOKEVIRTUAL; } - return fact.createInvoke(m.getClassName(), m.getName(), m.getReturnType(), m.getArgumentTypes(), kind); + return fact.createInvoke(m.getClassName(), m.getName(), m.getReturnType(), m.getArgumentTypes(), kind, m.getEnclosingClass().isInterface()); } /** -- 2.39.5