summaryrefslogtreecommitdiffstats
path: root/content
diff options
context:
space:
mode:
Diffstat (limited to 'content')
-rw-r--r--content/browser/renderer_host/render_widget_host_view_base.cc8
1 files changed, 7 insertions, 1 deletions
diff --git a/content/browser/renderer_host/render_widget_host_view_base.cc b/content/browser/renderer_host/render_widget_host_view_base.cc
index 0124030..9390c1e 100644
--- a/content/browser/renderer_host/render_widget_host_view_base.cc
+++ b/content/browser/renderer_host/render_widget_host_view_base.cc
@@ -216,7 +216,6 @@ void RenderWidgetHostViewBase::MovePluginWindowsHelper(
unsigned long flags = 0;
const webkit::npapi::WebPluginGeometry& move = moves[i];
HWND window = move.window;
- CHECK(WebPluginDelegateImpl::IsPluginDelegateWindow(window));
// As the plugin parent window which lives on the browser UI thread is
// destroyed asynchronously, it is possible that we have a stale window
@@ -228,6 +227,13 @@ void RenderWidgetHostViewBase::MovePluginWindowsHelper(
if (!::IsWindow(window))
continue;
+ if (!WebPluginDelegateImpl::IsPluginDelegateWindow(window)) {
+ // The renderer should only be trying to move plugin windows. However,
+ // this may happen as a result of a race condition (i.e. even after the
+ // check right above), so we ignore it.
+ continue;
+ }
+
if (oop_plugins) {
if (cur_parent == WebPluginDelegateImpl::GetDefaultWindowParent()) {
// The plugin window hasn't been parented yet, add an intermediate