Title: [228887] trunk/Source/WebKit
Revision
228887
Author
[email protected]
Date
2018-02-21 11:41:03 -0800 (Wed, 21 Feb 2018)

Log Message

Web Automation: failed provisional loads cause "Navigate To" command to hang
https://bugs.webkit.org/show_bug.cgi?id=183007
<rdar://problem/37751819>

Reviewed by Andy Estes.

This hang was revealed by WPT test current_url.py::get_current_url_file_protocol. Now the
test simply fails because Safari chooses a policy of 'Ignore' for externally-opened files.
I filed an upstream issue with the test here: https://github.com/w3c/webdriver/issues/1232

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
Notify the session that the load failed in the frame, just like we do
for non-provisional failed loads and successful loads.

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (228886 => 228887)


--- trunk/Source/WebKit/ChangeLog	2018-02-21 19:36:47 UTC (rev 228886)
+++ trunk/Source/WebKit/ChangeLog	2018-02-21 19:41:03 UTC (rev 228887)
@@ -1,3 +1,20 @@
+2018-02-21  Brian Burg  <[email protected]>
+
+        Web Automation: failed provisional loads cause "Navigate To" command to hang
+        https://bugs.webkit.org/show_bug.cgi?id=183007
+        <rdar://problem/37751819>
+
+        Reviewed by Andy Estes.
+
+        This hang was revealed by WPT test current_url.py::get_current_url_file_protocol. Now the
+        test simply fails because Safari chooses a policy of 'Ignore' for externally-opened files.
+        I filed an upstream issue with the test here: https://github.com/w3c/webdriver/issues/1232
+
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
+        Notify the session that the load failed in the frame, just like we do
+        for non-provisional failed loads and successful loads.
+
 2018-02-20  Nan Wang  <[email protected]>
 
         AX: Keyboard focus not following VoiceOver cursor into web content or within web content.

Modified: trunk/Source/WebKit/UIProcess/WebPageProxy.cpp (228886 => 228887)


--- trunk/Source/WebKit/UIProcess/WebPageProxy.cpp	2018-02-21 19:36:47 UTC (rev 228886)
+++ trunk/Source/WebKit/UIProcess/WebPageProxy.cpp	2018-02-21 19:41:03 UTC (rev 228887)
@@ -3348,6 +3348,11 @@
     WebFrameProxy* frame = m_process->webFrame(frameID);
     MESSAGE_CHECK(frame);
 
+    if (m_controlledByAutomation) {
+        if (auto* automationSession = process().processPool().automationSession())
+            automationSession->navigationOccurredForFrame(*frame);
+    }
+
     // FIXME: We should message check that navigationID is not zero here, but it's currently zero for some navigations through the page cache.
     RefPtr<API::Navigation> navigation;
     if (frame->isMainFrame() && navigationID)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to