[Webkit-unassigned] [Bug 73228] New: Synchronization problem in Canvas/WebGLRenderingContext when listener asks for image

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Nov 28 10:29:33 PST 2011


https://bugs.webkit.org/show_bug.cgi?id=73228

           Summary: Synchronization problem in
                    Canvas/WebGLRenderingContext when listener asks for
                    image
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: New Bugs
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: danakj at chromium.org


If a listener to HTMLCanvasElement contentChanged asks for the current image, the canvas will stop updating its contents forever.

Two classes:
HTMLCanvasElement      ||       WebGLRenderingContext

----------------------GOOD------------------------------
ask for image here    ---->     paints onto canvas
                                marks NOT DIRTY  (ie nothing new to send to canvas)
saves cache          <----

----------------------GOOD------------------------------
                                new stuff in webgl
clears cache         <----
                                marks DIRTY (stuff to be painted in canvas)

----------------------BAD-------------------------------
                                new stuff in webgl
clears cache         <----
                                notify people
ask for image here    ---->     paints onto canvas
                                marks NOT DIRTY  (ie nothing new to send to canvas)
saves cache          <----
                               marks DIRTY (stuff to be painted in canvas)

Now there is a cached image, so it will never paint onto canvas again. And the canvas is marked dirty so WebGL will never draw onto it again. Each is waiting for the other.

-- 
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