| Index: remoting/host/capturer_mac.cc
|
| diff --git a/remoting/host/capturer_mac.cc b/remoting/host/capturer_mac.cc
|
| index ae928475c3663855def99fad02df0729c554e273..8b91c459261210922e3ebc0e96e1850d4e09e242 100644
|
| --- a/remoting/host/capturer_mac.cc
|
| +++ b/remoting/host/capturer_mac.cc
|
| @@ -377,13 +377,14 @@ void CapturerMac::GlBlitFast(const VideoFrameBuffer& buffer,
|
| const int y_offset = (buffer_height - 1) * buffer.bytes_per_row();
|
| for(SkRegion::Iterator i(last_invalid_region_); !i.done(); i.next()) {
|
| SkIRect copy_rect = i.rect();
|
| - copy_rect.intersect(clip_rect);
|
| - CopyRect(last_buffer_ + y_offset,
|
| - -buffer.bytes_per_row(),
|
| - buffer.ptr() + y_offset,
|
| - -buffer.bytes_per_row(),
|
| - 4, // Bytes for pixel for RGBA.
|
| - copy_rect);
|
| + if (copy_rect.intersect(clip_rect)) {
|
| + CopyRect(last_buffer_ + y_offset,
|
| + -buffer.bytes_per_row(),
|
| + buffer.ptr() + y_offset,
|
| + -buffer.bytes_per_row(),
|
| + 4, // Bytes for pixel for RGBA.
|
| + copy_rect);
|
| + }
|
| }
|
| }
|
| last_buffer_ = buffer.ptr();
|
| @@ -404,13 +405,14 @@ void CapturerMac::GlBlitFast(const VideoFrameBuffer& buffer,
|
| const int y_offset = (buffer_height - 1) * buffer.bytes_per_row();
|
| for(SkRegion::Iterator i(region); !i.done(); i.next()) {
|
| SkIRect copy_rect = i.rect();
|
| - copy_rect.intersect(clip_rect);
|
| - CopyRect(ptr + y_offset,
|
| - -buffer.bytes_per_row(),
|
| - buffer.ptr() + y_offset,
|
| - -buffer.bytes_per_row(),
|
| - 4, // Bytes for pixel for RGBA.
|
| - copy_rect);
|
| + if (copy_rect.intersect(clip_rect)) {
|
| + CopyRect(ptr + y_offset,
|
| + -buffer.bytes_per_row(),
|
| + buffer.ptr() + y_offset,
|
| + -buffer.bytes_per_row(),
|
| + 4, // Bytes for pixel for RGBA.
|
| + copy_rect);
|
| + }
|
| }
|
| }
|
| if (!glUnmapBufferARB(GL_PIXEL_PACK_BUFFER_ARB)) {
|
| @@ -460,13 +462,14 @@ void CapturerMac::CgBlit(const VideoFrameBuffer& buffer,
|
| // http://crbug.com/92354
|
| for(SkRegion::Iterator i(region); !i.done(); i.next()) {
|
| SkIRect copy_rect = i.rect();
|
| - copy_rect.intersect(clip_rect);
|
| - CopyRect(display_base_address,
|
| - src_bytes_per_row,
|
| - buffer.ptr(),
|
| - buffer.bytes_per_row(),
|
| - src_bytes_per_pixel,
|
| - copy_rect);
|
| + if (copy_rect.intersect(clip_rect)) {
|
| + CopyRect(display_base_address,
|
| + src_bytes_per_row,
|
| + buffer.ptr(),
|
| + buffer.bytes_per_row(),
|
| + src_bytes_per_pixel,
|
| + copy_rect);
|
| + }
|
| }
|
| }
|
|
|
|
|