Index: cc/resources/video_resource_updater.cc |
diff --git a/cc/resources/video_resource_updater.cc b/cc/resources/video_resource_updater.cc |
index fd3221258de64ece6c64980a144eb95a29f424db..033597f7dde4ea6c00ad9d0e4e5c2ff82a126126 100644 |
--- a/cc/resources/video_resource_updater.cc |
+++ b/cc/resources/video_resource_updater.cc |
@@ -75,13 +75,14 @@ class SyncTokenClientImpl : public media::VideoFrame::SyncTokenClient { |
const gpu::SyncToken& sync_token) |
: gl_(gl), sync_token_(sync_token) {} |
~SyncTokenClientImpl() override {} |
- uint32 InsertSyncPoint() override { |
+ void GenerateSyncToken(gpu::SyncToken* sync_token) override { |
if (sync_token_.HasData()) { |
- DCHECK_EQ(gpu::CommandBufferNamespace::OLD_SYNC_POINTS, |
- sync_token_.namespace_id()); |
- return static_cast<uint32>(sync_token_.release_count()); |
+ *sync_token = sync_token_; |
+ } else { |
+ const uint64_t fence_sync = gl_->InsertFenceSyncCHROMIUM(); |
+ gl_->Flush(); |
piman
2015/11/05 00:04:36
ShallowFlushCHROMIUM instead off Flush:
- it doesn
David Yen
2015/11/05 00:34:27
Done.
|
+ gl_->GenSyncTokenCHROMIUM(fence_sync, sync_token->GetData()); |
} |
- return gl_->InsertSyncPointCHROMIUM(); |
} |
void WaitSyncToken(const gpu::SyncToken& sync_token) override { |
if (sync_token.HasData()) { |