Fix NullPointerException in InCallUI with CallTimer.
bug: 10325158
Change-Id: Ie7e89c2e1e3038df89387e99de6849ed12203824
diff --git a/InCallUI/src/com/android/incallui/CallCardPresenter.java b/InCallUI/src/com/android/incallui/CallCardPresenter.java
index 330957e..60486f4 100644
--- a/InCallUI/src/com/android/incallui/CallCardPresenter.java
+++ b/InCallUI/src/com/android/incallui/CallCardPresenter.java
@@ -150,13 +150,15 @@
final CallCardUi ui = getUi();
if (ui == null || mPrimary == null || mPrimary.getState() != Call.State.ACTIVE) {
- ui.setPrimaryCallElapsedTime(false, null);
+ if (ui != null) {
+ ui.setPrimaryCallElapsedTime(false, null);
+ }
mCallTimer.cancel();
+ } else {
+ final long callStart = mPrimary.getConnectTime();
+ final long duration = System.currentTimeMillis() - callStart;
+ ui.setPrimaryCallElapsedTime(true, DateUtils.formatElapsedTime(duration / 1000));
}
-
- final long callStart = mPrimary.getConnectTime();
- final long duration = System.currentTimeMillis() - callStart;
- ui.setPrimaryCallElapsedTime(true, DateUtils.formatElapsedTime(duration / 1000));
}