LayoutTests/imported/w3c:
authordewei_zhu@apple.com <dewei_zhu@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 10 Sep 2015 02:04:02 +0000 (02:04 +0000)
committerdewei_zhu@apple.com <dewei_zhu@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 10 Sep 2015 02:04:02 +0000 (02:04 +0000)
Document.characterSet should return "UTF-8" by default.
https://bugs.webkit.org/show_bug.cgi?id=148810
<rdar://problem/22548727>

Reviewed by Ryosuke Niwa.

Update the tests which test the default encoding of document.

* web-platform-tests/dom/interfaces-expected.txt:
* web-platform-tests/dom/nodes/DOMImplementation-createDocument-expected.txt:
* web-platform-tests/dom/nodes/Node-properties-expected.txt:
* web-platform-tests/html/dom/interfaces-expected.txt:

Source/WebCore:
Document.characterSet should return "UTF-8" instead of null by default.
https://bugs.webkit.org/show_bug.cgi?id=148810
<rdar://problem/22548727>

Reviewed by Ryosuke Niwa.

Document encoding should default to "UTF-8" as is specified in
https://dom.spec.whatwg.org/#concept-document-encoding. This behavior
is consistent with Firefox and Chrome.

* dom/Document.cpp:
(WebCore::Document::encoding): Returns nullAtom according to declearation.
(WebCore::Document::characterSetForBindings): Returns "UTF-8" by default instead of null String.
* dom/Document.h:
(WebCore::Document::charset):
(WebCore::Document::inputEncoding): Deleted.
(WebCore::Document::characterSet): Deleted.
* dom/Document.idl:
* dom/InlineStyleSheetOwner.cpp:
(WebCore::InlineStyleSheetOwner::createSheet):
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::mainResourceContent):
* inspector/InspectorResourceAgent.cpp:
(WebCore::InspectorResourceAgent::didFinishLoading):
(WebCore::InspectorResourceAgent::didFailLoading):
* loader/DocumentWriter.cpp:
(WebCore::DocumentWriter::createDecoderIfNeeded):
* loader/FormSubmission.cpp:
(WebCore::encodingFromAcceptCharset):

LayoutTests:
Document.characterSet should return "UTF-8" by default.
https://bugs.webkit.org/show_bug.cgi?id=148810
<rdar://problem/22548727>

Reviewed by Ryosuke Niwa.

Update the tests which test the default encoding of document.

* dom/xhtml/level3/core/documentgetinputencoding02-expected.txt: Obsolete test.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@189564 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 files changed:
LayoutTests/ChangeLog
LayoutTests/dom/xhtml/level3/core/documentgetinputencoding02-expected.txt
LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/web-platform-tests/dom/interfaces-expected.txt
LayoutTests/imported/w3c/web-platform-tests/dom/nodes/DOMImplementation-createDocument-expected.txt
LayoutTests/imported/w3c/web-platform-tests/dom/nodes/Node-properties-expected.txt
LayoutTests/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt
Source/WebCore/ChangeLog
Source/WebCore/dom/Document.cpp
Source/WebCore/dom/Document.h
Source/WebCore/dom/Document.idl
Source/WebCore/dom/InlineStyleSheetOwner.cpp
Source/WebCore/inspector/InspectorPageAgent.cpp
Source/WebCore/inspector/InspectorResourceAgent.cpp
Source/WebCore/loader/DocumentWriter.cpp
Source/WebCore/loader/FormSubmission.cpp

index b86e767..53dad60 100644 (file)
@@ -1,3 +1,15 @@
+2015-09-09  Dewei Zhu  <dewei_zhu@apple.com>
+
+        Document.characterSet should return "UTF-8" by default.
+        https://bugs.webkit.org/show_bug.cgi?id=148810
+        <rdar://problem/22548727>
+
+        Reviewed by Ryosuke Niwa.
+
+        Update the tests which test the default encoding of document.
+
+        * dom/xhtml/level3/core/documentgetinputencoding02-expected.txt: Obsolete test.
+
 2015-09-09  Benjamin Poulain  <bpoulain@apple.com>
 
         CSS general sibling selectors does not work without CSS JIT
index c756287..c1ac5ff 100644 (file)
@@ -1,2 +1,3 @@
 Test   http://www.w3.org/2001/DOM-Test-Suite/level3/core/documentgetinputencoding02
-Status Success
+Status failure
+Message        documentgetinputencoding02: assertNull failed, actual UTF-8
index 12c0f2a..f1e1626 100644 (file)
@@ -1,3 +1,18 @@
+2015-09-09  Dewei Zhu  <dewei_zhu@apple.com>
+
+        Document.characterSet should return "UTF-8" by default.
+        https://bugs.webkit.org/show_bug.cgi?id=148810
+        <rdar://problem/22548727>
+
+        Reviewed by Ryosuke Niwa.
+
+        Update the tests which test the default encoding of document.
+
+        * web-platform-tests/dom/interfaces-expected.txt:
+        * web-platform-tests/dom/nodes/DOMImplementation-createDocument-expected.txt:
+        * web-platform-tests/dom/nodes/Node-properties-expected.txt:
+        * web-platform-tests/html/dom/interfaces-expected.txt:
+
 2015-09-09  Chris Dumez  <cdumez@apple.com>
 
         Setting document.title when there is no title and no head element should no nothing
index fdb1980..64951b4 100644 (file)
@@ -487,8 +487,8 @@ PASS Document interface: xmlDoc must inherit property "URL" with the proper type
 FAIL Document interface: xmlDoc must inherit property "documentURI" with the proper type (2) assert_equals: expected "string" but got "object"
 PASS Document interface: xmlDoc must inherit property "origin" with the proper type (3) 
 PASS Document interface: xmlDoc must inherit property "compatMode" with the proper type (4) 
-FAIL Document interface: xmlDoc must inherit property "characterSet" with the proper type (5) assert_equals: expected "string" but got "object"
-FAIL Document interface: xmlDoc must inherit property "inputEncoding" with the proper type (6) assert_equals: expected "string" but got "object"
+PASS Document interface: xmlDoc must inherit property "characterSet" with the proper type (5) 
+PASS Document interface: xmlDoc must inherit property "inputEncoding" with the proper type (6) 
 PASS Document interface: xmlDoc must inherit property "contentType" with the proper type (7) 
 PASS Document interface: xmlDoc must inherit property "doctype" with the proper type (8) 
 PASS Document interface: xmlDoc must inherit property "documentElement" with the proper type (9) 
index da2c1ad..c05a0ae 100644 (file)
@@ -1,14 +1,14 @@
 
 PASS DOMImplementation.createDocument(namespace, qualifiedName, doctype) 
 PASS createDocument test 0: null,undefined,null,null 
-FAIL createDocument test 0: metadata for null,undefined,null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 0: metadata for null,undefined,null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 1: null,"foo",null,null 
-FAIL createDocument test 1: metadata for null,"foo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 1: metadata for null,"foo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 2: null,"1foo",null,"INVALID_CHARACTER_ERR" 
 PASS createDocument test 3: null,"f1oo",null,null 
-FAIL createDocument test 3: metadata for null,"f1oo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 3: metadata for null,"f1oo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 4: null,"foo1",null,null 
-FAIL createDocument test 4: metadata for null,"foo1",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 4: metadata for null,"foo1",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 5: null,"1foo",null,"INVALID_CHARACTER_ERR" 
 PASS createDocument test 6: null,"̀foo",null,"INVALID_CHARACTER_ERR" 
 PASS createDocument test 7: null,"}foo",null,"INVALID_CHARACTER_ERR" 
@@ -27,10 +27,10 @@ PASS createDocument test 19: null,"f:oo",null,"NAMESPACE_ERR"
 PASS createDocument test 20: null,"foo:",null,"NAMESPACE_ERR" 
 PASS createDocument test 21: null,":",null,"NAMESPACE_ERR" 
 PASS createDocument test 22: null,"xml",null,null 
-FAIL createDocument test 22: metadata for null,"xml",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 22: metadata for null,"xml",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 23: null,"xmlns",null,"NAMESPACE_ERR" 
 PASS createDocument test 24: null,"xmlfoo",null,null 
-FAIL createDocument test 24: metadata for null,"xmlfoo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 24: metadata for null,"xmlfoo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 25: null,"xml:foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 26: null,"xmlns:foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 27: null,"xmlfoo:bar",null,"NAMESPACE_ERR" 
@@ -39,71 +39,71 @@ PASS createDocument test 29: "",":foo",null,"NAMESPACE_ERR"
 PASS createDocument test 30: "","f:oo",null,"NAMESPACE_ERR" 
 PASS createDocument test 31: "","foo:",null,"NAMESPACE_ERR" 
 FAIL createDocument test 32: undefined,undefined,null,null assert_equals: expected (object) null but got (string) "undefined"
-FAIL createDocument test 32: metadata for undefined,undefined,null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 32: metadata for undefined,undefined,null assert_equals: expected "about:blank" but got ""
 FAIL createDocument test 33: undefined,"foo",null,null assert_equals: expected (object) null but got (string) "undefined"
-FAIL createDocument test 33: metadata for undefined,"foo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 33: metadata for undefined,"foo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 34: undefined,"1foo",null,"INVALID_CHARACTER_ERR" 
 FAIL createDocument test 35: undefined,"f1oo",null,null assert_equals: expected (object) null but got (string) "undefined"
-FAIL createDocument test 35: metadata for undefined,"f1oo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 35: metadata for undefined,"f1oo",null assert_equals: expected "about:blank" but got ""
 FAIL createDocument test 36: undefined,"foo1",null,null assert_equals: expected (object) null but got (string) "undefined"
-FAIL createDocument test 36: metadata for undefined,"foo1",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 36: metadata for undefined,"foo1",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 37: undefined,":foo",null,"NAMESPACE_ERR" 
 FAIL createDocument test 38: undefined,"f:oo",null,"NAMESPACE_ERR" assert_throws: function "function () { document.implementation.createDocument(name..." did not throw
 PASS createDocument test 39: undefined,"foo:",null,"NAMESPACE_ERR" 
 FAIL createDocument test 40: undefined,"xml",null,null assert_equals: expected (object) null but got (string) "undefined"
-FAIL createDocument test 40: metadata for undefined,"xml",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 40: metadata for undefined,"xml",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 41: undefined,"xmlns",null,"NAMESPACE_ERR" 
 FAIL createDocument test 42: undefined,"xmlfoo",null,null assert_equals: expected (object) null but got (string) "undefined"
-FAIL createDocument test 42: metadata for undefined,"xmlfoo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 42: metadata for undefined,"xmlfoo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 43: undefined,"xml:foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 44: undefined,"xmlns:foo",null,"NAMESPACE_ERR" 
 FAIL createDocument test 45: undefined,"xmlfoo:bar",null,"NAMESPACE_ERR" assert_throws: function "function () { document.implementation.createDocument(name..." did not throw
 PASS createDocument test 46: "http://example.com/","foo",null,null 
-FAIL createDocument test 46: metadata for "http://example.com/","foo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 46: metadata for "http://example.com/","foo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 47: "http://example.com/","1foo",null,"INVALID_CHARACTER_ERR" 
 PASS createDocument test 48: "http://example.com/","f1oo",null,null 
-FAIL createDocument test 48: metadata for "http://example.com/","f1oo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 48: metadata for "http://example.com/","f1oo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 49: "http://example.com/","foo1",null,null 
-FAIL createDocument test 49: metadata for "http://example.com/","foo1",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 49: metadata for "http://example.com/","foo1",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 50: "http://example.com/",":foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 51: "http://example.com/","f:oo",null,null 
-FAIL createDocument test 51: metadata for "http://example.com/","f:oo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 51: metadata for "http://example.com/","f:oo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 52: "http://example.com/","foo:",null,"NAMESPACE_ERR" 
 PASS createDocument test 53: "http://example.com/","_:_",null,null 
-FAIL createDocument test 53: metadata for "http://example.com/","_:_",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 53: metadata for "http://example.com/","_:_",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 54: "http://example.com/","_:h0",null,null 
-FAIL createDocument test 54: metadata for "http://example.com/","_:h0",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 54: metadata for "http://example.com/","_:h0",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 55: "http://example.com/","_:test",null,null 
-FAIL createDocument test 55: metadata for "http://example.com/","_:test",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 55: metadata for "http://example.com/","_:test",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 56: "http://example.com/","l_:_",null,null 
-FAIL createDocument test 56: metadata for "http://example.com/","l_:_",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 56: metadata for "http://example.com/","l_:_",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 57: "http://example.com/","ns:_0",null,null 
-FAIL createDocument test 57: metadata for "http://example.com/","ns:_0",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 57: metadata for "http://example.com/","ns:_0",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 58: "http://example.com/","ns:a0",null,null 
-FAIL createDocument test 58: metadata for "http://example.com/","ns:a0",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 58: metadata for "http://example.com/","ns:a0",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 59: "http://example.com/","ns0:test",null,null 
-FAIL createDocument test 59: metadata for "http://example.com/","ns0:test",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 59: metadata for "http://example.com/","ns0:test",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 60: "http://example.com/","a.b:c",null,null 
-FAIL createDocument test 60: metadata for "http://example.com/","a.b:c",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 60: metadata for "http://example.com/","a.b:c",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 61: "http://example.com/","a-b:c",null,null 
-FAIL createDocument test 61: metadata for "http://example.com/","a-b:c",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 61: metadata for "http://example.com/","a-b:c",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 62: "http://example.com/","a-b:c",null,null 
-FAIL createDocument test 62: metadata for "http://example.com/","a-b:c",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 62: metadata for "http://example.com/","a-b:c",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 63: "http://example.com/","xml",null,null 
-FAIL createDocument test 63: metadata for "http://example.com/","xml",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 63: metadata for "http://example.com/","xml",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 64: "http://example.com/","xmlns",null,"NAMESPACE_ERR" 
 PASS createDocument test 65: "http://example.com/","XMLNS",null,null 
