Title: [278493] branches/safari-611-branch
Revision
278493
Author
[email protected]
Date
2021-06-04 13:24:32 -0700 (Fri, 04 Jun 2021)

Log Message

Cherry-pick r277951. rdar://problem/78875422

    REGRESSION(r256715): XSLTProcessor does not parse script when transforming to document
    https://bugs.webkit.org/show_bug.cgi?id=226087

    Reviewed by Darin Adler.

    Source/WebCore:

    Allow _javascript_ if context document is null to match old behavior before r256715.

    Test: fast/xsl/xslt-transform-script.html

    * dom/Document.cpp:
    (WebCore::Document::allowsContentJavaScript const):

    LayoutTests:

    * fast/xsl/xslt-transform-script.html: Added.
    * fast/xsl/xslt-transform-script-expected.txt: Added.

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

Modified Paths

Added Paths

Diff

Modified: branches/safari-611-branch/LayoutTests/ChangeLog (278492 => 278493)


--- branches/safari-611-branch/LayoutTests/ChangeLog	2021-06-04 20:24:28 UTC (rev 278492)
+++ branches/safari-611-branch/LayoutTests/ChangeLog	2021-06-04 20:24:32 UTC (rev 278493)
@@ -1,5 +1,41 @@
 2021-06-04  Alan Coon  <[email protected]>
 
+        Cherry-pick r277951. rdar://problem/78875422
+
+    REGRESSION(r256715): XSLTProcessor does not parse script when transforming to document
+    https://bugs.webkit.org/show_bug.cgi?id=226087
+    
+    Reviewed by Darin Adler.
+    
+    Source/WebCore:
+    
+    Allow _javascript_ if context document is null to match old behavior before r256715.
+    
+    Test: fast/xsl/xslt-transform-script.html
+    
+    * dom/Document.cpp:
+    (WebCore::Document::allowsContentJavaScript const):
+    
+    LayoutTests:
+    
+    * fast/xsl/xslt-transform-script.html: Added.
+    * fast/xsl/xslt-transform-script-expected.txt: Added.
+    
+    
+    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@277951 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+    2021-05-24  Sihui Liu  <[email protected]>
+
+            REGRESSION(r256715): XSLTProcessor does not parse script when transforming to document
+            https://bugs.webkit.org/show_bug.cgi?id=226087
+
+            Reviewed by Darin Adler.
+
+            * fast/xsl/xslt-transform-script.html: Added.
+            * fast/xsl/xslt-transform-script-expected.txt: Added.
+
+2021-06-04  Alan Coon  <[email protected]>
+
         Cherry-pick r277644. rdar://problem/78875252
 
     SHOULD NEVER BE REACHED in FrameSelection::setSelectionWithoutUpdatingAppearance

Added: branches/safari-611-branch/LayoutTests/fast/xsl/xslt-transform-script-expected.txt (0 => 278493)


--- branches/safari-611-branch/LayoutTests/fast/xsl/xslt-transform-script-expected.txt	                        (rev 0)
+++ branches/safari-611-branch/LayoutTests/fast/xsl/xslt-transform-script-expected.txt	2021-06-04 20:24:32 UTC (rev 278493)
@@ -0,0 +1 @@
+<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><a href="" word</a></body></html>

Added: branches/safari-611-branch/LayoutTests/fast/xsl/xslt-transform-script.html (0 => 278493)


--- branches/safari-611-branch/LayoutTests/fast/xsl/xslt-transform-script.html	                        (rev 0)
+++ branches/safari-611-branch/LayoutTests/fast/xsl/xslt-transform-script.html	2021-06-04 20:24:32 UTC (rev 278493)
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+<html>
+<body>
+<div id="result"></div>
+<script>
+    if (window.testRunner)
+        testRunner.dumpAsText();
+
+    var xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><test>test word</test>";
+    var xmlParser = new DOMParser();
+    var parsedXML = xmlParser.parseFromString(xml, "text/xml");
+
+    var xsl = "<?xml version=\"1.0\" encoding=\"UTF-8\"?> \
+        <xsl:stylesheet version=\"1.0\" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\"> \
+        <xsl:template match=\"/\"> \
+            <html> \
+            <body> \
+                <a href="" select=\"test\"/></a> \
+            </body> \
+            </html> \
+        </xsl:template> \
+        </xsl:stylesheet>"; 
+    var xslParser = new DOMParser();
+    var parsedXSL = xslParser.parseFromString(xsl, "text/xml");
+
+    var xslt = new XSLTProcessor();
+    xslt.importStylesheet(parsedXSL); 
+
+    var transformedXML = xslt.transformToDocument(parsedXML);
+    var string = new XMLSerializer().serializeToString(transformedXML);
+    var textNode = document.createTextNode(string);
+    document.getElementById('result').appendChild(textNode);
+</script>
+</body>
+</html>
\ No newline at end of file

Modified: branches/safari-611-branch/Source/WebCore/ChangeLog (278492 => 278493)


--- branches/safari-611-branch/Source/WebCore/ChangeLog	2021-06-04 20:24:28 UTC (rev 278492)
+++ branches/safari-611-branch/Source/WebCore/ChangeLog	2021-06-04 20:24:32 UTC (rev 278493)
@@ -1,5 +1,45 @@
 2021-06-04  Alan Coon  <[email protected]>
 
+        Cherry-pick r277951. rdar://problem/78875422
+
+    REGRESSION(r256715): XSLTProcessor does not parse script when transforming to document
+    https://bugs.webkit.org/show_bug.cgi?id=226087
+    
+    Reviewed by Darin Adler.
+    
+    Source/WebCore:
+    
+    Allow _javascript_ if context document is null to match old behavior before r256715.
+    
+    Test: fast/xsl/xslt-transform-script.html
+    
+    * dom/Document.cpp:
+    (WebCore::Document::allowsContentJavaScript const):
+    
+    LayoutTests:
+    
+    * fast/xsl/xslt-transform-script.html: Added.
+    * fast/xsl/xslt-transform-script-expected.txt: Added.
+    
+    
+    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@277951 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+    2021-05-24  Sihui Liu  <[email protected]>
+
+            REGRESSION(r256715): XSLTProcessor does not parse script when transforming to document
+            https://bugs.webkit.org/show_bug.cgi?id=226087
+
+            Reviewed by Darin Adler.
+
+            Allow _javascript_ if context document is null to match old behavior before r256715.
+
+            Test: fast/xsl/xslt-transform-script.html
+
+            * dom/Document.cpp:
+            (WebCore::Document::allowsContentJavaScript const):
+
+2021-06-04  Alan Coon  <[email protected]>
+
         Cherry-pick r277644. rdar://problem/78875252
 
     SHOULD NEVER BE REACHED in FrameSelection::setSelectionWithoutUpdatingAppearance

Modified: branches/safari-611-branch/Source/WebCore/dom/Document.cpp (278492 => 278493)


--- branches/safari-611-branch/Source/WebCore/dom/Document.cpp	2021-06-04 20:24:28 UTC (rev 278492)
+++ branches/safari-611-branch/Source/WebCore/dom/Document.cpp	2021-06-04 20:24:32 UTC (rev 278493)
@@ -7021,7 +7021,7 @@
     if (!m_frame || m_frame->document() != this) {
         // If this Document is frameless or in the wrong frame, its context document
         // must allow for it to run content _javascript_.
-        return m_contextDocument && m_contextDocument->allowsContentJavaScript();
+        return !m_contextDocument || m_contextDocument->allowsContentJavaScript();
     }
 
     return m_frame->loader().client().allowsContentJavaScriptFromMostRecentNavigation() == AllowsContentJavaScript::Yes;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to