summaryrefslogtreecommitdiffstats
path: root/sip
diff options
context:
space:
mode:
authorBrad Ebinger <breadley@google.com>2016-03-23 19:44:38 -0700
committerBrad Ebinger <breadley@google.com>2016-04-04 14:28:59 -0700
commitd3edc2292d969ecf8df96281c50e1a8f7a3fc777 (patch)
treedaafcc4f45e7e60fd7b947fd1d5eda050be5c169 /sip
parent0e2238b6d7ed8cb14891e71642c8a29af5f9c416 (diff)
downloadandroid_packages_services_Telephony-d3edc2292d969ecf8df96281c50e1a8f7a3fc777.tar.gz
android_packages_services_Telephony-d3edc2292d969ecf8df96281c50e1a8f7a3fc777.tar.bz2
android_packages_services_Telephony-d3edc2292d969ecf8df96281c50e1a8f7a3fc777.zip
Use Emergency PhoneAccount for MT ECM Call on no SIM
Use the correct Emergency PhoneAccount for a MT call on a phone with no SIM that is in ECM. Also, reject incoming SIP calls that are received on a disabled PhoneAccount instead of crashing the Phone process. Bug: 27820226 Change-Id: Iab81df05ba9c4f94f08576baee47475d59760a13
Diffstat (limited to 'sip')
-rw-r--r--sip/src/com/android/services/telephony/sip/SipBroadcastReceiver.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/sip/src/com/android/services/telephony/sip/SipBroadcastReceiver.java b/sip/src/com/android/services/telephony/sip/SipBroadcastReceiver.java
index ea7e6ea15..b49591741 100644
--- a/sip/src/com/android/services/telephony/sip/SipBroadcastReceiver.java
+++ b/sip/src/com/android/services/telephony/sip/SipBroadcastReceiver.java
@@ -22,6 +22,7 @@ import android.content.Intent;
import android.net.sip.SipManager;
import android.os.Bundle;
import android.os.UserHandle;
+import android.telecom.PhoneAccount;
import android.telecom.PhoneAccountHandle;
import android.telecom.TelecomManager;
import android.util.Log;
@@ -83,7 +84,13 @@ public class SipBroadcastReceiver extends BroadcastReceiver {
if (accountHandle != null) {
Bundle extras = new Bundle();
extras.putParcelable(SipUtil.EXTRA_INCOMING_CALL_INTENT, intent);
- TelecomManager.from(context).addNewIncomingCall(accountHandle, extras);
+ TelecomManager tm = TelecomManager.from(context);
+ PhoneAccount phoneAccount = tm.getPhoneAccount(accountHandle);
+ if(phoneAccount != null && phoneAccount.isEnabled()) {
+ tm.addNewIncomingCall(accountHandle, extras);
+ } else {
+ log("takeCall, PhoneAccount is disabled. Not accepting incoming call...");
+ }
}
}