-FAIL createDocument test 65: metadata for "http://example.com/","XMLNS",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 65: metadata for "http://example.com/","XMLNS",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 66: "http://example.com/","xmlfoo",null,null 
-FAIL createDocument test 66: metadata for "http://example.com/","xmlfoo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 66: metadata for "http://example.com/","xmlfoo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 67: "http://example.com/","xml:foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 68: "http://example.com/","XML:foo",null,null 
-FAIL createDocument test 68: metadata for "http://example.com/","XML:foo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 68: metadata for "http://example.com/","XML:foo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 69: "http://example.com/","xmlns:foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 70: "http://example.com/","XMLNS:foo",null,null 
-FAIL createDocument test 70: metadata for "http://example.com/","XMLNS:foo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 70: metadata for "http://example.com/","XMLNS:foo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 71: "http://example.com/","xmlfoo:bar",null,null 
-FAIL createDocument test 71: metadata for "http://example.com/","xmlfoo:bar",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 71: metadata for "http://example.com/","xmlfoo:bar",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 72: "http://example.com/","prefix::local",null,"NAMESPACE_ERR" 
 PASS createDocument test 73: "http://example.com/","namespaceURI:{",null,"INVALID_CHARACTER_ERR" 
 PASS createDocument test 74: "http://example.com/","namespaceURI:}",null,"INVALID_CHARACTER_ERR" 
@@ -133,46 +133,46 @@ PASS createDocument test 97: "http://example.com/","namespaceURI:,",null,"INVALI
 PASS createDocument test 98: "http://example.com/","namespaceURI:a ",null,"INVALID_CHARACTER_ERR" 
 PASS createDocument test 99: "http://example.com/","namespaceURI:\"",null,"INVALID_CHARACTER_ERR" 
 PASS createDocument test 100: "/","foo",null,null 
-FAIL createDocument test 100: metadata for "/","foo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 100: metadata for "/","foo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 101: "/","1foo",null,"INVALID_CHARACTER_ERR" 
 PASS createDocument test 102: "/","f1oo",null,null 
-FAIL createDocument test 102: metadata for "/","f1oo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 102: metadata for "/","f1oo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 103: "/","foo1",null,null 
-FAIL createDocument test 103: metadata for "/","foo1",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 103: metadata for "/","foo1",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 104: "/",":foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 105: "/","f:oo",null,null 
-FAIL createDocument test 105: metadata for "/","f:oo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 105: metadata for "/","f:oo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 106: "/","foo:",null,"NAMESPACE_ERR" 
 PASS createDocument test 107: "/","xml",null,null 
-FAIL createDocument test 107: metadata for "/","xml",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 107: metadata for "/","xml",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 108: "/","xmlns",null,"NAMESPACE_ERR" 
 PASS createDocument test 109: "/","xmlfoo",null,null 
-FAIL createDocument test 109: metadata for "/","xmlfoo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 109: metadata for "/","xmlfoo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 110: "/","xml:foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 111: "/","xmlns:foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 112: "/","xmlfoo:bar",null,null 
-FAIL createDocument test 112: metadata for "/","xmlfoo:bar",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 112: metadata for "/","xmlfoo:bar",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 113: "http://www.w3.org/XML/1998/namespace","foo",null,null 
-FAIL createDocument test 113: metadata for "http://www.w3.org/XML/1998/namespace","foo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 113: metadata for "http://www.w3.org/XML/1998/namespace","foo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 114: "http://www.w3.org/XML/1998/namespace","1foo",null,"INVALID_CHARACTER_ERR" 
 PASS createDocument test 115: "http://www.w3.org/XML/1998/namespace","f1oo",null,null 
-FAIL createDocument test 115: metadata for "http://www.w3.org/XML/1998/namespace","f1oo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 115: metadata for "http://www.w3.org/XML/1998/namespace","f1oo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 116: "http://www.w3.org/XML/1998/namespace","foo1",null,null 
-FAIL createDocument test 116: metadata for "http://www.w3.org/XML/1998/namespace","foo1",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 116: metadata for "http://www.w3.org/XML/1998/namespace","foo1",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 117: "http://www.w3.org/XML/1998/namespace",":foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 118: "http://www.w3.org/XML/1998/namespace","f:oo",null,null 
-FAIL createDocument test 118: metadata for "http://www.w3.org/XML/1998/namespace","f:oo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 118: metadata for "http://www.w3.org/XML/1998/namespace","f:oo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 119: "http://www.w3.org/XML/1998/namespace","foo:",null,"NAMESPACE_ERR" 
 PASS createDocument test 120: "http://www.w3.org/XML/1998/namespace","xml",null,null 
-FAIL createDocument test 120: metadata for "http://www.w3.org/XML/1998/namespace","xml",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 120: metadata for "http://www.w3.org/XML/1998/namespace","xml",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 121: "http://www.w3.org/XML/1998/namespace","xmlns",null,"NAMESPACE_ERR" 
 PASS createDocument test 122: "http://www.w3.org/XML/1998/namespace","xmlfoo",null,null 
