[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.15.1-1414-gc69ee75
mrowe at apple.com
mrowe at apple.com
Thu Oct 29 20:42:43 UTC 2009
The following commit has been merged in the webkit-1.1 branch:
commit f044181cf88b21c64df942174d6a72fb87aa4113
Author: mrowe at apple.com <mrowe at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Sat Oct 10 00:46:39 2009 +0000
WebKit/mac: <rdar://problem/7290671> Crash after navigating away from a page with subframe containing plug-in
Reviewed by Brady Eidson.
At the time that -stop is called on a WebBaseNetscapePluginView that is contained within a subframe
the WebFrame's data source has been zeroed out. This was causing -[WebBaseNetscapePluginView webFrame]
to return nil during -stop, preventing the plug-in view from unregistering itself from the PluginHalter.
We fix this by having -webFrame retrieve the frame directly rather than retrieving it from the data source.
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView dataSource]): Get the data source from the WebFrame.
(-[WebBaseNetscapePluginView webFrame]): Get the Frame directly from the element's document rather
than taking a windy route through the WebDataSource.
WebKitTools: Enable plug-in halting in DumpRenderTree.
We drop the plug-in halting delay to 1 second and opt in the delegate method to never halt plug-ins.
This is sufficient to ensure that the crash covered by <rdar://problem/7290671> no longer occurs.
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetDefaultsToConsistentValues):
* DumpRenderTree/mac/UIDelegate.mm:
(-[UIDelegate webView:shouldHaltPlugin:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@49411 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/mac/ChangeLog b/WebKit/mac/ChangeLog
index 187e861..d9a7ab9 100644
--- a/WebKit/mac/ChangeLog
+++ b/WebKit/mac/ChangeLog
@@ -1,3 +1,19 @@
+2009-10-09 Mark Rowe <mrowe at apple.com>
+
+ Reviewed by Brady Eidson.
+
+ <rdar://problem/7290671> Crash after navigating away from a page with subframe containing plug-in
+
+ At the time that -stop is called on a WebBaseNetscapePluginView that is contained within a subframe
+ the WebFrame's data source has been zeroed out. This was causing -[WebBaseNetscapePluginView webFrame]
+ to return nil during -stop, preventing the plug-in view from unregistering itself from the PluginHalter.
+ We fix this by having -webFrame retrieve the frame directly rather than retrieving it from the data source.
+
+ * Plugins/WebBaseNetscapePluginView.mm:
+ (-[WebBaseNetscapePluginView dataSource]): Get the data source from the WebFrame.
+ (-[WebBaseNetscapePluginView webFrame]): Get the Frame directly from the element's document rather
+ than taking a windy route through the WebDataSource.
+
2009-10-09 Brady Eidson <beidson at apple.com>
Reviewed by Dan Bernstein.
diff --git a/WebKit/mac/Plugins/WebBaseNetscapePluginView.mm b/WebKit/mac/Plugins/WebBaseNetscapePluginView.mm
index e730419..4af043d 100644
--- a/WebKit/mac/Plugins/WebBaseNetscapePluginView.mm
+++ b/WebKit/mac/Plugins/WebBaseNetscapePluginView.mm
@@ -640,13 +640,12 @@ private:
- (WebDataSource *)dataSource
{
- WebFrame *webFrame = kit(_element->document()->frame());
- return [webFrame _dataSource];
+ return [[self webFrame] _dataSource];
}
- (WebFrame *)webFrame
{
- return [[self dataSource] webFrame];
+ return kit(_element->document()->frame());
}
- (WebView *)webView
diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index c1018d5..807e4eb 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -1,3 +1,17 @@
+2009-10-09 Mark Rowe <mrowe at apple.com>
+
+ Reviewed by Brady Eidson.
+
+ Enable plug-in halting in DumpRenderTree.
+
+ We drop the plug-in halting delay to 1 second and opt in the delegate method to never halt plug-ins.
+ This is sufficient to ensure that the crash covered by <rdar://problem/7290671> no longer occurs.
+
+ * DumpRenderTree/mac/DumpRenderTree.mm:
+ (resetDefaultsToConsistentValues):
+ * DumpRenderTree/mac/UIDelegate.mm:
+ (-[UIDelegate webView:shouldHaltPlugin:]):
+
2009-10-08 Brady Eidson <beidson at apple.com>
Reviewed by Dan Bernstein.
diff --git a/WebKitTools/DumpRenderTree/mac/DumpRenderTree.mm b/WebKitTools/DumpRenderTree/mac/DumpRenderTree.mm
index 0c33381..df37eea 100644
--- a/WebKitTools/DumpRenderTree/mac/DumpRenderTree.mm
+++ b/WebKitTools/DumpRenderTree/mac/DumpRenderTree.mm
@@ -410,6 +410,7 @@ static void resetDefaultsToConsistentValues()
[preferences setXSSAuditorEnabled:NO];
[preferences setExperimentalNotificationsEnabled:NO];
[preferences setExperimentalWebSocketsEnabled:NO];
+ [preferences setPluginAllowedRunTime:1];
[preferences setPrivateBrowsingEnabled:NO];
[preferences setAuthorAndUserStylesEnabled:YES];
diff --git a/WebKitTools/DumpRenderTree/mac/UIDelegate.mm b/WebKitTools/DumpRenderTree/mac/UIDelegate.mm
index a52d5be..393899e 100644
--- a/WebKitTools/DumpRenderTree/mac/UIDelegate.mm
+++ b/WebKitTools/DumpRenderTree/mac/UIDelegate.mm
@@ -157,6 +157,11 @@ DumpRenderTreeDraggingInfo *draggingInfo = nil;
[geolocation setIsAllowed:gLayoutTestController->geolocationPermission()];
}
+- (BOOL)webView:(WebView *)sender shouldHaltPlugin:(DOMNode *)pluginNode
+{
+ return NO;
+}
+
- (void)dealloc
{
[draggingInfo release];
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list