diff options
author | kaanb@chromium.org <kaanb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-25 04:34:08 +0000 |
---|---|---|
committer | kaanb@chromium.org <kaanb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-04-25 04:34:08 +0000 |
commit | ba5144b65f3910c870d9bc9e5a12e140f7d0e773 (patch) | |
tree | 4d9ae17a628ed3165a96b724ec2d16bb8a0cf081 /android_webview | |
parent | 0c708a28906edeece847a19aa7102fbab0de0a70 (diff) | |
download | chromium_src-ba5144b65f3910c870d9bc9e5a12e140f7d0e773.zip chromium_src-ba5144b65f3910c870d9bc9e5a12e140f7d0e773.tar.gz chromium_src-ba5144b65f3910c870d9bc9e5a12e140f7d0e773.tar.bz2 |
android_webview: Assert map/unmap order for GpuMemoryBuffer
BUG=175012
Review URL: https://chromiumcodereview.appspot.com/14471016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@196306 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'android_webview')
-rw-r--r-- | android_webview/browser/gpu_memory_buffer_impl.cc | 7 | ||||
-rw-r--r-- | android_webview/browser/gpu_memory_buffer_impl.h | 1 |
2 files changed, 7 insertions, 1 deletions
diff --git a/android_webview/browser/gpu_memory_buffer_impl.cc b/android_webview/browser/gpu_memory_buffer_impl.cc index b44de8c..dcd7345 100644 --- a/android_webview/browser/gpu_memory_buffer_impl.cc +++ b/android_webview/browser/gpu_memory_buffer_impl.cc @@ -20,7 +20,8 @@ AwDrawGLFunctionTable* g_gl_draw_functions = NULL; GpuMemoryBufferImpl::GpuMemoryBufferImpl(gfx::Size size) : buffer_id_(g_gl_draw_functions->create_graphic_buffer( size.width(), size.height())), - size_(size) { + size_(size), + mapped_(false) { } GpuMemoryBufferImpl::~GpuMemoryBufferImpl() { @@ -32,14 +33,18 @@ GpuMemoryBufferImpl::~GpuMemoryBufferImpl() { void GpuMemoryBufferImpl::Map(gpu::GpuMemoryBuffer::AccessMode mode, void** vaddr) { DCHECK(buffer_id_ != 0); + DCHECK(!mapped_); int err = g_gl_draw_functions->lock(buffer_id_, mode, vaddr); DCHECK(err == 0); + mapped_ = true; } void GpuMemoryBufferImpl::Unmap() { DCHECK(buffer_id_ != 0); + DCHECK(mapped_); int err = g_gl_draw_functions->unlock(buffer_id_); DCHECK(err == 0); + mapped_ = false; } void* GpuMemoryBufferImpl::GetNativeBuffer() { diff --git a/android_webview/browser/gpu_memory_buffer_impl.h b/android_webview/browser/gpu_memory_buffer_impl.h index 493c140..e584b7c 100644 --- a/android_webview/browser/gpu_memory_buffer_impl.h +++ b/android_webview/browser/gpu_memory_buffer_impl.h @@ -30,6 +30,7 @@ class GpuMemoryBufferImpl : public gpu::GpuMemoryBuffer { private: int buffer_id_; gfx::Size size_; + bool mapped_; DISALLOW_COPY_AND_ASSIGN(GpuMemoryBufferImpl); }; |