Skip to content

Commit 439c99c

Browse files
committed
Make encoding explicit in XMLDocument
1 parent b35796a commit 439c99c

12 files changed

+20
-15
lines changed

ext/dom/tests/modern/html/serializer/HTMLDocument_serialize_ns_imported_01.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ echo $html->saveHTML(), "\n";
2222

2323
?>
2424
--EXPECT--
25-
<?xml version="1.0"?>
25+
<?xml version="1.0" encoding="UTF-8"?>
2626
<container xmlns="some:ns" xmlns:bar="another:ns" xmlns:foo="http://foo/" foo:bar="value"><child xmlns="some:ns2"/></container>
2727
--- After import into HTML ---
2828
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

ext/dom/tests/modern/html/serializer/HTMLDocument_serialize_ns_imported_02.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ echo $html->saveHTML(), "\n";
2121

2222
?>
2323
--EXPECT--
24-
<?xml version="1.0"?>
24+
<?xml version="1.0" encoding="UTF-8"?>
2525
<container xmlns="some:ns" xmlns:bar="another:ns">
2626
<x>
2727
<subcontainer>

ext/dom/tests/modern/html/serializer/HTMLDocument_serialize_ns_imported_03.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ echo $html->saveHTML(), "\n";
2121

2222
?>
2323
--EXPECT--
24-
<?xml version="1.0"?>
24+
<?xml version="1.0" encoding="UTF-8"?>
2525
<container xmlns="some:ns" xmlns:bar="another:ns">
2626
<x>
2727
<subcontainer>

ext/dom/tests/modern/html/serializer/HTMLDocument_serialize_ns_imported_04.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ echo $html->saveHTML(), "\n";
2121

2222
?>
2323
--EXPECT--
24-
<?xml version="1.0"?>
24+
<?xml version="1.0" encoding="UTF-8"?>
2525
<container xmlns="some:ns" xmlns:bar="another:ns">
2626
<x>
2727
<subcontainer>

ext/dom/tests/modern/html/serializer/HTMLDocument_serialize_ns_imported_05.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ echo $html->saveHTML(), "\n";
2121

2222
?>
2323
--EXPECT--
24-
<?xml version="1.0"?>
24+
<?xml version="1.0" encoding="UTF-8"?>
2525
<container xmlns="some:ns" xmlns:bar="another:ns">
2626
<x>
2727
<subcontainer>

ext/dom/tests/modern/html/serializer/HTMLDocument_serialize_ns_imported_06.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ echo $html->saveHTML(), "\n";
2121

2222
?>
2323
--EXPECT--
24-
<?xml version="1.0"?>
24+
<?xml version="1.0" encoding="UTF-8"?>
2525
<container xmlns="some:ns" xmlns:bar="another:ns">
2626
<x>
2727
<subcontainer>

ext/dom/tests/modern/xml/XMLDocument_createFromFile_override_encoding.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,6 @@ var_dump($dom->encoding);
2525
--EXPECT--
2626
DOM\XMLDocument::createFromFile(): Argument #3 ($overrideEncoding) must be a valid document encoding
2727
string(2) "é"
28-
NULL
28+
string(5) "UTF-8"
2929
string(4) "é"
30-
NULL
30+
string(12) "Windows-1252"

ext/dom/tests/modern/xml/XMLDocument_createFromString_override_encoding.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,6 @@ var_dump($dom->encoding);
2525
--EXPECT--
2626
DOM\XMLDocument::createFromString(): Argument #3 ($overrideEncoding) must be a valid document encoding
2727
string(2) "é"
28-
NULL
28+
string(5) "UTF-8"
2929
string(4) "é"
30-
NULL
30+
string(12) "Windows-1252"

ext/dom/tests/modern/xml/XMLDocument_fromFile_04.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ echo $dom->saveXML();
1010

1111
?>
1212
--EXPECT--
13-
<?xml version="1.0"?>
13+
<?xml version="1.0" encoding="UTF-8"?>
1414
<books>
1515
<book>
1616
<title>The Grapes of Wrath</title>

ext/dom/tests/modern/xml/XMLDocument_fromString_02.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@ var_dump($dom->saveXMLFile("php://stdout"));
1010

1111
?>
1212
--EXPECT--
13-
<?xml version="1.0"?>
13+
<?xml version="1.0" encoding="UTF-8"?>
1414
<container/>
15-
int(35)
15+
int(52)

ext/dom/tests/modern/xml/XMLDocument_node_ownerDocument_for_XML.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ var_dump($element->ownerDocument);
1515
--EXPECTF--
1616
object(DOM\XMLDocument)#1 (37) {
1717
["encoding"]=>
18-
NULL
18+
string(5) "UTF-8"
1919
["xmlEncoding"]=>
20-
NULL
20+
string(5) "UTF-8"
2121
["standalone"]=>
2222
bool(false)
2323
["xmlStandalone"]=>

ext/dom/xml_document.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -228,6 +228,11 @@ static void load_from_helper(INTERNAL_FUNCTION_PARAMETERS, int mode)
228228
}
229229
RETURN_THROWS();
230230
}
231+
if (override_encoding) {
232+
lxml_doc->encoding = xmlStrdup((const xmlChar *) override_encoding);
233+
} else {
234+
lxml_doc->encoding = xmlStrdup((const xmlChar *) "UTF-8");
235+
}
231236
dom_object *intern = php_dom_instantiate_object_helper(
232237
return_value,
233238
dom_xml_document_class_entry,

0 commit comments

Comments
 (0)