Title: [189122] trunk/Source/WebKit/mac
- Revision
- 189122
- Author
- bda...@apple.com
- Date
- 2015-08-28 13:35:28 -0700 (Fri, 28 Aug 2015)
Log Message
Crash in WK1 when clicking on a PDF inside an iframe
https://bugs.webkit.org/show_bug.cgi?id=148585
-and corresponding-
rdar://problem/22165194
Reviewed by Tim Horton.
Only handle WebHTMLViews.
* WebView/WebImmediateActionController.mm:
(-[WebImmediateActionController immediateActionRecognizerWillPrepare:]):
(-[WebImmediateActionController immediateActionRecognizerDidCancelAnimation:]):
Modified Paths
Diff
Modified: trunk/Source/WebKit/mac/ChangeLog (189121 => 189122)
--- trunk/Source/WebKit/mac/ChangeLog 2015-08-28 20:06:25 UTC (rev 189121)
+++ trunk/Source/WebKit/mac/ChangeLog 2015-08-28 20:35:28 UTC (rev 189122)
@@ -1,3 +1,17 @@
+2015-08-28 Beth Dakin <bda...@apple.com>
+
+ Crash in WK1 when clicking on a PDF inside an iframe
+ https://bugs.webkit.org/show_bug.cgi?id=148585
+ -and corresponding-
+ rdar://problem/22165194
+
+ Reviewed by Tim Horton.
+
+ Only handle WebHTMLViews.
+ * WebView/WebImmediateActionController.mm:
+ (-[WebImmediateActionController immediateActionRecognizerWillPrepare:]):
+ (-[WebImmediateActionController immediateActionRecognizerDidCancelAnimation:]):
+
2015-08-28 Jer Noble <jer.no...@apple.com>
[iOS] Make the AllowsInlineMediaPlayback preference work in WebKit / WebKit2.
Modified: trunk/Source/WebKit/mac/WebView/WebImmediateActionController.mm (189121 => 189122)
--- trunk/Source/WebKit/mac/WebView/WebImmediateActionController.mm 2015-08-28 20:06:25 UTC (rev 189121)
+++ trunk/Source/WebKit/mac/WebView/WebImmediateActionController.mm 2015-08-28 20:35:28 UTC (rev 189122)
@@ -158,12 +158,17 @@
if (!_webView)
return;
+ NSView *documentView = [[[_webView _selectedOrMainFrame] frameView] documentView];
+ if (![documentView isKindOfClass:[WebHTMLView class]]) {
+ [self _cancelImmediateAction];
+ return;
+ }
+
if (immediateActionRecognizer != _immediateActionRecognizer)
return;
[_webView _setMaintainsInactiveSelection:YES];
- WebHTMLView *documentView = [[[_webView _selectedOrMainFrame] frameView] documentView];
NSPoint locationInDocumentView = [immediateActionRecognizer locationInView:documentView];
[self performHitTestAtPoint:locationInDocumentView];
[self _updateImmediateActionItem];
@@ -208,7 +213,11 @@
if (immediateActionRecognizer != _immediateActionRecognizer)
return;
- Frame* coreFrame = core([[[[_webView _selectedOrMainFrame] frameView] documentView] _frame]);
+ NSView *documentView = [[[_webView _selectedOrMainFrame] frameView] documentView];
+ if (![documentView isKindOfClass:[WebHTMLView class]])
+ return;
+
+ Frame* coreFrame = core([(WebHTMLView *)documentView _frame]);
if (coreFrame) {
ImmediateActionStage lastStage = coreFrame->eventHandler().immediateActionStage();
if (lastStage == ImmediateActionStage::ActionUpdated)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes