diff --git a/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/LiveVariablesAnalyzer.java b/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/LiveVariablesAnalyzer.java index 0c559889e31d..18f2f5f36fc0 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/LiveVariablesAnalyzer.java +++ b/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/LiveVariablesAnalyzer.java @@ -146,8 +146,9 @@ public class LiveVariablesAnalyzer { BitSet set = result.get(instruction); if (set != null) { set.or(liveVars); - return set; - } else { + return (BitSet)set.clone(); + } + else if (!liveVars.isEmpty()) { result.put((FinishElementInstruction)instruction, (BitSet)liveVars.clone()); } }