Bug 83049 - [Qt][WK2] Assertion failure on loading new page after panning/zooming in touchwebview
Summary: [Qt][WK2] Assertion failure on loading new page after panning/zooming in touc...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-04-03 11:18 PDT by Dinu Jacob
Modified: 2012-04-10 08:36 PDT (History)
3 users (show)

See Also:


Attachments
Patch (1.39 KB, patch)
2012-04-03 12:07 PDT, Dinu Jacob
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dinu Jacob 2012-04-03 11:18:18 PDT
On loading a new page after panning/zooming (which results in a change in position), the following ASSERT observed:

ASSERTION FAILED: !m_suspendCount
Source/WebKit2/UIProcess/qt/QtViewportInteractionEngine.cpp(420) : void WebKit::QtViewportInteractionEngine::reset()
1   0xb73545fb WebKitBuild/Debug/lib/libWebKit2.so.1(_ZN6WebKit27QtViewportInteractionEngine5resetEv+0x4b) [0xb73545fb]
2   0xb7354677 WebKitBuild/Debug/lib/libWebKit2.so.1(_ZN6WebKit27QtViewportInteractionEngine16applyConstraintsERKNS0_11ConstraintsE+0x1f) [0xb7354677]
3   0xb725747a WebKitBuild/Debug/lib/libWebKit2.so.1(_ZN29QQuickWebViewFlickablePrivate27didChangeViewportPropertiesERKN7WebCore17ViewportArgumentsE+0x5e) [0xb725747a]
4   0xb734a2f7 WebKitBuild/Debug/lib/libWebKit2.so.1(_ZN12QtPageClient27didChangeViewportPropertiesERKN7WebCore17ViewportArgumentsE+0x33) [0xb734a2f7]
5   0xb72f554b WebKitBuild/Debug/lib/libWebKit2.so.1(_ZN6WebKit12WebPageProxy27didChangeViewportPropertiesERKN7WebCore17ViewportArgumentsE+0x25) [0xb72f554b]
6   0xb7487a30 WebKitBuild/Debug/lib/libWebKit2.so.1(_ZN7CoreIPC18callMemberFunctionIN6WebKit12WebPageProxyEMS2_FvRKN7WebCore17ViewportArgumentsEES4_EEvRKNS_10Arguments1IT1_EEPT_T0_+0x3a) [0xb7487a30]
7   0xb7482e05 WebKitBuild/Debug/lib/libWebKit2.so.1(_ZN7CoreIPC13handleMessageIN8Messages12WebPageProxy27DidChangeViewportPropertiesEN6WebKit12WebPageProxyEMS5_FvRKN7WebCore17ViewportArgumentsEEEEvPNS_15ArgumentDecoderEPT0_T1_+0x55) [0xb7482e05]
8   0xb74808ea WebKitBuild/Debug/lib/libWebKit2.so.1(_ZN6WebKit12WebPageProxy29didReceiveWebPageProxyMessageEPN7CoreIPC10ConnectionENS1_9MessageIDEPNS1_15ArgumentDecoderE+0x17c) [0xb74808ea]
9   0xb72f06b2 WebKitBuild/Debug/lib/libWebKit2.so.1(_ZN6WebKit12WebPageProxy17didReceiveMessageEPN7CoreIPC10ConnectionENS1_9MessageIDEPNS1_15ArgumentDecoderE+0xfa) [0xb72f06b2]
10  0xb7329726 WebKitBuild/Debug/lib/libWebKit2.so.1(_ZN6WebKit15WebProcessProxy17didReceiveMessageEPN7CoreIPC10ConnectionENS1_9MessageIDEPNS1_15ArgumentDecoderE+0x1a2) [0xb7329726]
11  0xb72a9f32 WebKitBuild/Debug/lib/libWebKit2.so.1(_ZN6WebKit25WebConnectionToWebProcess17didReceiveMessageEPN7CoreIPC10ConnectionENS1_9MessageIDEPNS1_15ArgumentDecoderE+0x10c) [0xb72a9f32]
12  0xb71c8fd0 WebKitBuild/Debug/lib/libWebKit2.so.1(_ZN7CoreIPC10Connection15dispatchMessageERNS0_7MessageINS_15ArgumentDecoderEEE+0x14e) [0xb71c8fd0]
13  0xb71c9180 WebKitBuild/Debug/lib/libWebKit2.so.1(_ZN7CoreIPC10Connection16dispatchMessagesEv+0xa2) [0xb71c9180]
Comment 1 Dinu Jacob 2012-04-03 11:23:18 PDT
ensureContentWithinViewportBoundary is called with 'immediate' flag set to false. This results in an animation as there is a change in the visible content rectangle. While the animation is in progress, ChangeViewportProperties message is received. This results in a call to QtViewportInteractionEngine::applyConstraints and the ASSERT in reset fails as we are in the middle of animation for the visible content rect change.
Comment 2 Dinu Jacob 2012-04-03 12:00:54 PDT
When handling contents size change, should set the new visible content rect immediately, instead of animating to it.
Comment 3 Dinu Jacob 2012-04-03 12:07:20 PDT
Created attachment 135386 [details]
Patch
Comment 4 Kenneth Rohde Christiansen 2012-04-10 06:59:55 PDT
Comment on attachment 135386 [details]
Patch

This is fine, but there really shouldnt be many cases where it would be outside of the view (unless the content shrinks for some reason). If that happens in other cases, those should really be examined.
Comment 5 WebKit Review Bot 2012-04-10 08:36:30 PDT
Comment on attachment 135386 [details]
Patch

Clearing flags on attachment: 135386

Committed r113720: <http://trac.webkit.org/changeset/113720>
Comment 6 WebKit Review Bot 2012-04-10 08:36:35 PDT
All reviewed patches have been landed.  Closing bug.