aboutsummaryrefslogtreecommitdiff
path: root/org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/CoverageTransformer.java
diff options
context:
space:
mode:
Diffstat (limited to 'org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/CoverageTransformer.java')
-rw-r--r--org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/CoverageTransformer.java13
1 files changed, 5 insertions, 8 deletions
diff --git a/org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/CoverageTransformer.java b/org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/CoverageTransformer.java
index b5ed7e18..78d7b5e5 100644
--- a/org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/CoverageTransformer.java
+++ b/org.jacoco.agent.rt/src/org/jacoco/agent/rt/internal/CoverageTransformer.java
@@ -32,8 +32,6 @@ public class CoverageTransformer implements ClassFileTransformer {
AGENT_PREFIX = toVMName(name.substring(0, name.lastIndexOf('.')));
}
- private final IRuntime runtime;
-
private final Instrumenter instrumenter;
private final IExceptionLogger logger;
@@ -58,7 +56,6 @@ public class CoverageTransformer implements ClassFileTransformer {
*/
public CoverageTransformer(final IRuntime runtime,
final AgentOptions options, final IExceptionLogger logger) {
- this.runtime = runtime;
this.instrumenter = new Instrumenter(runtime);
this.logger = logger;
// Class names will be reported in VM notation:
@@ -73,17 +70,17 @@ public class CoverageTransformer implements ClassFileTransformer {
final ProtectionDomain protectionDomain,
final byte[] classfileBuffer) throws IllegalClassFormatException {
+ if (classBeingRedefined != null) {
+ // We do not support class retransformation.
+ return null;
+ }
+
if (!filter(loader, classname)) {
return null;
}
try {
classFileDumper.dump(classname, classfileBuffer);
- if (classBeingRedefined != null) {
- // For redefined classes we must clear the execution data
- // reference as probes might have changed.
- runtime.disconnect(classBeingRedefined);
- }
return instrumenter.instrument(classfileBuffer, classname);
} catch (final Exception ex) {
final IllegalClassFormatException wrapper = new IllegalClassFormatException(