diff options
| -rw-r--r-- | core/java/android/app/servertransaction/TransactionExecutorHelper.java | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/core/java/android/app/servertransaction/TransactionExecutorHelper.java b/core/java/android/app/servertransaction/TransactionExecutorHelper.java index 92f7dee0b0ad..cb6aa09cc6db 100644 --- a/core/java/android/app/servertransaction/TransactionExecutorHelper.java +++ b/core/java/android/app/servertransaction/TransactionExecutorHelper.java @@ -31,6 +31,7 @@ import android.app.ActivityThread.ActivityClientRecord; import android.app.ClientTransactionHandler; import android.os.IBinder; import android.util.IntArray; +import android.util.Log; import com.android.internal.annotations.VisibleForTesting; @@ -43,6 +44,7 @@ import java.util.List; * @hide */ public class TransactionExecutorHelper { + private static final String TAG = TransactionExecutorHelper.class.getSimpleName(); // A penalty applied to path with destruction when looking for the shortest one. private static final int DESTRUCTION_PENALTY = 10; @@ -162,6 +164,11 @@ public class TransactionExecutorHelper { if (finalStates == null || finalStates.length == 0) { return UNDEFINED; } + if (r == null) { + // Early return because the ActivityClientRecord hasn't been created or cannot be found. + Log.w(TAG, "ActivityClientRecord was null"); + return UNDEFINED; + } final int currentState = r.getLifecycleState(); int closestState = UNDEFINED; |