From 1b33ec13352e72905bedf8d6a75ed6ab3d61f053 Mon Sep 17 00:00:00 2001 From: Lucas Silva Date: Thu, 9 Mar 2023 20:15:20 +0000 Subject: [PATCH] Check DreamActivity callback type to prevent class cast exception This keeps the type-checking introduced in http://ag/21518427, but removes the NO_HISTORY flag which causes the lowlight system dream on tablets to break This reverts commit be56335883fc2b1e207ec3db5b473a83c566172b. Reason for revert: fix-forward Change-Id: Idc5ce791fb07f2a7a181fb0b875bf001968b6889 --- core/java/android/service/dreams/DreamActivity.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/core/java/android/service/dreams/DreamActivity.java b/core/java/android/service/dreams/DreamActivity.java index a2fa1392b0796..a3892238f1e6a 100644 --- a/core/java/android/service/dreams/DreamActivity.java +++ b/core/java/android/service/dreams/DreamActivity.java @@ -58,11 +58,13 @@ public class DreamActivity extends Activity { setTitle(title); } - final Bundle extras = getIntent().getExtras(); - mCallback = (DreamService.DreamActivityCallbacks) extras.getBinder(EXTRA_CALLBACK); - - if (mCallback != null) { + final Object callback = getIntent().getExtras().getBinder(EXTRA_CALLBACK); + if (callback instanceof DreamService.DreamActivityCallbacks) { + mCallback = (DreamService.DreamActivityCallbacks) callback; mCallback.onActivityCreated(this); + } else { + mCallback = null; + finishAndRemoveTask(); } }