summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHung-ying Tyan <tyanh@google.com>2010-07-22 20:07:56 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2010-07-22 20:07:56 -0700
commitb6f78209fbfc00548920ae04f62936071f4ea7a1 (patch)
treec5e5084d1561a11cc3cb7db0f977733382a0fc35
parente2aa71b48b810f98e04ab98818dd9c2bbc7d4621 (diff)
parent880d1e35fabd0d390bf1a12f59193088f1039170 (diff)
downloadnist-sip-b6f78209fbfc00548920ae04f62936071f4ea7a1.tar.gz
Merge "SipAudioCallImpl: deliver call change failure and don't end call when getting an error in a call."
-rw-r--r--src/com/android/sip/SipAudioCallImpl.java17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/com/android/sip/SipAudioCallImpl.java b/src/com/android/sip/SipAudioCallImpl.java
index ffecb16..7264570 100644
--- a/src/com/android/sip/SipAudioCallImpl.java
+++ b/src/com/android/sip/SipAudioCallImpl.java
@@ -279,14 +279,25 @@ public class SipAudioCallImpl extends SipSessionAdapter
@Override
public void onCallChangeFailed(ISipSession session,
String className, String message) {
- // TODO:
+ Log.d(TAG, "sip call change failed: " + message);
+ Listener listener = mListener;
+ if (listener != null) {
+ try {
+ listener.onError(SipAudioCallImpl.this,
+ className + ": " + message);
+ } catch (Throwable t) {
+ Log.e(TAG, "onCallBusy()", t);
+ }
+ }
}
@Override
public void onError(ISipSession session, String className,
String message) {
Log.d(TAG, "sip session error: " + className + ": " + message);
- close(true);
+ synchronized (this) {
+ if (!isInCall()) close(true);
+ }
Listener listener = mListener;
if (listener != null) {
try {
@@ -684,6 +695,4 @@ public class SipAudioCallImpl extends SipSessionAdapter
return null;
}
}
-
- // TODO: fix listener callback deadlock
}