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

Unified Diff: cc/layers/texture_layer.cc

Issue 151093005: cc: Update Main RendererCapabilities on DeferredInitialize (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Release Mailbox if UsingSharedMemoryResources changed in TextureLayer::Update Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: cc/layers/texture_layer.cc
diff --git a/cc/layers/texture_layer.cc b/cc/layers/texture_layer.cc
index bc6b58a0342145bce3130c02d6983591f33855f9..4d51f6472d61d01303f48bedc4ec75314f3fda42 100644
--- a/cc/layers/texture_layer.cc
+++ b/cc/layers/texture_layer.cc
@@ -37,7 +37,8 @@ TextureLayer::TextureLayer(TextureLayerClient* client, bool uses_mailbox)
rate_limit_context_(false),
content_committed_(false),
texture_id_(0),
- needs_set_mailbox_(false) {
+ needs_set_mailbox_(false),
+ did_use_shared_memory_resources_(false) {
vertex_opacity_[0] = 1.0f;
vertex_opacity_[1] = 1.0f;
vertex_opacity_[2] = 1.0f;
@@ -221,6 +222,13 @@ bool TextureLayer::Update(ResourceUpdateQueue* queue,
bool updated = Layer::Update(queue, occlusion);
if (client_) {
if (uses_mailbox_) {
+ bool use_shared_memory_resources =
+ layer_tree_host()->UsingSharedMemoryResources();
+ if (did_use_shared_memory_resources_ != use_shared_memory_resources) {
+ holder_ref_.reset();
danakj 2014/02/14 19:38:50 Now that we're here, I wonder.. the call to Prepar
boliu 2014/02/14 22:03:08 Good point...removed all this code and just make t
+ }
+ did_use_shared_memory_resources_ = use_shared_memory_resources;
+
TextureMailbox mailbox;
scoped_ptr<SingleReleaseCallback> release_callback;
if (client_->PrepareTextureMailbox(

Powered by Google App Engine
This is Rietveld 408576698