Index: content/browser/android/synchronous_compositor_host.cc |
diff --git a/content/browser/android/synchronous_compositor_host.cc b/content/browser/android/synchronous_compositor_host.cc |
index 8c35ae705607d4593f93f46f210c4c7ae463cb91..f1b18890135511b113d9f261c0f66794b13ac070 100644 |
--- a/content/browser/android/synchronous_compositor_host.cc |
+++ b/content/browser/android/synchronous_compositor_host.cc |
@@ -176,22 +176,20 @@ class ScopedSetSkCanvas { |
bool SynchronousCompositorHost::DemandDrawSwInProc(SkCanvas* canvas) { |
SyncCompositorCommonRendererParams common_renderer_params; |
- bool success = false; |
- std::unique_ptr<cc::CompositorFrame> frame(new cc::CompositorFrame); |
+ base::Optional<cc::CompositorFrameMetadata> metadata; |
ScopedSetSkCanvas set_sk_canvas(canvas); |
SyncCompositorDemandDrawSwParams params; // Unused. |
{ |
base::ThreadRestrictions::ScopedAllowWait wait; |
if (!sender_->Send(new SyncCompositorMsg_DemandDrawSw( |
- routing_id_, params, &success, &common_renderer_params, |
- frame.get()))) { |
+ routing_id_, params, &common_renderer_params, &metadata))) { |
return false; |
} |
} |
- if (!success) |
+ if (!metadata) |
return false; |
ProcessCommonParams(common_renderer_params); |
- UpdateFrameMetaData(std::move(frame->metadata)); |
+ UpdateFrameMetaData(std::move(*metadata)); |
return true; |
} |
@@ -243,23 +241,21 @@ bool SynchronousCompositorHost::DemandDrawSw(SkCanvas* canvas) { |
if (!software_draw_shm_) |
return false; |
- std::unique_ptr<cc::CompositorFrame> frame(new cc::CompositorFrame); |
+ base::Optional<cc::CompositorFrameMetadata> metadata; |
SyncCompositorCommonRendererParams common_renderer_params; |
- bool success = false; |
{ |
base::ThreadRestrictions::ScopedAllowWait wait; |
if (!sender_->Send(new SyncCompositorMsg_DemandDrawSw( |
- routing_id_, params, &success, &common_renderer_params, |
- frame.get()))) { |
+ routing_id_, params, &common_renderer_params, &metadata))) { |
return false; |
} |
} |
ScopedSendZeroMemory send_zero_memory(this); |
- if (!success) |
+ if (!metadata) |
return false; |
ProcessCommonParams(common_renderer_params); |
- UpdateFrameMetaData(std::move(frame->metadata)); |
+ UpdateFrameMetaData(std::move(*metadata)); |
SkBitmap bitmap; |
if (!bitmap.installPixels(info, software_draw_shm_->shm.memory(), stride)) |