diff options
Diffstat (limited to 'chromium/ui/gl/gl_image_io_surface_egl.mm')
-rw-r--r-- | chromium/ui/gl/gl_image_io_surface_egl.mm | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/chromium/ui/gl/gl_image_io_surface_egl.mm b/chromium/ui/gl/gl_image_io_surface_egl.mm index 690af44dffe..d0e762433bf 100644 --- a/chromium/ui/gl/gl_image_io_surface_egl.mm +++ b/chromium/ui/gl/gl_image_io_surface_egl.mm @@ -190,21 +190,23 @@ bool GLImageIOSurfaceEGL::CopyTexImage(unsigned target) { EGLSurface y_surface = EGL_NO_SURFACE; EGLSurface uv_surface = EGL_NO_SURFACE; + EGLSurface* y_surface_ptr = &y_surface; + EGLSurface* uv_surface_ptr = &uv_surface; glGetIntegerv(target_getter, &rgb_texture); base::ScopedClosureRunner destroy_resources_runner( base::BindOnce(base::RetainBlock(^{ - if (y_surface != EGL_NO_SURFACE) { + if (*y_surface_ptr != EGL_NO_SURFACE) { EGLBoolean result = - eglReleaseTexImage(display_, y_surface, EGL_BACK_BUFFER); + eglReleaseTexImage(display_, *y_surface_ptr, EGL_BACK_BUFFER); DCHECK(result == EGL_TRUE); - result = eglDestroySurface(display_, y_surface); + result = eglDestroySurface(display_, *y_surface_ptr); DCHECK(result == EGL_TRUE); } - if (uv_surface != EGL_NO_SURFACE) { + if (*uv_surface_ptr != EGL_NO_SURFACE) { EGLBoolean result = - eglReleaseTexImage(display_, uv_surface, EGL_BACK_BUFFER); + eglReleaseTexImage(display_, *uv_surface_ptr, EGL_BACK_BUFFER); DCHECK(result == EGL_TRUE); - result = eglDestroySurface(display_, uv_surface); + result = eglDestroySurface(display_, *uv_surface_ptr); DCHECK(result == EGL_TRUE); } glBindTexture(target, rgb_texture); |