aboutsummaryrefslogtreecommitdiff
path: root/org.jacoco.core/src/org/jacoco/core/internal/analysis
diff options
context:
space:
mode:
authorMarc R. Hoffmann <hoffmann@mountainminds.com>2013-06-01 12:19:09 +0200
committerMarc R. Hoffmann <hoffmann@mountainminds.com>2013-06-01 12:19:09 +0200
commite048201f115d862e1b99e78249ef9e720212c201 (patch)
treee127902553a8c7b40e8c1a847b619ffcfba1482b /org.jacoco.core/src/org/jacoco/core/internal/analysis
parent73a2235e02b93b114b2dee69b05ab07ae5a0693a (diff)
downloadjacoco-e048201f115d862e1b99e78249ef9e720212c201.tar.gz
Issue error when analyzing instrumented classes (GitHub #108)
Diffstat (limited to 'org.jacoco.core/src/org/jacoco/core/internal/analysis')
-rw-r--r--org.jacoco.core/src/org/jacoco/core/internal/analysis/ClassAnalyzer.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/org.jacoco.core/src/org/jacoco/core/internal/analysis/ClassAnalyzer.java b/org.jacoco.core/src/org/jacoco/core/internal/analysis/ClassAnalyzer.java
index ee8f05a2..9fa52889 100644
--- a/org.jacoco.core/src/org/jacoco/core/internal/analysis/ClassAnalyzer.java
+++ b/org.jacoco.core/src/org/jacoco/core/internal/analysis/ClassAnalyzer.java
@@ -14,6 +14,8 @@ package org.jacoco.core.internal.analysis;
import org.jacoco.core.analysis.IMethodCoverage;
import org.jacoco.core.internal.flow.ClassProbesVisitor;
import org.jacoco.core.internal.flow.MethodProbesVisitor;
+import org.jacoco.core.internal.instr.InstrSupport;
+import org.objectweb.asm.FieldVisitor;
import org.objectweb.asm.Opcodes;
/**
@@ -72,6 +74,8 @@ public class ClassAnalyzer extends ClassProbesVisitor {
public MethodProbesVisitor visitMethod(final int access, final String name,
final String desc, final String signature, final String[] exceptions) {
+ InstrSupport.assertNotInstrumented(name, coverage.getName());
+
// TODO: Use filter hook
if ((access & Opcodes.ACC_SYNTHETIC) != 0) {
return null;
@@ -92,6 +96,13 @@ public class ClassAnalyzer extends ClassProbesVisitor {
}
@Override
+ public FieldVisitor visitField(final int access, final String name,
+ final String desc, final String signature, final Object value) {
+ InstrSupport.assertNotInstrumented(name, coverage.getName());
+ return super.visitField(access, name, desc, signature, value);
+ }
+
+ @Override
public void visitTotalProbeCount(final int count) {
// nothing to do
}