Index: cc/layers/video_layer_impl.cc |
diff --git a/cc/layers/video_layer_impl.cc b/cc/layers/video_layer_impl.cc |
index fc04a266ca835d0d340aa553406e981a81920499..819b542af26cda46bec49c192a7b7d5cb03e9092 100644 |
--- a/cc/layers/video_layer_impl.cc |
+++ b/cc/layers/video_layer_impl.cc |
@@ -12,7 +12,7 @@ |
#include "cc/quads/texture_draw_quad.h" |
#include "cc/quads/yuv_video_draw_quad.h" |
#include "cc/resources/resource_provider.h" |
-#include "cc/resources/single_release_callback.h" |
+#include "cc/resources/single_release_callback_impl.h" |
#include "cc/trees/layer_tree_impl.h" |
#include "cc/trees/occlusion_tracker.h" |
#include "cc/trees/proxy.h" |
@@ -122,7 +122,8 @@ bool VideoLayerImpl::WillDraw(DrawMode draw_mode, |
for (size_t i = 0; i < external_resources.mailboxes.size(); ++i) { |
unsigned resource_id = resource_provider->CreateResourceFromTextureMailbox( |
external_resources.mailboxes[i], |
- SingleReleaseCallback::Create(external_resources.release_callbacks[i])); |
+ SingleReleaseCallbackImpl::Create( |
+ external_resources.release_callbacks[i])); |
frame_resources_.push_back(resource_id); |
} |
@@ -336,8 +337,10 @@ void VideoLayerImpl::DidDraw(ResourceProvider* resource_provider) { |
if (frame_resource_type_ == |
VideoFrameExternalResources::SOFTWARE_RESOURCE) { |
- for (size_t i = 0; i < software_resources_.size(); ++i) |
- software_release_callback_.Run(0, false); |
+ for (size_t i = 0; i < software_resources_.size(); ++i) { |
+ software_release_callback_.Run( |
+ 0, false, layer_tree_impl()->BlockingMainThreadTaskRunner()); |
+ } |
software_resources_.clear(); |
software_release_callback_.Reset(); |