diff --git a/CoreFoundation/Parsing.subproj/CFXMLInterface.c b/CoreFoundation/Parsing.subproj/CFXMLInterface.c index 799ded7388..8e0677997c 100644 --- a/CoreFoundation/Parsing.subproj/CFXMLInterface.c +++ b/CoreFoundation/Parsing.subproj/CFXMLInterface.c @@ -471,7 +471,6 @@ void _CFXMLNodeSetPrivateData(_CFXMLNodePtr node, void* data) { if (!node) { return; } - ((xmlNodePtr)node)->_private = data; } @@ -484,10 +483,10 @@ _CFXMLNodePtr _CFXMLNodeProperties(_CFXMLNodePtr node) { } CFIndex _CFXMLNodeGetType(_CFXMLNodePtr node) { - if (!node) { - return _kCFXMLTypeInvalid; + if (node) { + return ((xmlNodePtr)node)->type; } - return ((xmlNodePtr)node)->type; + return _kCFXMLTypeInvalid; } static inline xmlChar* _getQName(xmlNodePtr node) { diff --git a/Foundation/XMLNode.swift b/Foundation/XMLNode.swift index 95b6b7ff3a..6d9f9cad84 100644 --- a/Foundation/XMLNode.swift +++ b/Foundation/XMLNode.swift @@ -336,6 +336,7 @@ open class XMLNode: NSObject, NSCopying { break case .namespace: _CFXMLNamespaceSetPrefix(_xmlNode, newValue, Int64(newValue?.utf8.count ?? 0)) + default: if let newName = newValue { _CFXMLNodeSetName(_xmlNode, newName) diff --git a/TestFoundation/TestXMLDocument.swift b/TestFoundation/TestXMLDocument.swift index ad8ea17cff..6edce20a6b 100644 --- a/TestFoundation/TestXMLDocument.swift +++ b/TestFoundation/TestXMLDocument.swift @@ -524,7 +524,7 @@ class TestXMLDocument : LoopbackServerTest { do { try doc.validate() } catch { - XCTFail("\(error)") + XChttps://github.com/apple/swift-corelibs-foundation/pull/2453/conflict?name=TestFoundation%252FTestXMLDocument.swift&ancestor_oid=f51bd9de96b2ba008d560586ce1742854437931e&base_oid=c5ecbf64cdde4b340781f98aa322748e688b51d9&head_oid=ad8ea17cff29707342411d1e6598480d95b7d579TFail("\(error)") } let root = dtd?.elementDeclaration(forName:"root") @@ -641,7 +641,7 @@ class TestXMLDocument : LoopbackServerTest { XCTAssertEqual(XMLDTDNode(xmlString: "")?.kind, .elementDeclaration) XCTAssertEqual(XMLDTDNode(xmlString: #""#)?.kind, .notationDeclaration) } - + func test_sr10776_documentName() { let doc = XMLDocument(rootElement: nil) XCTAssertNil(doc.name)