Chromium Code Reviews| Index: ui/gl/gl_image_glx.cc |
| diff --git a/ui/gl/gl_image_glx.cc b/ui/gl/gl_image_glx.cc |
| index 61bd0971d00599d87b34bb5cd876d40ad89b7edd..9770cc2001ab7fd7952fcf41123bcf3c167a5f7c 100644 |
| --- a/ui/gl/gl_image_glx.cc |
| +++ b/ui/gl/gl_image_glx.cc |
| @@ -111,7 +111,9 @@ GLImageGLX::GLImageGLX(const gfx::Size& size, unsigned internalformat) |
| : glx_pixmap_(0), size_(size), internalformat_(internalformat) { |
| } |
| -GLImageGLX::~GLImageGLX() { Destroy(); } |
| +GLImageGLX::~GLImageGLX() { |
| + DCHECK_EQ(0u, glx_pixmap_); |
| +} |
| bool GLImageGLX::Initialize(XID pixmap) { |
| if (!GLSurfaceGLX::IsTextureFromPixmapSupported()) { |
| @@ -160,7 +162,7 @@ bool GLImageGLX::Initialize(XID pixmap) { |
| return true; |
| } |
| -void GLImageGLX::Destroy() { |
| +void GLImageGLX::Destroy(bool have_context) { |
| if (glx_pixmap_) { |
| glXDestroyGLXPixmap(gfx::GetXDisplay(), glx_pixmap_); |
| glx_pixmap_ = 0; |
| @@ -182,7 +184,8 @@ bool GLImageGLX::BindTexImage(unsigned target) { |
| } |
| void GLImageGLX::ReleaseTexImage(unsigned target) { |
| - DCHECK(glx_pixmap_); |
| + if (!glx_pixmap_) |
| + return; |
|
reveman
2014/07/27 23:58:32
nit: you don't have to change this. please keep it
sohanjg
2014/07/28 10:15:58
Done.
|
| DCHECK_EQ(static_cast<GLenum>(GL_TEXTURE_2D), target); |
| glXReleaseTexImageEXT(gfx::GetXDisplay(), glx_pixmap_, GLX_FRONT_LEFT_EXT); |