-FAIL createDocument test 122: metadata for "http://www.w3.org/XML/1998/namespace","xmlfoo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 122: metadata for "http://www.w3.org/XML/1998/namespace","xmlfoo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 123: "http://www.w3.org/XML/1998/namespace","xml:foo",null,null 
-FAIL createDocument test 123: metadata for "http://www.w3.org/XML/1998/namespace","xml:foo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 123: metadata for "http://www.w3.org/XML/1998/namespace","xml:foo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 124: "http://www.w3.org/XML/1998/namespace","xmlns:foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 125: "http://www.w3.org/XML/1998/namespace","xmlfoo:bar",null,null 
-FAIL createDocument test 125: metadata for "http://www.w3.org/XML/1998/namespace","xmlfoo:bar",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 125: metadata for "http://www.w3.org/XML/1998/namespace","xmlfoo:bar",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 126: "http://www.w3.org/XML/1998/namespaces","xml:foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 127: "http://www.w3.org/xml/1998/namespace","xml:foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 128: "http://www.w3.org/2000/xmlns/","foo",null,"NAMESPACE_ERR" 
@@ -184,78 +184,78 @@ PASS createDocument test 133: "http://www.w3.org/2000/xmlns/","f:oo",null,"NAMES
 PASS createDocument test 134: "http://www.w3.org/2000/xmlns/","foo:",null,"NAMESPACE_ERR" 
 PASS createDocument test 135: "http://www.w3.org/2000/xmlns/","xml",null,"NAMESPACE_ERR" 
 PASS createDocument test 136: "http://www.w3.org/2000/xmlns/","xmlns",null,null 
-FAIL createDocument test 136: metadata for "http://www.w3.org/2000/xmlns/","xmlns",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 136: metadata for "http://www.w3.org/2000/xmlns/","xmlns",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 137: "http://www.w3.org/2000/xmlns/","xmlfoo",null,"NAMESPACE_ERR" 
 PASS createDocument test 138: "http://www.w3.org/2000/xmlns/","xml:foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 139: "http://www.w3.org/2000/xmlns/","xmlns:foo",null,null 
-FAIL createDocument test 139: metadata for "http://www.w3.org/2000/xmlns/","xmlns:foo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 139: metadata for "http://www.w3.org/2000/xmlns/","xmlns:foo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 140: "http://www.w3.org/2000/xmlns/","xmlfoo:bar",null,"NAMESPACE_ERR" 
 PASS createDocument test 141: "http://www.w3.org/2000/xmlns/","foo:xmlns",null,"NAMESPACE_ERR" 
 PASS createDocument test 142: "foo:","foo",null,null 
-FAIL createDocument test 142: metadata for "foo:","foo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 142: metadata for "foo:","foo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 143: "foo:","1foo",null,"INVALID_CHARACTER_ERR" 
 PASS createDocument test 144: "foo:","f1oo",null,null 
-FAIL createDocument test 144: metadata for "foo:","f1oo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 144: metadata for "foo:","f1oo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 145: "foo:","foo1",null,null 
-FAIL createDocument test 145: metadata for "foo:","foo1",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 145: metadata for "foo:","foo1",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 146: "foo:",":foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 147: "foo:","f:oo",null,null 
-FAIL createDocument test 147: metadata for "foo:","f:oo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 147: metadata for "foo:","f:oo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 148: "foo:","foo:",null,"NAMESPACE_ERR" 
 PASS createDocument test 149: "foo:","xml",null,null 
-FAIL createDocument test 149: metadata for "foo:","xml",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 149: metadata for "foo:","xml",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 150: "foo:","xmlns",null,"NAMESPACE_ERR" 
 PASS createDocument test 151: "foo:","xmlfoo",null,null 
-FAIL createDocument test 151: metadata for "foo:","xmlfoo",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 151: metadata for "foo:","xmlfoo",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 152: "foo:","xml:foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 153: "foo:","xmlns:foo",null,"NAMESPACE_ERR" 
 PASS createDocument test 154: "foo:","xmlfoo:bar",null,null 
-FAIL createDocument test 154: metadata for "foo:","xmlfoo:bar",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 154: metadata for "foo:","xmlfoo:bar",null assert_equals: expected "about:blank" but got ""
 FAIL createDocument test 155: null,null,false,object "TypeError" assert_throws: function "function () { document.implementation.createDocument(name..." did not throw
 PASS createDocument test 156: null,null,null,null 
-FAIL createDocument test 156: metadata for null,null,null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 156: metadata for null,null,null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 157: null,"",null,null 
-FAIL createDocument test 157: metadata for null,"",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 157: metadata for null,"",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 158: undefined,null,undefined,null 
-FAIL createDocument test 158: metadata for undefined,null,undefined assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 158: metadata for undefined,null,undefined assert_equals: expected "about:blank" but got ""
 FAIL createDocument test 159: undefined,undefined,undefined,null assert_equals: expected (object) null but got (string) "undefined"
