Index: chrome/browser/renderer_host/backing_store_x.cc |
diff --git a/chrome/browser/renderer_host/backing_store_x.cc b/chrome/browser/renderer_host/backing_store_x.cc |
index a79a8fc4aefa3ba047860a92e7f1c9e748c982e8..34db6589031352f50cf8c4e76a4c3bfc85fbdb50 100644 |
--- a/chrome/browser/renderer_host/backing_store_x.cc |
+++ b/chrome/browser/renderer_host/backing_store_x.cc |
@@ -158,10 +158,12 @@ void BackingStoreX::PaintRectWithoutXrender( |
void BackingStoreX::PaintToBackingStore( |
RenderProcessHost* process, |
- TransportDIB::Id bitmap, |
+ TransportDIB::Id dib_id, |
+ TransportDIB::Handle dib_handle, |
const gfx::Rect& bitmap_rect, |
const std::vector<gfx::Rect>& copy_rects, |
bool* painted_synchronously) { |
+ TransportDIB::ScopedHandle scoped_dib_handle(dib_handle); |
// Our paints are always synchronous and the caller can free the TransportDIB |
// when we're done, even on error. |
*painted_synchronously = true; |
@@ -179,7 +181,8 @@ void BackingStoreX::PaintToBackingStore( |
height <= 0 || height > kMaxVideoLayerSize) |
return; |
- TransportDIB* dib = process->GetTransportDIB(bitmap); |
+ TransportDIB* dib = process->GetTransportDIB(dib_id, |
+ scoped_dib_handle.release()); |
if (!dib) |
return; |