From 9fcf789277caec6845cfb7ce93b4798f16c69201 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Srbeck=C3=BD?= Date: Wed, 16 Mar 2011 20:30:15 +0000 Subject: [PATCH] Fixed a bug in the graph dominance calculation --- ICSharpCode.Decompiler/FlowAnalysis/ControlFlowGraph.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ICSharpCode.Decompiler/FlowAnalysis/ControlFlowGraph.cs b/ICSharpCode.Decompiler/FlowAnalysis/ControlFlowGraph.cs index 64b866c54..7cc815a60 100644 --- a/ICSharpCode.Decompiler/FlowAnalysis/ControlFlowGraph.cs +++ b/ICSharpCode.Decompiler/FlowAnalysis/ControlFlowGraph.cs @@ -120,7 +120,7 @@ namespace ICSharpCode.Decompiler.FlowAnalysis b => b.Successors, b => { if (b != EntryPoint) { - ControlFlowNode newIdom = b.Predecessors.First(block => block.Visited); + ControlFlowNode newIdom = b.Predecessors.First(block => block.Visited && block != b); // for all other predecessors p of b foreach (ControlFlowNode p in b.Predecessors) { if (p != b && p.ImmediateDominator != null) {