-FAIL createDocument test 159: metadata for undefined,undefined,undefined assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 159: metadata for undefined,undefined,undefined assert_equals: expected "about:blank" but got ""
 PASS createDocument test 160: undefined,"",undefined,null 
-FAIL createDocument test 160: metadata for undefined,"",undefined assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 160: metadata for undefined,"",undefined assert_equals: expected "about:blank" but got ""
 PASS createDocument test 161: "http://example.com/",null,null,null 
-FAIL createDocument test 161: metadata for "http://example.com/",null,null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 161: metadata for "http://example.com/",null,null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 162: "http://example.com/","",null,null 
-FAIL createDocument test 162: metadata for "http://example.com/","",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 162: metadata for "http://example.com/","",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 163: "/",null,null,null 
-FAIL createDocument test 163: metadata for "/",null,null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 163: metadata for "/",null,null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 164: "/","",null,null 
-FAIL createDocument test 164: metadata for "/","",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 164: metadata for "/","",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 165: "http://www.w3.org/XML/1998/namespace",null,null,null 
-FAIL createDocument test 165: metadata for "http://www.w3.org/XML/1998/namespace",null,null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 165: metadata for "http://www.w3.org/XML/1998/namespace",null,null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 166: "http://www.w3.org/XML/1998/namespace","",null,null 
-FAIL createDocument test 166: metadata for "http://www.w3.org/XML/1998/namespace","",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 166: metadata for "http://www.w3.org/XML/1998/namespace","",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 167: "http://www.w3.org/2000/xmlns/",null,null,null 
-FAIL createDocument test 167: metadata for "http://www.w3.org/2000/xmlns/",null,null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 167: metadata for "http://www.w3.org/2000/xmlns/",null,null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 168: "http://www.w3.org/2000/xmlns/","",null,null 
-FAIL createDocument test 168: metadata for "http://www.w3.org/2000/xmlns/","",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 168: metadata for "http://www.w3.org/2000/xmlns/","",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 169: "foo:",null,null,null 
-FAIL createDocument test 169: metadata for "foo:",null,null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 169: metadata for "foo:",null,null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 170: "foo:","",null,null 
-FAIL createDocument test 170: metadata for "foo:","",null assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 170: metadata for "foo:","",null assert_equals: expected "about:blank" but got ""
 PASS createDocument test 171: null,null,DocumentType node,null 
-FAIL createDocument test 171: metadata for null,null,DocumentType node assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 171: metadata for null,null,DocumentType node assert_equals: expected "about:blank" but got ""
 PASS createDocument test 172: null,null,DocumentType node,null 
-FAIL createDocument test 172: metadata for null,null,DocumentType node assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 172: metadata for null,null,DocumentType node assert_equals: expected "about:blank" but got ""
 PASS createDocument test 173: null,null,DocumentType node,null 
-FAIL createDocument test 173: metadata for null,null,DocumentType node assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 173: metadata for null,null,DocumentType node assert_equals: expected "about:blank" but got ""
 PASS createDocument test 174: null,null,DocumentType node,null 
-FAIL createDocument test 174: metadata for null,null,DocumentType node assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 174: metadata for null,null,DocumentType node assert_equals: expected "about:blank" but got ""
 PASS createDocument test 175: null,null,DocumentType node,null 
-FAIL createDocument test 175: metadata for null,null,DocumentType node assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 175: metadata for null,null,DocumentType node assert_equals: expected "about:blank" but got ""
 PASS createDocument test 176: null,"foo",DocumentType node,null 
-FAIL createDocument test 176: metadata for null,"foo",DocumentType node assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 176: metadata for null,"foo",DocumentType node assert_equals: expected "about:blank" but got ""
 PASS createDocument test 177: "foo",null,DocumentType node,null 
-FAIL createDocument test 177: metadata for "foo",null,DocumentType node assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 177: metadata for "foo",null,DocumentType node assert_equals: expected "about:blank" but got ""
 PASS createDocument test 178: "foo","bar",DocumentType node,null 
-FAIL createDocument test 178: metadata for "foo","bar",DocumentType node assert_equals: expected (string) "UTF-8" but got (object) null
+FAIL createDocument test 178: metadata for "foo","bar",DocumentType node assert_equals: expected "about:blank" but got ""
 
index 3a74ca2..32006c4 100644 (file)
@@ -142,8 +142,8 @@ PASS foreignDoc.childNodes[1]
 PASS foreignDoc.childNodes[2] 
 FAIL foreignDoc.URL assert_equals: expected "about:blank" but got ""
 PASS foreignDoc.compatMode 
-FAIL foreignDoc.characterSet assert_equals: expected (string) "UTF-8" but got (object) null
-FAIL foreignDoc.inputEncoding assert_equals: expected (string) "UTF-8" but got (object) null
+PASS foreignDoc.characterSet 
+PASS foreignDoc.inputEncoding 
 PASS foreignDoc.contentType 
 PASS foreignDoc.nodeName 
 PASS foreignDoc.textContent 
