diff --git a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/ReferenceCreator.java b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/ReferenceCreator.java index e2052c546c3..a43d1195918 100644 --- a/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/ReferenceCreator.java +++ b/dd-java-agent/agent-tooling/src/main/java/datadog/trace/agent/tooling/muzzle/ReferenceCreator.java @@ -390,6 +390,9 @@ public void visitMethodInsn( @Override public void visitTypeInsn(final int opcode, final String stype) { + if (ignoreReference(stype)) { + return; + } Type type = underlyingType(Type.getObjectType(stype)); if (ignoreReference(type.getInternalName())) { diff --git a/dd-java-agent/agent-tooling/src/test/java/datadog/trace/agent/tooling/muzzle/TestAdviceClasses.java b/dd-java-agent/agent-tooling/src/test/java/datadog/trace/agent/tooling/muzzle/TestAdviceClasses.java index 2d44c7de6b0..5ee1bb20ef2 100644 --- a/dd-java-agent/agent-tooling/src/test/java/datadog/trace/agent/tooling/muzzle/TestAdviceClasses.java +++ b/dd-java-agent/agent-tooling/src/test/java/datadog/trace/agent/tooling/muzzle/TestAdviceClasses.java @@ -16,6 +16,10 @@ public static void methodBodyAdvice() { a.b.aMethodWithArrays(new String[0]); B.aStaticMethod(); A.staticB.aMethod("bar"); + Object barr = new byte[0]; + if (barr instanceof byte[]) { + barr = null; + } } public static class A {