From 3c2587f26eed32a8723488131d1d8940dc147ee1 Mon Sep 17 00:00:00 2001 From: John Reck Date: Thu, 4 Aug 2016 07:55:38 -0700 Subject: [PATCH] Fix NPE in TextureView Bug: 30651595 Change-Id: Ic6cc2a1598de173aaadb4061562236a563a662b3 --- core/java/android/view/TextureView.java | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/core/java/android/view/TextureView.java b/core/java/android/view/TextureView.java index ce2fa81976a3..a42da8563ba0 100644 --- a/core/java/android/view/TextureView.java +++ b/core/java/android/view/TextureView.java @@ -242,21 +242,23 @@ public class TextureView extends View { } private void releaseSurfaceTexture() { - boolean shouldRelease = true; + if (mSurface != null) { + boolean shouldRelease = true; - if (mListener != null) { - shouldRelease = mListener.onSurfaceTextureDestroyed(mSurface); - } + if (mListener != null) { + shouldRelease = mListener.onSurfaceTextureDestroyed(mSurface); + } - synchronized (mNativeWindowLock) { - nDestroyNativeWindow(); - } + synchronized (mNativeWindowLock) { + nDestroyNativeWindow(); + } - if (shouldRelease) { - mSurface.release(); + if (shouldRelease) { + mSurface.release(); + } + mSurface = null; + mHadSurface = true; } - mSurface = null; - mHadSurface = true; } /** -- 2.11.0