diff options
Diffstat (limited to 'mcs/class/System.Xml.Linq')
5 files changed, 19 insertions, 18 deletions
diff --git a/mcs/class/System.Xml.Linq/System.Xml.Linq/XContainer.cs b/mcs/class/System.Xml.Linq/System.Xml.Linq/XContainer.cs index f38458ca3b..af5fd97640 100644 --- a/mcs/class/System.Xml.Linq/System.Xml.Linq/XContainer.cs +++ b/mcs/class/System.Xml.Linq/System.Xml.Linq/XContainer.cs @@ -181,16 +181,20 @@ namespace System.Xml.Linq public IEnumerable <XElement> Elements (XName name) { - foreach (XElement el in Elements ()) - if (el.Name == name) + foreach (XNode n in Nodes ()) { + XElement el = n as XElement; + if (el != null && el.Name == name) yield return el; + } } public XElement Element (XName name) { - foreach (XElement el in Elements ()) - if (el.Name == name) + foreach (XNode n in Nodes ()) { + XElement el = n as XElement; + if (el != null && el.Name == name) return el; + } return null; } diff --git a/mcs/class/System.Xml.Linq/System.Xml.Linq/XElement.cs b/mcs/class/System.Xml.Linq/System.Xml.Linq/XElement.cs index 70b6430929..81dea5e4a4 100644 --- a/mcs/class/System.Xml.Linq/System.Xml.Linq/XElement.cs +++ b/mcs/class/System.Xml.Linq/System.Xml.Linq/XElement.cs @@ -382,7 +382,8 @@ namespace System.Xml.Linq public XAttribute Attribute (XName name) { - foreach (XAttribute a in Attributes ()) + XAttribute next; + for (XAttribute a = attr_first; a != null; a = a.NextAttribute) if (a.Name == name) return a; return null; diff --git a/mcs/class/System.Xml.Linq/System.Xml.Linq/XName.cs b/mcs/class/System.Xml.Linq/System.Xml.Linq/XName.cs index 80d0e7b09c..59bbceb4f9 100644 --- a/mcs/class/System.Xml.Linq/System.Xml.Linq/XName.cs +++ b/mcs/class/System.Xml.Linq/System.Xml.Linq/XName.cs @@ -153,7 +153,7 @@ namespace System.Xml.Linq public override string ToString () { - if (ns == XNamespace.None) + if (Object.ReferenceEquals (ns, XNamespace.None)) return local; return String.Concat ("{", ns.NamespaceName, "}", local); } diff --git a/mcs/class/System.Xml.Linq/System.Xml.Linq/XObject.cs b/mcs/class/System.Xml.Linq/System.Xml.Linq/XObject.cs index 8353b25d2b..c620e4f599 100644 --- a/mcs/class/System.Xml.Linq/System.Xml.Linq/XObject.cs +++ b/mcs/class/System.Xml.Linq/System.Xml.Linq/XObject.cs @@ -165,42 +165,42 @@ namespace System.Xml.Linq internal void OnAddingObject (object addedObject) { - OnChanging (addedObject, new XObjectChangeEventArgs (XObjectChange.Add)); + OnChanging (addedObject, XObjectChangeEventArgs.Add); } internal void OnAddedObject (object addedObject) { - OnChanged (addedObject, new XObjectChangeEventArgs (XObjectChange.Add)); + OnChanged (addedObject, XObjectChangeEventArgs.Add); } internal void OnNameChanging (object renamedObject) { - OnChanging (renamedObject, new XObjectChangeEventArgs (System.Xml.Linq.XObjectChange.Name)); + OnChanging (renamedObject, XObjectChangeEventArgs.Name); } internal void OnNameChanged (object renamedObject) { - OnChanged (renamedObject, new XObjectChangeEventArgs (System.Xml.Linq.XObjectChange.Name)); + OnChanged (renamedObject, XObjectChangeEventArgs.Name); } internal void OnRemovingObject (object removedObject) { - OnChanging (removedObject, new XObjectChangeEventArgs (XObjectChange.Remove)); + OnChanging (removedObject, XObjectChangeEventArgs.Remove); } internal void OnRemovedObject (object removedObject) { - OnChanged (removedObject, new XObjectChangeEventArgs (XObjectChange.Remove)); + OnChanged (removedObject, XObjectChangeEventArgs.Remove); } internal void OnValueChanging (object changedObject) { - OnChanging (changedObject, new XObjectChangeEventArgs (XObjectChange.Value)); + OnChanging (changedObject, XObjectChangeEventArgs.Value); } internal void OnValueChanged (object changedObject) { - OnChanged (changedObject, new XObjectChangeEventArgs (XObjectChange.Value)); + OnChanged (changedObject, XObjectChangeEventArgs.Value); } diff --git a/mcs/class/System.Xml.Linq/System.Xml.Schema/Extensions.cs b/mcs/class/System.Xml.Linq/System.Xml.Schema/Extensions.cs index 83bee5fe7e..7aa0bb9f00 100644 --- a/mcs/class/System.Xml.Linq/System.Xml.Schema/Extensions.cs +++ b/mcs/class/System.Xml.Linq/System.Xml.Schema/Extensions.cs @@ -24,8 +24,6 @@ // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // -#if !NET_2_1 - using System; using System.Xml; using System.Xml.Linq; @@ -109,5 +107,3 @@ namespace System.Xml.Schema } } } - -#endif |