Remove assertion introduced in r229683
authorachristensen@apple.com <achristensen@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 19 Feb 2019 22:49:13 +0000 (22:49 +0000)
committerachristensen@apple.com <achristensen@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 19 Feb 2019 22:49:13 +0000 (22:49 +0000)
https://bugs.webkit.org/show_bug.cgi?id=194825
<rdar://problem/47628258>

Reviewed by Geoffrey Garen.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
If we reach this code and the form's original Document's Frame has been destroyed,
we have already been told to submit the form so do so, just like we do if the WebPage
has been destroyed.  This is a rare edge case having to do with the timing of Frame
destruction and decidePolicyForNavigationAction response, which unfortunately does not
reproduce with a test case unless the timing of IPC is just right.

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

Source/WebKit/ChangeLog
Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp

index 49a21d9..1255703 100644 (file)
@@ -1,3 +1,19 @@
+2019-02-19  Alex Christensen  <achristensen@webkit.org>
+
+        Remove assertion introduced in r229683
+        https://bugs.webkit.org/show_bug.cgi?id=194825
+        <rdar://problem/47628258>
+
+        Reviewed by Geoffrey Garen.
+
+        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
+        (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
+        If we reach this code and the form's original Document's Frame has been destroyed,
+        we have already been told to submit the form so do so, just like we do if the WebPage
+        has been destroyed.  This is a rare edge case having to do with the timing of Frame
+        destruction and decidePolicyForNavigationAction response, which unfortunately does not
+        reproduce with a test case unless the timing of IPC is just right.
+
 2019-02-19  Antoine Quint  <graouts@apple.com>
 
         [iOS] "touch-action: none" should not prevent text selection or tapping on a link
index c5a1855..a61d710 100644 (file)
@@ -973,9 +973,11 @@ void WebFrameLoaderClient::dispatchWillSubmitForm(FormState& formState, Completi
     auto& form = formState.form();
 
     auto* sourceCoreFrame = formState.sourceDocument().frame();
-    RELEASE_ASSERT(sourceCoreFrame);
+    if (!sourceCoreFrame)
+        return completionHandler();
     auto* sourceFrame = WebFrame::fromCoreFrame(*sourceCoreFrame);
-    ASSERT(sourceFrame);
+    if (!sourceFrame)
+        return completionHandler();
 
     auto& values = formState.textFieldValues();