Index: content/common/gpu/client/gpu_memory_buffer_impl_surface_texture.cc |
diff --git a/content/common/gpu/client/gpu_memory_buffer_impl_surface_texture.cc b/content/common/gpu/client/gpu_memory_buffer_impl_surface_texture.cc |
index 6449f99e64a59c6dc23cb8b65c5b0ba51aee8619..48a5989717c4c5a5c94399de7b3d4531a57ba098 100644 |
--- a/content/common/gpu/client/gpu_memory_buffer_impl_surface_texture.cc |
+++ b/content/common/gpu/client/gpu_memory_buffer_impl_surface_texture.cc |
@@ -54,8 +54,7 @@ GpuMemoryBufferImplSurfaceTexture::GpuMemoryBufferImplSurfaceTexture( |
const DestructionCallback& callback, |
ANativeWindow* native_window) |
: GpuMemoryBufferImpl(id, size, format, callback), |
- native_window_(native_window), |
- stride_(0) {} |
+ native_window_(native_window) {} |
GpuMemoryBufferImplSurfaceTexture::~GpuMemoryBufferImplSurfaceTexture() { |
ANativeWindow_release(native_window_); |
@@ -99,7 +98,7 @@ base::Closure GpuMemoryBufferImplSurfaceTexture::AllocateForTesting( |
scoped_refptr<gfx::SurfaceTexture> surface_texture = |
gfx::SurfaceTexture::Create(0); |
DCHECK(surface_texture); |
- gfx::GpuMemoryBufferId kBufferId(1); |
+ const gfx::GpuMemoryBufferId kBufferId(1); |
SurfaceTextureManager::GetInstance()->RegisterSurfaceTexture( |
kBufferId.id, 0, surface_texture.get()); |
handle->type = gfx::SURFACE_TEXTURE_BUFFER; |
@@ -107,39 +106,41 @@ base::Closure GpuMemoryBufferImplSurfaceTexture::AllocateForTesting( |
return base::Bind(&FreeSurfaceTextureForTesting, surface_texture, kBufferId); |
} |
-bool GpuMemoryBufferImplSurfaceTexture::Map(void** data) { |
+bool GpuMemoryBufferImplSurfaceTexture::Map() { |
TRACE_EVENT0("gpu", "GpuMemoryBufferImplSurfaceTexture::Map"); |
- |
DCHECK(!mapped_); |
DCHECK(native_window_); |
- ANativeWindow_Buffer buffer; |
- int status = ANativeWindow_lock(native_window_, &buffer, NULL); |
- if (status) { |
- VLOG(1) << "ANativeWindow_lock failed with error code: " << status; |
+ if (ANativeWindow_lock(native_window_, &buffer_, NULL)) { |
+ DPLOG(ERROR) << "ANativeWindow_lock failed"; |
return false; |
} |
- |
- DCHECK_LE(size_.width(), buffer.stride); |
- stride_ = gfx::RowSizeForBufferFormat(buffer.stride, format_, 0); |
+ DCHECK_LE(size_.width(), buffer_.stride); |
mapped_ = true; |
- *data = buffer.bits; |
return true; |
} |
+void* GpuMemoryBufferImplSurfaceTexture::memory(size_t plane) { |
+ TRACE_EVENT0("gpu", "GpuMemoryBufferImplSurfaceTexture::memory"); |
+ DCHECK(mapped_); |
+ DCHECK_EQ(0u, plane); |
+ return buffer_.bits; |
+} |
+ |
void GpuMemoryBufferImplSurfaceTexture::Unmap() { |
TRACE_EVENT0("gpu", "GpuMemoryBufferImplSurfaceTexture::Unmap"); |
- |
DCHECK(mapped_); |
ANativeWindow_unlockAndPost(native_window_); |
mapped_ = false; |
} |
-void GpuMemoryBufferImplSurfaceTexture::GetStride(int* stride) const { |
- *stride = stride_; |
+int GpuMemoryBufferImplSurfaceTexture::stride(size_t plane) const { |
+ DCHECK(mapped_); |
+ DCHECK_EQ(0u, plane); |
+ return gfx::RowSizeForBufferFormat(buffer_.stride, format_, 0); |
} |
-gfx::GpuMemoryBufferHandle GpuMemoryBufferImplSurfaceTexture::GetHandle() |
- const { |
+gfx::GpuMemoryBufferHandle |
+GpuMemoryBufferImplSurfaceTexture::GetHandle() const { |
gfx::GpuMemoryBufferHandle handle; |
handle.type = gfx::SURFACE_TEXTURE_BUFFER; |
handle.id = id_; |