From e18083062eed92a39e777c277722d75ee5c308c9 Mon Sep 17 00:00:00 2001 From: Chalard Jean Date: Thu, 7 Jun 2018 19:40:24 +0900 Subject: [PATCH] [PT07] Small cleanup of setGlobalProxy Test: runtest Change-Id: I4825e6326f7ce7bd45d625d57824f8d27c51d6f2 --- .../server/connectivity/ProxyTracker.java | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/services/core/java/com/android/server/connectivity/ProxyTracker.java b/services/core/java/com/android/server/connectivity/ProxyTracker.java index daaedd8131..37221663db 100644 --- a/services/core/java/com/android/server/connectivity/ProxyTracker.java +++ b/services/core/java/com/android/server/connectivity/ProxyTracker.java @@ -139,14 +139,15 @@ public class ProxyTracker { public void setGlobalProxy(@Nullable ProxyInfo proxyProperties) { synchronized (mProxyLock) { + // ProxyInfo#equals is not commutative :( and is public API, so it can't be fixed. if (proxyProperties == mGlobalProxy) return; if (proxyProperties != null && proxyProperties.equals(mGlobalProxy)) return; if (mGlobalProxy != null && mGlobalProxy.equals(proxyProperties)) return; - String host = ""; - int port = 0; - String exclList = ""; - String pacFileUrl = ""; + final String host; + final int port; + final String exclList; + final String pacFileUrl; if (proxyProperties != null && (!TextUtils.isEmpty(proxyProperties.getHost()) || !Uri.EMPTY.equals(proxyProperties.getPacFileUrl()))) { if (!proxyProperties.isValid()) { @@ -157,10 +158,13 @@ public class ProxyTracker { host = mGlobalProxy.getHost(); port = mGlobalProxy.getPort(); exclList = mGlobalProxy.getExclusionListAsString(); - if (!Uri.EMPTY.equals(proxyProperties.getPacFileUrl())) { - pacFileUrl = proxyProperties.getPacFileUrl().toString(); - } + pacFileUrl = Uri.EMPTY.equals(proxyProperties.getPacFileUrl()) + ? "" : proxyProperties.getPacFileUrl().toString(); } else { + host = ""; + port = 0; + exclList = ""; + pacFileUrl = ""; mGlobalProxy = null; } final ContentResolver res = mContext.getContentResolver(); @@ -175,10 +179,7 @@ public class ProxyTracker { Binder.restoreCallingIdentity(token); } - if (mGlobalProxy == null) { - proxyProperties = mDefaultProxy; - } - sendProxyBroadcast(proxyProperties); + sendProxyBroadcast(mGlobalProxy == null ? mDefaultProxy : proxyProperties); } } }