Add a null check before reference networkInfo.

b/26758858

Change-Id: If335ece223114dbfb6b08391f18a09467f377cf1
This commit is contained in:
Wei Liu
2016-01-25 10:32:27 -08:00
parent 2e7ecddd5b
commit b8eaf45e1d

View File

@@ -1206,7 +1206,7 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
final ArrayList<Pair<String, NetworkIdentity>> connIdents = new ArrayList<>(states.length); final ArrayList<Pair<String, NetworkIdentity>> connIdents = new ArrayList<>(states.length);
final ArraySet<String> connIfaces = new ArraySet<String>(states.length); final ArraySet<String> connIfaces = new ArraySet<String>(states.length);
for (NetworkState state : states) { for (NetworkState state : states) {
if (state.networkInfo.isConnected()) { if (state.networkInfo != null && state.networkInfo.isConnected()) {
final NetworkIdentity ident = NetworkIdentity.buildNetworkIdentity(mContext, state); final NetworkIdentity ident = NetworkIdentity.buildNetworkIdentity(mContext, state);
final String baseIface = state.linkProperties.getInterfaceName(); final String baseIface = state.linkProperties.getInterfaceName();
@@ -1970,6 +1970,10 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
if (policy != null) { if (policy != null) {
return policy.metered; return policy.metered;
} else { } else {
if (state.networkInfo == null) {
return false;
}
final int type = state.networkInfo.getType(); final int type = state.networkInfo.getType();
if (isNetworkTypeMobile(type) || type == TYPE_WIMAX) { if (isNetworkTypeMobile(type) || type == TYPE_WIMAX) {
return true; return true;