Fix NPE in the statusbar.

Happens for some reason when switching between LTE and CDMA.  Filing separate
bug about why we see the null ServiceState in that case, but it revealed
this one use which wasn't checked for null.

bug:4518551
Change-Id: If8f9a89658a7165d79f96cad7d99cbf670e96ae7
This commit is contained in:
Robert Greenwalt
2011-06-06 15:28:45 -07:00
parent e9d32283e4
commit acab04dfc1

View File

@@ -446,12 +446,14 @@ public class NetworkController extends BroadcastReceiver {
}
boolean isCdmaEri() {
final int iconIndex = mServiceState.getCdmaEriIconIndex();
if (iconIndex != EriInfo.ROAMING_INDICATOR_OFF) {
final int iconMode = mServiceState.getCdmaEriIconMode();
if (iconMode == EriInfo.ROAMING_ICON_MODE_NORMAL
|| iconMode == EriInfo.ROAMING_ICON_MODE_FLASH) {
return true;
if (mServiceState != null) {
final int iconIndex = mServiceState.getCdmaEriIconIndex();
if (iconIndex != EriInfo.ROAMING_INDICATOR_OFF) {
final int iconMode = mServiceState.getCdmaEriIconMode();
if (iconMode == EriInfo.ROAMING_ICON_MODE_NORMAL
|| iconMode == EriInfo.ROAMING_ICON_MODE_FLASH) {
return true;
}
}
}
return false;
@@ -854,7 +856,7 @@ public class NetworkController extends BroadcastReceiver {
pw.print(" mDataActivity=");
pw.println(mDataActivity);
pw.print(" mServiceState=");
pw.println(mServiceState.toString());
pw.println(mServiceState);
pw.print(" mNetworkName=");
pw.println(mNetworkName);
pw.print(" mNetworkNameDefault=");