From 0eb3aabc7200db29431083bbd3587ce44c16642c Mon Sep 17 00:00:00 2001 From: Siegfried Pammer Date: Fri, 24 Jun 2011 17:23:41 +0200 Subject: [PATCH] use generic enumerator --- .../XmlBamlReader.cs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ILSpy.BamlDecompiler/Ricciolo.StylesExplorer.MarkupReflection/XmlBamlReader.cs b/ILSpy.BamlDecompiler/Ricciolo.StylesExplorer.MarkupReflection/XmlBamlReader.cs index 4cf5adcc1..e2d1e7e25 100644 --- a/ILSpy.BamlDecompiler/Ricciolo.StylesExplorer.MarkupReflection/XmlBamlReader.cs +++ b/ILSpy.BamlDecompiler/Ricciolo.StylesExplorer.MarkupReflection/XmlBamlReader.cs @@ -1087,12 +1087,12 @@ namespace Ricciolo.StylesExplorer.MarkupReflection // this property could be a markup extension // try to convert it int start = nodes.IndexOf(propertyElement) + 1; - IEnumerator enumerator = nodes.GetEnumerator(); + IEnumerator enumerator = nodes.GetEnumerator(); // move enumerator to the start of this property value for (int i = 0; i < start && enumerator.MoveNext(); i++) ; - if (IsExtension(enumerator)) { + if (IsExtension(enumerator) && start < nodes.Count - 1) { start--; nodes.RemoveAt(start); nodes.RemoveLast(); @@ -1165,11 +1165,11 @@ namespace Ricciolo.StylesExplorer.MarkupReflection } } - bool IsExtension(IEnumerator enumerator) + bool IsExtension(IEnumerator enumerator) { while (enumerator.MoveNext()) { - object node = enumerator.Current; - if (node is XmlBamlElement && !(node is XmlBamlEndElement) && !((XmlBamlElement)node).TypeDeclaration.IsExtension) + var node = enumerator.Current; + if (node.NodeType == XmlNodeType.Element && !((XmlBamlElement)node).TypeDeclaration.IsExtension) return false; }