@@ -215,8 +215,8 @@ PASS xmlDoc.childNodes[2]
 PASS xmlDoc.childNodes[3] 
 FAIL xmlDoc.URL assert_equals: expected "about:blank" but got ""
 PASS xmlDoc.compatMode 
-FAIL xmlDoc.characterSet assert_equals: expected (string) "UTF-8" but got (object) null
-FAIL xmlDoc.inputEncoding assert_equals: expected (string) "UTF-8" but got (object) null
+PASS xmlDoc.characterSet 
+PASS xmlDoc.inputEncoding 
 PASS xmlDoc.contentType 
 PASS xmlDoc.nodeName 
 PASS xmlDoc.textContent 
index 2e58ae6..f2cc403 100644 (file)
@@ -1260,8 +1260,8 @@ PASS Document interface: document.implementation.createDocument(null, "", null)
 FAIL Document interface: document.implementation.createDocument(null, "", null) must inherit property "documentURI" with the proper type (2) assert_equals: expected "string" but got "object"
 PASS Document interface: document.implementation.createDocument(null, "", null) must inherit property "origin" with the proper type (3) 
 PASS Document interface: document.implementation.createDocument(null, "", null) must inherit property "compatMode" with the proper type (4) 
-FAIL Document interface: document.implementation.createDocument(null, "", null) must inherit property "characterSet" with the proper type (5) assert_equals: expected "string" but got "object"
-FAIL Document interface: document.implementation.createDocument(null, "", null) must inherit property "inputEncoding" with the proper type (6) assert_equals: expected "string" but got "object"
+PASS Document interface: document.implementation.createDocument(null, "", null) must inherit property "characterSet" with the proper type (5) 
+PASS Document interface: document.implementation.createDocument(null, "", null) must inherit property "inputEncoding" with the proper type (6) 
 PASS Document interface: document.implementation.createDocument(null, "", null) must inherit property "contentType" with the proper type (7) 
 PASS Document interface: document.implementation.createDocument(null, "", null) must inherit property "doctype" with the proper type (8) 
 PASS Document interface: document.implementation.createDocument(null, "", null) must inherit property "documentElement" with the proper type (9) 
index 626f00a..5760c16 100644 (file)
@@ -1,3 +1,35 @@
+2015-09-09  Dewei Zhu  <dewei_zhu@apple.com>
+
+        Document.characterSet should return "UTF-8" instead of null by default.
+        https://bugs.webkit.org/show_bug.cgi?id=148810
+        <rdar://problem/22548727>
+
+        Reviewed by Ryosuke Niwa.
+
+        Document encoding should default to "UTF-8" as is specified in
+        https://dom.spec.whatwg.org/#concept-document-encoding. This behavior
+        is consistent with Firefox and Chrome.
+
+        * dom/Document.cpp:
+        (WebCore::Document::encoding): Returns nullAtom according to declearation.
+        (WebCore::Document::characterSetForBindings): Returns "UTF-8" by default instead of null String.
+        * dom/Document.h:
+        (WebCore::Document::charset):
+        (WebCore::Document::inputEncoding): Deleted.
+        (WebCore::Document::characterSet): Deleted.
+        * dom/Document.idl:
+        * dom/InlineStyleSheetOwner.cpp:
+        (WebCore::InlineStyleSheetOwner::createSheet):
+        * inspector/InspectorPageAgent.cpp:
+        (WebCore::InspectorPageAgent::mainResourceContent):
+        * inspector/InspectorResourceAgent.cpp:
+        (WebCore::InspectorResourceAgent::didFinishLoading):
+        (WebCore::InspectorResourceAgent::didFailLoading):
+        * loader/DocumentWriter.cpp:
+        (WebCore::DocumentWriter::createDecoderIfNeeded):
+        * loader/FormSubmission.cpp:
+        (WebCore::encodingFromAcceptCharset):
+
 2015-09-09  Benjamin Poulain  <bpoulain@apple.com>
 
         CSS general sibling selectors does not work without CSS JIT
index 9e09e3c..d0cdc57 100644 (file)
@@ -1252,7 +1252,15 @@ AtomicString Document::encoding() const
 {
     if (TextResourceDecoder* d = decoder())
         return d->encoding().domName();
-    return String();
+    return nullAtom;
+}
+
+String Document::characterSetForBindings() const
+{
+    AtomicString name = encoding();
+    if (!name.isNull())
+        return name;
+    return UTF8Encoding().domName();
 }
 
 String Document::defaultCharset() const
index 9ef48c9..4f09b7c 100644 (file)
@@ -400,9 +400,8 @@ public:
 
     String defaultCharset() const;
 
-    String inputEncoding() const { return Document::encoding(); }
     String charset() const { return Document::encoding(); }
