Bug 106225

Summary: [BlackBerry] Never avoid blitting when one-shot drawing sync is involved.
Product: WebKit Reporter: Jakob Petsovits <jpetsovits>
Component: WebKit BlackBerryAssignee: Jakob Petsovits <jpetsovits>
Status: RESOLVED FIXED    
Severity: Normal CC: mifenton, rwlbuis, tonikitoo, webkit.review.bot, yong.li.webkit
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description Jakob Petsovits 2013-01-07 09:31:14 PST
didRenderContent() has a mechanism to avoid double blits;when scrolling or zooming is enabled then we don't issue blitContents() as the client would (continually) do thatalready.However, since r138024, didRenderContents() also deals with one-shot drawing synchronization and commits. When these are required, we can't just skip out or the backingstore and overlaying composited layers are likely to get out of sync. The condition also doesn't make much sense for direct rendering as no blit calls are issued at all when it is enabled.Fix the issue by limiting the impact of the scroll/zoom early return to only regular blit operations.

Patch below. Based on a patch and analysis by Chris Guan. Bug also known as RIM PR 274948.
Comment 1 Jakob Petsovits 2013-01-07 09:51:07 PST
Created attachment 181515 [details]
Patch
Comment 2 WebKit Review Bot 2013-01-07 10:30:30 PST
Comment on attachment 181515 [details]
Patch

Clearing flags on attachment: 181515

Committed r138956: <http://trac.webkit.org/changeset/138956>
Comment 3 WebKit Review Bot 2013-01-07 10:30:33 PST
All reviewed patches have been landed.  Closing bug.