[Webkit-unassigned] [Bug 92753] [Qt] Snowshoe desktop crashes when opening a new tab
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Tue Aug 7 09:07:28 PDT 2012
https://bugs.webkit.org/show_bug.cgi?id=92753
--- Comment #9 from Jocelyn Turcotte <jocelyn.turcotte at nokia.com> 2012-08-07 09:07:22 PST ---
(From update of attachment 156946)
View in context: https://bugs.webkit.org/attachment.cgi?id=156946&action=review
> Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:-180
> - // This is necessary for running layout tests. Since in this case we are not waiting for a UIProcess to reply nicely.
> - // Instead we are just triggering forceRepaint. But we still want to have the scripted animation callbacks being executed.
> - syncDisplayState();
> -
You'll need to keep this if you agree with the comment below.
> Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:183
> - flushPendingLayerChanges();
> +
> + performScheduledLayerFlush();
Please move the m_waitingForUIProcess check at the top of flushPendingLayerChange instead to make sure that we keep the behavior relatively to m_isSuspended and didPerformScheduledLayerFlush().
It will also make sure that we check this variable in the same method that we reset it.
> Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:192
> +bool LayerTreeCoordinator::forceRepaintAsync(uint64_t callbackID)
> +{
> + // We expect the UI process to not require a new repaint until the previous one has finished.
> + ASSERT(!m_forceRepaintAsyncCallbackID);
> + m_forceRepaintAsyncCallbackID = callbackID;
> + return true;
> }
You're missing a scheduleLayerFlush() in here somewhere, no?
Also, I would prefer safely doing this before assigning m_forceRepaintAsyncCallbackID and comment that this is just a clumsy safety measure instead of asserting:
if (m_forceRepaintAsyncCallbackID)
m_webPage->send(Messages::WebPageProxy::VoidCallback(m_forceRepaintAsyncCallbackID));
> Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp:206
> + if (!m_layerTreeHost) {
Place this at the beginning, you don't want to invalidate and layout if you're not going to do anything with it here.
> Source/WebKit2/WebProcess/WebPage/DrawingAreaImpl.cpp:207
> + // FIXME: this could be implemented for the non composited path as well.
It's a FIXME that might never be fixed and we have no need for it now, I think it would be better to avoid it.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list