mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
LiveVariablesAnalyzer#findLiveVars: clone or'ed BitSet as well
We should ensure that runDFA lambda never returns an object which will be mutated afterwards as this object used as part of `processed` Set key (inside InstructionState).
This commit is contained in:
+3
-2
@@ -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());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user