Title: [195570] branches/safari-601.1.46-branch/Source/WebKit2
- Revision
- 195570
- Author
- matthew_han...@apple.com
- Date
- 2016-01-25 16:43:45 -0800 (Mon, 25 Jan 2016)
Log Message
Merge r195424. rdar://problem/24222456
Modified Paths
Diff
Modified: branches/safari-601.1.46-branch/Source/WebKit2/ChangeLog (195569 => 195570)
--- branches/safari-601.1.46-branch/Source/WebKit2/ChangeLog 2016-01-26 00:43:42 UTC (rev 195569)
+++ branches/safari-601.1.46-branch/Source/WebKit2/ChangeLog 2016-01-26 00:43:45 UTC (rev 195570)
@@ -1,3 +1,28 @@
+2016-01-25 Matthew Hanson <matthew_han...@apple.com>
+
+ Merge r195424. rdar://problem/24222456
+
+ 2016-01-21 Dean Jackson <d...@apple.com>
+
+ [iOS] Crash in _endPotentialTapAndEnableDoubleTapGesturesIfNecessary
+ https://bugs.webkit.org/show_bug.cgi?id=153326
+ <rdar://problem/24264339>
+
+ Reviewed by Anders Carlsson.
+
+ UIKit's UIGestureRecognizer could call back into the WKContentView
+ after the associated WKWebView has disappeared. The fix is to
+ explicitly null the WKWebView reference as we deallocate.
+
+ * UIProcess/API/Cocoa/WKWebView.mm:
+ (-[WKWebView dealloc]): Tell the WKContentView we are going away.
+ * UIProcess/ios/WKContentView.h:
+ * UIProcess/ios/WKContentView.mm:
+ (-[WKContentView _webViewDestroyed]):
+ * UIProcess/ios/WKContentViewInteraction.mm:
+ (-[WKContentView _endPotentialTapAndEnableDoubleTapGesturesIfNecessary]):
+ Only do something if the WKWebView is still around.
+
2016-01-20 Matthew Hanson <matthew_han...@apple.com>
Merge r195082. rdar://problem/23633319
Modified: branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm (195569 => 195570)
--- branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm 2016-01-26 00:43:42 UTC (rev 195569)
+++ branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm 2016-01-26 00:43:45 UTC (rev 195570)
@@ -423,6 +423,10 @@
- (void)dealloc
{
+#if PLATFORM(IOS)
+ [_contentView _webViewDestroyed];
+#endif
+
if (_remoteObjectRegistry)
_page->process().processPool().removeMessageReceiver(Messages::RemoteObjectRegistry::messageReceiverName(), _page->pageID());
Modified: branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/ios/WKContentView.h (195569 => 195570)
--- branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/ios/WKContentView.h 2016-01-26 00:43:42 UTC (rev 195569)
+++ branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/ios/WKContentView.h 2016-01-26 00:43:45 UTC (rev 195570)
@@ -74,6 +74,8 @@
- (void)didZoomToScale:(CGFloat)scale;
- (void)willStartZoomOrScroll;
+- (void)_webViewDestroyed;
+
- (std::unique_ptr<WebKit::DrawingAreaProxy>)_createDrawingAreaProxy;
- (void)_processDidExit;
- (void)_didRelaunchProcess;
Modified: branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/ios/WKContentView.mm (195569 => 195570)
--- branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/ios/WKContentView.mm 2016-01-26 00:43:42 UTC (rev 195569)
+++ branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/ios/WKContentView.mm 2016-01-26 00:43:45 UTC (rev 195570)
@@ -455,6 +455,11 @@
}
}
+- (void)_webViewDestroyed
+{
+ _webView = nil;
+}
+
#pragma mark PageClientImpl methods
- (std::unique_ptr<DrawingAreaProxy>)_createDrawingAreaProxy
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes