Index: content/browser/compositor/delegated_frame_host.cc |
diff --git a/content/browser/compositor/delegated_frame_host.cc b/content/browser/compositor/delegated_frame_host.cc |
index 488b138b772e158b706c4e870f7a43c45bc738ae..26a0b297369768c0872fcf15191a3f16f6780392 100644 |
--- a/content/browser/compositor/delegated_frame_host.cc |
+++ b/content/browser/compositor/delegated_frame_host.cc |
@@ -131,8 +131,10 @@ bool DelegatedFrameHost::ShouldCreateResizeLock() { |
void DelegatedFrameHost::RequestCopyOfOutput( |
scoped_ptr<cc::CopyOutputRequest> request) { |
if (use_surfaces_) { |
- // TODO(jbauman): Make this work with surfaces. |
- request->SendEmptyResult(); |
+ if (surface_factory_ && !surface_id_.is_null()) |
+ surface_factory_->RequestCopyOfSurface(surface_id_, request.Pass()); |
+ else |
+ request->SendEmptyResult(); |
} else { |
client_->GetLayer()->RequestCopyOfOutput(request.Pass()); |
} |