REGRESSION: Chase app crashes immediately after authentication
authorwenson_hsieh@apple.com <wenson_hsieh@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 15 Jul 2019 18:50:29 +0000 (18:50 +0000)
committerwenson_hsieh@apple.com <wenson_hsieh@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 15 Jul 2019 18:50:29 +0000 (18:50 +0000)
https://bugs.webkit.org/show_bug.cgi?id=199798
<rdar://problem/53106179>

Reviewed by Alex Christensen.

After r247411, we sometimes try to consult `_page` from WKWebView, before WKWebView's `_page` has been set. This
happens under a check for -[WKWebView _isEditable], from within -[WKContentView setupInteraction], which happens
if the host app is not linked on the iOS 12 SDK or earlier. To mitigate this, simply add a null check in
-_isEditable.

There's currently no great way to test this, since we don't have a mechanism for simulating linked-on checks.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _isEditable]):

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

Source/WebKit/ChangeLog
Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm

index 800ca2c..bdb285d 100644 (file)
@@ -1,3 +1,21 @@
+2019-07-15  Wenson Hsieh  <wenson_hsieh@apple.com>
+
+        REGRESSION: Chase app crashes immediately after authentication
+        https://bugs.webkit.org/show_bug.cgi?id=199798
+        <rdar://problem/53106179>
+
+        Reviewed by Alex Christensen.
+
+        After r247411, we sometimes try to consult `_page` from WKWebView, before WKWebView's `_page` has been set. This
+        happens under a check for -[WKWebView _isEditable], from within -[WKContentView setupInteraction], which happens
+        if the host app is not linked on the iOS 12 SDK or earlier. To mitigate this, simply add a null check in
+        -_isEditable.
+
+        There's currently no great way to test this, since we don't have a mechanism for simulating linked-on checks.
+
+        * UIProcess/API/Cocoa/WKWebView.mm:
+        (-[WKWebView _isEditable]):
+
 2019-07-13  Andres Gonzalez  <andresg_22@apple.com>
 
         Add accessibility support to WKDataListSuggestionsView.
index 3255f43..5b4f51f 100644 (file)
@@ -4643,7 +4643,7 @@ FOR_EACH_PRIVATE_WKCONTENTVIEW_ACTION(FORWARD_ACTION_TO_WKCONTENTVIEW)
 
 - (BOOL)_isEditable
 {
-    return _page->isEditable();
+    return _page && _page->isEditable();
 }
 
 - (void)_setEditable:(BOOL)editable