Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 32bcf376 authored by Paul Jensen's avatar Paul Jensen Committed by Android Git Automerger
Browse files

am 4d8b2f76: am b3322d8a: am f1980965: am 1c637c5f: Merge "Remove needless...

am 4d8b2f76: am b3322d8a: am f1980965: am 1c637c5f: Merge "Remove needless locking of mRulesLock that caused deadlocks." into lmp-dev

* commit '4d8b2f76b3a144de3656001a3d42cf08c6e39bc3':
  Remove needless locking of mRulesLock that caused deadlocks.
parents 46727589 03ba6fe0
Loading
Loading
Loading
Loading
+13 −16
Original line number Diff line number Diff line
@@ -979,14 +979,12 @@ public class ConnectivityService extends IConnectivityManager.Stub {
        enforceAccessPermission();
        final int uid = Binder.getCallingUid();
        final ArrayList<NetworkInfo> result = Lists.newArrayList();
        synchronized (mRulesLock) {
        for (int networkType = 0; networkType <= ConnectivityManager.MAX_NETWORK_TYPE;
                networkType++) {
            if (getNetworkInfoForType(networkType) != null) {
                result.add(getFilteredNetworkInfo(networkType, uid));
            }
        }
        }
        return result.toArray(new NetworkInfo[result.size()]);
    }

@@ -1078,7 +1076,6 @@ public class ConnectivityService extends IConnectivityManager.Stub {
        enforceAccessPermission();
        final int uid = Binder.getCallingUid();
        final ArrayList<NetworkState> result = Lists.newArrayList();
        synchronized (mRulesLock) {
        for (int networkType = 0; networkType <= ConnectivityManager.MAX_NETWORK_TYPE;
                networkType++) {
            if (getNetworkInfoForType(networkType) != null) {
@@ -1088,7 +1085,6 @@ public class ConnectivityService extends IConnectivityManager.Stub {
                result.add(new NetworkState(info, lp, netcap));
            }
        }
        }
        return result.toArray(new NetworkState[result.size()]);
    }

@@ -4132,8 +4128,9 @@ public class ConnectivityService extends IConnectivityManager.Stub {
        if (networkCapabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_NOT_METERED)
                == false) {
            final int uidRules;
            final int uid = Binder.getCallingUid();
            synchronized(mRulesLock) {
                uidRules = mUidRules.get(Binder.getCallingUid(), RULE_ALLOW_ALL);
                uidRules = mUidRules.get(uid, RULE_ALLOW_ALL);
            }
            if ((uidRules & RULE_REJECT_METERED) != 0) {
                // we could silently fail or we can filter the available nets to only give