summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@digia.com>2013-08-27 12:01:11 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-08-27 12:12:13 +0200
commita978cfb2e4c0fc3dd7551aaff16f1eee60ab1b1b (patch)
treed255c362d6eabdcd6ab73f9db9e3e6112facf4cc
parent5141326b74e03c3d4a5ec9d9beb68c3f0c06489e (diff)
downloadqtwebkit-a978cfb2e4c0fc3dd7551aaff16f1eee60ab1b1b.tar.gz
Assertion while scrolling news.google.com
https://bugs.webkit.org/show_bug.cgi?id=115303 Reviewed by Anders Carlsson. Do not relayout when accessing script elements during painting. * html/HTMLEmbedElement.cpp: (WebCore::HTMLEmbedElement::renderWidgetForJSBindings): Task-number: QTBUG-30892 Change-Id: Ide884c78dd6a359c0e0de22bb98774d7da90b901 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154672 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
-rw-r--r--Source/WebCore/html/HTMLEmbedElement.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/Source/WebCore/html/HTMLEmbedElement.cpp b/Source/WebCore/html/HTMLEmbedElement.cpp
index 9176d95be..ba830f041 100644
--- a/Source/WebCore/html/HTMLEmbedElement.cpp
+++ b/Source/WebCore/html/HTMLEmbedElement.cpp
@@ -28,6 +28,7 @@
#include "CSSPropertyNames.h"
#include "DocumentLoader.h"
#include "Frame.h"
+#include "FrameView.h"
#include "HTMLDocument.h"
#include "HTMLImageLoader.h"
#include "HTMLNames.h"
@@ -70,7 +71,9 @@ static inline RenderWidget* findWidgetRenderer(const Node* n)
RenderWidget* HTMLEmbedElement::renderWidgetForJSBindings() const
{
- document()->updateLayoutIgnorePendingStylesheets();
+ FrameView* view = document()->view();
+ if (!view || (!view->isInLayout() && !view->isPainting()))
+ document()->updateLayoutIgnorePendingStylesheets();
return findWidgetRenderer(this);
}