| 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 0f682a4ec3e25c2fb2f9e1b76e78260987b510bd..f6080506caadab0bfbdbb6aba88c7ee5a1289ec9 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
|
| @@ -11,6 +11,18 @@
|
|
|
| namespace content {
|
|
|
| +GpuMemoryBufferImplSurfaceTexture::GpuMemoryBufferImplSurfaceTexture(
|
| + const gfx::Size& size,
|
| + unsigned internalformat)
|
| + : GpuMemoryBufferImpl(size, internalformat),
|
| + native_window_(NULL),
|
| + stride_(0u) {}
|
| +
|
| +GpuMemoryBufferImplSurfaceTexture::~GpuMemoryBufferImplSurfaceTexture() {
|
| + if (native_window_)
|
| + ANativeWindow_release(native_window_);
|
| +}
|
| +
|
| // static
|
| bool GpuMemoryBufferImplSurfaceTexture::IsFormatSupported(
|
| unsigned internalformat) {
|
| @@ -33,6 +45,13 @@ bool GpuMemoryBufferImplSurfaceTexture::IsUsageSupported(unsigned usage) {
|
| }
|
|
|
| // static
|
| +bool GpuMemoryBufferImplSurfaceTexture::IsConfigurationSupported(
|
| + unsigned internalformat,
|
| + unsigned usage) {
|
| + return IsFormatSupported(internalformat) && IsUsageSupported(usage);
|
| +}
|
| +
|
| +// static
|
| int GpuMemoryBufferImplSurfaceTexture::WindowFormat(unsigned internalformat) {
|
| switch (internalformat) {
|
| case GL_RGBA8_OES:
|
| @@ -43,22 +62,12 @@ int GpuMemoryBufferImplSurfaceTexture::WindowFormat(unsigned internalformat) {
|
| }
|
| }
|
|
|
| -GpuMemoryBufferImplSurfaceTexture::GpuMemoryBufferImplSurfaceTexture(
|
| - gfx::Size size,
|
| - unsigned internalformat)
|
| - : GpuMemoryBufferImpl(size, internalformat),
|
| - native_window_(NULL),
|
| - stride_(0u) {}
|
| -
|
| -GpuMemoryBufferImplSurfaceTexture::~GpuMemoryBufferImplSurfaceTexture() {
|
| - if (native_window_)
|
| - ANativeWindow_release(native_window_);
|
| -}
|
| -
|
| -bool GpuMemoryBufferImplSurfaceTexture::Initialize(
|
| +bool GpuMemoryBufferImplSurfaceTexture::InitializeFromHandle(
|
| gfx::GpuMemoryBufferHandle handle) {
|
| - TRACE_EVENT0("gpu", "GpuMemoryBufferImplSurfaceTexture::Initialize");
|
| + TRACE_EVENT0("gpu",
|
| + "GpuMemoryBufferImplSurfaceTexture::InitializeFromHandle");
|
|
|
| + DCHECK(IsFormatSupported(internalformat_));
|
| DCHECK(!native_window_);
|
| native_window_ = SurfaceTextureLookup::GetInstance()->AcquireNativeWidget(
|
| handle.surface_texture_id.primary_id,
|
|
|