From 9da8301e0abbc940b28a524e36e83f04884ce4cb Mon Sep 17 00:00:00 2001 From: Heather Lee Wilson Date: Mon, 5 May 2014 14:22:50 -0700 Subject: Prevent crashing when disabling MCU during dream wakeup AmbientMode attempting to send message to DozeHardware no longer results in an uncaught IllegalStateException. The exception was crashing Android Wear when DozeHardware had already been released by PowerManagementService at time of AmbientMode's message. Change-Id: I5956a453802b5b764e88638f6b6d899cbc94cc8d --- .../core/java/com/android/server/dreams/DreamManagerService.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/services/core/java/com/android/server/dreams/DreamManagerService.java b/services/core/java/com/android/server/dreams/DreamManagerService.java index fd2f8a1..8968da3 100644 --- a/services/core/java/com/android/server/dreams/DreamManagerService.java +++ b/services/core/java/com/android/server/dreams/DreamManagerService.java @@ -642,8 +642,9 @@ public final class DreamManagerService extends SystemService { try { synchronized (mMcuHal) { if (mReleased) { - throw new IllegalStateException("This operation cannot be performed " - + "because the dream has ended."); + Slog.w(TAG, "Ignoring message to MCU HAL because the dream " + + "has already ended: " + msg); + return null; } return mMcuHal.sendMessage(msg, arg); } -- cgit v1.1