Merge "Fix for NullPointerException in SmsMessage" am: 49ef1ed315

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2296057

Change-Id: Icb8bb64a8115a6c0def427ae150ff70556e8c437
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Treehugger Robot
2022-11-09 20:06:43 +00:00
committed by Automerger Merge Worker

View File

@@ -1092,6 +1092,11 @@ public class SmsMessage {
if (!TextUtils.isEmpty(simOperator)) {
for (NoEmsSupportConfig currentConfig : mNoEmsSupportConfigList) {
if (currentConfig == null) {
Rlog.w("SmsMessage", "hasEmsSupport currentConfig is null");
continue;
}
if (simOperator.startsWith(currentConfig.mOperatorNumber) &&
(TextUtils.isEmpty(currentConfig.mGid1) ||
(!TextUtils.isEmpty(currentConfig.mGid1) &&
@@ -1155,18 +1160,21 @@ public class SmsMessage {
private static boolean mIsNoEmsSupportConfigListLoaded = false;
private static boolean isNoEmsSupportConfigListExisted() {
if (!mIsNoEmsSupportConfigListLoaded) {
Resources r = Resources.getSystem();
if (r != null) {
String[] listArray = r.getStringArray(
com.android.internal.R.array.no_ems_support_sim_operators);
if ((listArray != null) && (listArray.length > 0)) {
mNoEmsSupportConfigList = new NoEmsSupportConfig[listArray.length];
for (int i=0; i<listArray.length; i++) {
mNoEmsSupportConfigList[i] = new NoEmsSupportConfig(listArray[i].split(";"));
synchronized (SmsMessage.class) {
if (!mIsNoEmsSupportConfigListLoaded) {
Resources r = Resources.getSystem();
if (r != null) {
String[] listArray = r.getStringArray(
com.android.internal.R.array.no_ems_support_sim_operators);
if ((listArray != null) && (listArray.length > 0)) {
mNoEmsSupportConfigList = new NoEmsSupportConfig[listArray.length];
for (int i = 0; i < listArray.length; i++) {
mNoEmsSupportConfigList[i] = new NoEmsSupportConfig(
listArray[i].split(";"));
}
}
mIsNoEmsSupportConfigListLoaded = true;
}
mIsNoEmsSupportConfigListLoaded = true;
}
}