Bug 84805 - [chromium] Hold video provider lock from willDraw to didDraw
Summary: [chromium] Hold video provider lock from willDraw to didDraw
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Adrienne Walker
Depends on: 84807 84812
  Show dependency treegraph
Reported: 2012-04-24 17:02 PDT by Adrienne Walker
Modified: 2012-04-25 19:05 PDT (History)
6 users (show)

See Also:

Patch (4.01 KB, patch)
2012-04-24 18:21 PDT, Adrienne Walker
jamesr: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Adrienne Walker 2012-04-24 17:02:16 PDT
It's possible for the video provider and frame to go away after willDraw, but before the frame gets uploaded into textures.  Since the frame is a raw pointer (that the provider is responsible for), this could cause a bad memory access.

Unfortunately, this depends on some other fixes to make sure that we don't ever call willDraw a second time without calling didDraw (which will deadlock on aquiring the exact same lock).
Comment 1 Adrienne Walker 2012-04-24 18:21:31 PDT
Created attachment 138712 [details]
Comment 2 James Robinson 2012-04-25 15:53:02 PDT
Comment on attachment 138712 [details]

Comment 3 Adrienne Walker 2012-04-25 19:05:59 PDT
Committed r115281: <http://trac.webkit.org/changeset/115281>