Merge "Fix connect duration for un-established SIP calls." into gingerbread

This commit is contained in:
John Huang
2010-10-21 10:46:17 -07:00
committed by Android (Google) Code Review

View File

@ -49,7 +49,7 @@ abstract class SipConnectionBase extends Connection {
* calculating deltas. * calculating deltas.
*/ */
private long connectTimeReal; private long connectTimeReal;
private long duration; private long duration = -1L;
private long holdingStartTime; // The time when the Connection last transitioned private long holdingStartTime; // The time when the Connection last transitioned
// into HOLDING // into HOLDING
@ -74,7 +74,7 @@ abstract class SipConnectionBase extends Connection {
} }
break; break;
case DISCONNECTED: case DISCONNECTED:
duration = SystemClock.elapsedRealtime() - connectTimeReal; duration = getDurationMillis();
disconnectTime = System.currentTimeMillis(); disconnectTime = System.currentTimeMillis();
break; break;
case HOLDING: case HOLDING:
@ -102,7 +102,7 @@ abstract class SipConnectionBase extends Connection {
public long getDurationMillis() { public long getDurationMillis() {
if (connectTimeReal == 0) { if (connectTimeReal == 0) {
return 0; return 0;
} else if (duration == 0) { } else if (duration < 0) {
return SystemClock.elapsedRealtime() - connectTimeReal; return SystemClock.elapsedRealtime() - connectTimeReal;
} else { } else {
return duration; return duration;