diff options
| -rw-r--r-- | core/java/android/view/HardwareRenderer.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/core/java/android/view/HardwareRenderer.java b/core/java/android/view/HardwareRenderer.java index 03428c732c2d..bcefdbaf5d90 100644 --- a/core/java/android/view/HardwareRenderer.java +++ b/core/java/android/view/HardwareRenderer.java @@ -1301,7 +1301,10 @@ public abstract class HardwareRenderer { void destroySurface() { if (mEglSurface != null && mEglSurface != EGL_NO_SURFACE) { - sEgl.eglMakeCurrent(sEglDisplay, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); + if (mEglSurface.equals(sEgl.eglGetCurrentSurface(EGL_DRAW))) { + sEgl.eglMakeCurrent(sEglDisplay, + EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); + } sEgl.eglDestroySurface(sEglDisplay, mEglSurface); mEglSurface = null; } |