-    String characterSet() const { return Document::encoding(); }
+    String characterSetForBindings() const;
 
     AtomicString encoding() const;
 
index d3fa082..1869914 100644 (file)
@@ -64,7 +64,7 @@
 
     // DOM Level 3 Core
 
-    [TreatReturnedNullStringAs=Null] readonly attribute DOMString inputEncoding;
+    [ImplementedAs=characterSetForBindings] readonly attribute DOMString inputEncoding;
 
     [TreatReturnedNullStringAs=Null] readonly attribute DOMString xmlEncoding;
     [TreatReturnedNullStringAs=Null, TreatNullAs=NullString, SetterRaisesException] attribute DOMString xmlVersion;
 #if defined(LANGUAGE_JAVASCRIPT) && LANGUAGE_JAVASCRIPT
     DOMSelection       getSelection();
 #endif
-    [TreatReturnedNullStringAs=Null] readonly attribute DOMString characterSet;
+    [ImplementedAs=characterSetForBindings] readonly attribute DOMString characterSet;
 
     // WebKit extensions
 
index 04f129d..91f6666 100644 (file)
@@ -141,7 +141,7 @@ void InlineStyleSheetOwner::createSheet(Element& element, const String& text)
 
     m_loading = true;
 
-    m_sheet = CSSStyleSheet::createInline(element, URL(), m_startTextPosition, document.inputEncoding());
+    m_sheet = CSSStyleSheet::createInline(element, URL(), m_startTextPosition, document.encoding());
     m_sheet->setMediaQueries(mediaQueries.release());
     m_sheet->setTitle(element.title());
     m_sheet->contents().parseStringAtPosition(text, m_startTextPosition, m_isParsingChildren);
index db4e15e..116d607 100644 (file)
@@ -187,7 +187,7 @@ bool InspectorPageAgent::mainResourceContent(Frame* frame, bool withBase64Encode
     RefPtr<SharedBuffer> buffer = frame->loader().documentLoader()->mainResourceData();
     if (!buffer)
         return false;
-    return InspectorPageAgent::dataContent(buffer->data(), buffer->size(), frame->document()->inputEncoding(), withBase64Encode, result);
+    return InspectorPageAgent::dataContent(buffer->data(), buffer->size(), frame->document()->encoding(), withBase64Encode, result);
 }
 
 // static
index 2103e91..f94ec79 100644 (file)
@@ -390,7 +390,7 @@ void InspectorResourceAgent::didFinishLoading(unsigned long identifier, Document
 
     String requestId = IdentifiersFactory::requestId(identifier);
     if (m_resourcesData->resourceType(requestId) == InspectorPageAgent::DocumentResource)
-        m_resourcesData->addResourceSharedBuffer(requestId, loader.frameLoader()->documentLoader()->mainResourceData(), loader.frame()->document()->inputEncoding());
+        m_resourcesData->addResourceSharedBuffer(requestId, loader.frameLoader()->documentLoader()->mainResourceData(), loader.frame()->document()->encoding());
 
     m_resourcesData->maybeDecodeDataToContent(requestId);
 
@@ -420,7 +420,7 @@ void InspectorResourceAgent::didFailLoading(unsigned long identifier, DocumentLo
         if (frame && frame->loader().documentLoader() && frame->document()) {
             m_resourcesData->addResourceSharedBuffer(requestId,
                 frame->loader().documentLoader()->mainResourceData(),
-                frame->document()->inputEncoding());
+                frame->document()->encoding());
         }
     }
 
index 2433687..0e155e5 100644 (file)
@@ -189,7 +189,7 @@ TextResourceDecoder* DocumentWriter::createDecoderIfNeeded()
             m_decoder->setHintEncoding(parentFrame->document()->decoder());
         if (m_encoding.isEmpty()) {
             if (canReferToParentFrameEncoding(m_frame, parentFrame))
-                m_decoder->setEncoding(parentFrame->document()->inputEncoding(), TextResourceDecoder::EncodingFromParentFrame);
+                m_decoder->setEncoding(TextEncoding(parentFrame->document()->encoding()), TextResourceDecoder::EncodingFromParentFrame);
         } else {
             m_decoder->setEncoding(m_encoding,
                 m_encodingWasChosenByUser ? TextResourceDecoder::UserChosenEncoding : TextResourceDecoder::EncodingFromHTTPHeader);
index f38b1d8..43435d5 100644 (file)
@@ -151,7 +151,7 @@ static TextEncoding encodingFromAcceptCharset(const String& acceptCharset, Docum
             return encoding;
     }
 
-    return document.inputEncoding();
+    return TextEncoding(document.encoding());
 }
 
 Ref<FormSubmission> FormSubmission::create(HTMLFormElement* form, const Attributes& attributes, PassRefPtr<Event> event, LockHistory lockHistory, FormSubmissionTrigger trigger)