Bug 63405 - Web Inspector: [REGRESSION r84481] updateLayout called from DrawNodeHighlight
Summary: Web Inspector: [REGRESSION r84481] updateLayout called from DrawNodeHighlight
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Web Inspector (Deprecated) (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Alexander Pavlov (apavlov)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-06-26 10:36 PDT by Pavel Feldman
Modified: 2011-06-27 04:54 PDT (History)
10 users (show)

See Also:


Attachments
Patch (2.86 KB, patch)
2011-06-27 02:50 PDT, Pavel Feldman
yurys: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Pavel Feldman 2011-06-26 10:36:32 PDT
Draw highlight should not update layout. Otherwise we hit an assertion:

ASSERTION FAILED: !view() || (!view()->isInLayout() && !view()->isPainting())
WebKit/Source/WebCore/dom/Document.cpp(1572) : virtual void WebCore::Document::updateStyleIfNeeded()

1   WebCore::Document::updateStyleIfNeeded()
2   WebCore::Document::updateLayout()
3   WebCore::Document::updateLayoutIgnorePendingStylesheets()
4   WebCore::DOMNodeHighlighter::DrawNodeHighlight(WebCore::GraphicsContext&, WebCore::Node*, WebCore::DOMNodeHighlighter::HighlightMode)
5   WebCore::InspectorDOMAgent::drawNodeHighlight(WebCore::GraphicsContext&) const
6   WebCore::InspectorController::drawNodeHighlight(WebCore::GraphicsContext&) const
7   -[WebNodeHighlightView drawRect:]
8   -[NSView _drawRect:clip:]
9   -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:]
10  -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:]
11  -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
12  -[NSNextStepFrame _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
13  -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:]
14  -[NSView displayIfNeeded]
15  -[WebNodeHighlight setNeedsUpdateInTargetViewRect:]
16  -[WebHTMLView drawSingleRect:]
17  -[WebHTMLView drawRect:]
18  -[NSView _drawRect:clip:]
19  -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:]
20  -[WebHTMLView(WebPrivate) _recursiveDisplayAllDirtyWithLockFocus:visRect:]
21  -[NSView _recursiveDisplayDescendantsInRect:]
22  -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:]
23  -[NSView _recursiveDisplayDescendantsInRect:]
24  -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:]
25  -[NSView _recursiveDisplayDescendantsInRect:]
26  -[NSView _recursiveDisplayAllDirtyWithLockFocus:visRect:]
27  -[NSView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]
28  -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:]
29  WebCore::Widget::paint(WebCore::GraphicsContext*, WebCore::IntRect const&)
30  WebCore::ScrollView::paint(WebCore::GraphicsContext*, WebCore::IntRect const&)
31  WebCore::RenderWidget::paint(WebCore::PaintInfo&, WebCore::IntPoint const&)

Regressed in https://bugs.webkit.org/show_bug.cgi?id=58992
Comment 1 Pavel Feldman 2011-06-27 02:50:50 PDT
Created attachment 98693 [details]
Patch
Comment 2 Yury Semikhatsky 2011-06-27 04:52:02 PDT
Comment on attachment 98693 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=98693&action=review

> Source/WebCore/ChangeLog:7
> +

Please a meaningful description of the change.
Comment 3 Pavel Feldman 2011-06-27 04:54:48 PDT
Committed r89815: <http://trac.webkit.org/changeset/89815>