diff options
author | Norbert Schneider <norbert.schneider@code-intelligence.com> | 2023-06-12 13:10:24 +0200 |
---|---|---|
committer | Norbert Schneider <mail@bertschneider.de> | 2023-06-12 14:02:12 +0200 |
commit | aaae641939818ec9e078c8f5e6dac5a686eacde9 (patch) | |
tree | 2d9d1907bff580234a7a400c7ce850eb20937dc9 | |
parent | fc0cb5df53abfdbeec805d3d6f1d4ff1e34f9615 (diff) | |
download | jazzer-api-aaae641939818ec9e078c8f5e6dac5a686eacde9.tar.gz |
Ignore JetBrains classes during instrumentation
Some JetBrains products interact badly with Jazzer's agent /
instrumentation, e.g. their coverage agent. It's reasonable to ignore
all JetBrains classes.
-rw-r--r-- | src/main/java/com/code_intelligence/jazzer/junit/AgentConfigurator.java | 2 | ||||
-rw-r--r-- | src/main/java/com/code_intelligence/jazzer/utils/ClassNameGlobber.kt | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/src/main/java/com/code_intelligence/jazzer/junit/AgentConfigurator.java b/src/main/java/com/code_intelligence/jazzer/junit/AgentConfigurator.java index f662eb59..1f286a31 100644 --- a/src/main/java/com/code_intelligence/jazzer/junit/AgentConfigurator.java +++ b/src/main/java/com/code_intelligence/jazzer/junit/AgentConfigurator.java @@ -65,7 +65,7 @@ class AgentConfigurator { // Do not hook common IDE and JUnit classes and their dependencies. System.setProperty("jazzer.custom_hook_excludes", String.join(File.pathSeparator, "com.google.testing.junit.**", "com.intellij.**", - "io.github.classgraph.**", "junit.framework.**", "net.bytebuddy.**", + "org.jetbrains.**", "io.github.classgraph.**", "junit.framework.**", "net.bytebuddy.**", "org.apiguardian.**", "org.assertj.core.**", "org.hamcrest.**", "org.junit.**", "org.opentest4j.**", "org.mockito.**", "org.apache.maven.**", "org.gradle.**")); } diff --git a/src/main/java/com/code_intelligence/jazzer/utils/ClassNameGlobber.kt b/src/main/java/com/code_intelligence/jazzer/utils/ClassNameGlobber.kt index ce45ea18..c6fa20a7 100644 --- a/src/main/java/com/code_intelligence/jazzer/utils/ClassNameGlobber.kt +++ b/src/main/java/com/code_intelligence/jazzer/utils/ClassNameGlobber.kt @@ -48,6 +48,7 @@ private val BASE_EXCLUDED_CLASS_NAME_GLOBS = listOf( "org.junit.**", // dependency of @FuzzTest "org.mockito.**", // can cause instrumentation cycles "net.bytebuddy.**", // ignore Byte Buddy, though it's probably shaded + "org.jetbrains.**", // ignore JetBrains products (coverage agent) ) + if (IS_BAZEL_COVERAGE_RUN) ADDITIONAL_EXCLUDED_NAME_GLOBS_FOR_BAZEL_COVERAGE else listOf() class ClassNameGlobber(includes: List<String>, excludes: List<String>) { |