Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(214)

Issue 12252028: Fix race with short-lived TextureImageTransportSurfaces (Closed)

Created:
7 years, 10 months ago by no sievers
Modified:
7 years, 10 months ago
Reviewers:
piman
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, jam, apatrick_chromium
Visibility:
Public.

Description

Fix NULL ptr with short-lived TextureImageTransportSurfaces When the surface is created from GpuCommandBufferStub, it is made current for the very first time while helper_->stub()->decoder()->GetGLContext() returns NULL (see order in GpuCommandBufferStub::OnInitialize()). If we then handle drawing and swapping of a frame while a) the context is still current and we avoid calling Surface::OnMakeCurrent() again b) the surface is destroyed right after with the ack pending, it is possible for context_ to be NULL in BufferPresentedImpl. With virtual contexts, this patch causes us to hold a reference to the real GL context instead now, which is fine because we only need the context to delete the backbuffer texture during destruction. BUG=169429 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=182403

Patch Set 1 #

Patch Set 2 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1 line, -4 lines) Patch
M content/common/gpu/texture_image_transport_surface.cc View 1 1 chunk +1 line, -4 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
no sievers
ptal
7 years, 10 months ago (2013-02-14 01:23:34 UTC) #1
piman
lgtm
7 years, 10 months ago (2013-02-14 02:09:07 UTC) #2
commit-bot: I haz the power
7 years, 10 months ago (2013-02-14 02:42:14 UTC) #3

Powered by Google App Engine
This is Rietveld 408576698