don't save class files contents in VFS during bytecode analysis (IDEA-CR-15548)
authorpeter <peter@jetbrains.com>
Fri, 11 Nov 2016 20:12:19 +0000 (21:12 +0100)
committerpeter <peter@jetbrains.com>
Fri, 11 Nov 2016 20:14:22 +0000 (21:14 +0100)
java/java-analysis-impl/src/com/intellij/codeInspection/bytecodeAnalysis/ClassDataIndexer.java

index dc6f90404f269862b57f0efb7ca718d10fd5f034..0eef625ed396dc83f75b2e6c90ae6cf85ddcc485 100644 (file)
@@ -22,7 +22,6 @@ import com.intellij.openapi.project.Project;
 import com.intellij.openapi.vfs.VirtualFile;
 import com.intellij.util.containers.ContainerUtil;
 import com.intellij.util.gist.VirtualFileGist;
-import gnu.trove.THashMap;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 import org.jetbrains.org.objectweb.asm.*;
@@ -59,7 +58,7 @@ public class ClassDataIndexer implements VirtualFileGist.GistCalculator<Map<Byte
     HashMap<Bytes, HEquations> map = new HashMap<>();
     try {
       MessageDigest md = BytecodeAnalysisConverter.getMessageDigest();
-      Map<Key, List<Equation>> allEquations = processClass(new ClassReader(file.contentsToByteArray()), file.getPresentableUrl());
+      Map<Key, List<Equation>> allEquations = processClass(new ClassReader(file.contentsToByteArray(false)), file.getPresentableUrl());
       for (Map.Entry<Key, List<Equation>> entry: allEquations.entrySet()) {
         Key methodKey = entry.getKey();
         map.put(compressKey(md, methodKey), convertEquations(md, methodKey, entry.getValue()));