diff options
-rw-r--r-- | core/java/com/android/internal/util/StateMachine.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/core/java/com/android/internal/util/StateMachine.java b/core/java/com/android/internal/util/StateMachine.java index 8c4d078ecd78..406b487f643d 100644 --- a/core/java/com/android/internal/util/StateMachine.java +++ b/core/java/com/android/internal/util/StateMachine.java @@ -778,8 +778,11 @@ public class StateMachine { */ @Override public final void handleMessage(Message msg) { - mSm.onPreHandleMessage(msg); if (!mHasQuit) { + if (mSm != null) { + mSm.onPreHandleMessage(msg); + } + if (mDbg) mSm.log("handleMessage: E msg.what=" + msg.what); /** Save the current message */ @@ -803,8 +806,11 @@ public class StateMachine { // We need to check if mSm == null here as we could be quitting. if (mDbg && mSm != null) mSm.log("handleMessage: X"); + + if (mSm != null) { + mSm.onPostHandleMessage(msg); + } } - mSm.onPostHandleMessage(msg); } /** |