Merge "use hostname when address null ProxyProperties parcelling" am: 8de0c34da0

Original change: undetermined

Change-Id: I75cda1f0a38ca4683154a7fca4f07bb1c5286453
This commit is contained in:
Irfan Sheriff
2021-05-31 10:49:03 +00:00
committed by Automerger Merge Worker

View File

@@ -88,13 +88,23 @@ public class ProxyProperties implements Parcelable {
* @hide
*/
public void writeToParcel(Parcel dest, int flags) {
String host = null;
if (mProxy != null) {
InetAddress addr = mProxy.getAddress();
if (addr != null) {
dest.writeByte((byte)1);
dest.writeByteArray(addr.getAddress());
dest.writeInt(mProxy.getPort());
}
try {
InetAddress addr = mProxy.getAddress();
if (addr != null) {
host = addr.getHostAddress();
} else {
/* Does not resolve when addr is null */
host = mProxy.getHostName();
}
} catch (Exception e) { }
}
if (host != null) {
dest.writeByte((byte)1);
dest.writeString(host);
dest.writeInt(mProxy.getPort());
} else {
dest.writeByte((byte)0);
}
@@ -111,9 +121,11 @@ public class ProxyProperties implements Parcelable {
ProxyProperties proxyProperties = new ProxyProperties();
if (in.readByte() == 1) {
try {
InetAddress addr = InetAddress.getByAddress(in.createByteArray());
proxyProperties.setSocketAddress(new InetSocketAddress(addr, in.readInt()));
} catch (UnknownHostException e) { }
String host = in.readString();
int port = in.readInt();
proxyProperties.setSocketAddress(InetSocketAddress.createUnresolved(
host, port));
} catch (IllegalArgumentException e) { }
}
proxyProperties.setExclusionList(in.readString());
return proxyProperties;