From c31c450f5dd1436189fc4ac7a1ae26ef2fb19798 Mon Sep 17 00:00:00 2001 From: Youngsang Cho Date: Tue, 13 May 2014 21:13:47 +0900 Subject: [PATCH] Fix NPE in TvInputService and TvView Bug: 14781233, Bug: 14629185 Change-Id: I8511674f4f3864b3deaa58f4c95b9c91e68f49f4 --- core/java/android/tv/TvInputService.java | 2 +- core/java/android/tv/TvView.java | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/core/java/android/tv/TvInputService.java b/core/java/android/tv/TvInputService.java index 1d6298d7e695a..eeb738dafd3fc 100644 --- a/core/java/android/tv/TvInputService.java +++ b/core/java/android/tv/TvInputService.java @@ -489,7 +489,7 @@ public abstract class TvInputService extends Service { } } } - if (mOverlayView == null) { + if (mOverlayView == null || !mOverlayView.isAttachedToWindow()) { return Session.DISPATCH_NOT_HANDLED; } if (!mOverlayView.hasWindowFocus()) { diff --git a/core/java/android/tv/TvView.java b/core/java/android/tv/TvView.java index 80501e8720727..7eaa86b6642a0 100644 --- a/core/java/android/tv/TvView.java +++ b/core/java/android/tv/TvView.java @@ -347,7 +347,9 @@ public class TvView extends SurfaceView { public void onSessionCreated(Session session) { if (this != mSessionCallback) { // This callback is obsolete. - session.release(); + if (session != null) { + session.release(); + } return; } mSession = session;