Merge "Calling linkToDeath on binder in NRI constructor" am: 6269d2eb7a

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1661222

Change-Id: Iec83a93593e52cdb2baf12fa76c70af9df263ee4
This commit is contained in:
James Mattis
2021-04-01 03:15:42 +00:00
committed by Automerger Merge Worker

View File

@@ -5542,12 +5542,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
incrementRequestCountOrThrow(this); incrementRequestCountOrThrow(this);
mCallbackFlags = callbackFlags; mCallbackFlags = callbackFlags;
mCallingAttributionTag = callingAttributionTag; mCallingAttributionTag = callingAttributionTag;
linkDeathRecipient();
try {
mBinder.linkToDeath(this, 0);
} catch (RemoteException e) {
binderDied();
}
} }
NetworkRequestInfo(@NonNull final NetworkRequestInfo nri, NetworkRequestInfo(@NonNull final NetworkRequestInfo nri,
@@ -5585,6 +5580,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
incrementRequestCountOrThrow(this); incrementRequestCountOrThrow(this);
mCallbackFlags = nri.mCallbackFlags; mCallbackFlags = nri.mCallbackFlags;
mCallingAttributionTag = nri.mCallingAttributionTag; mCallingAttributionTag = nri.mCallingAttributionTag;
linkDeathRecipient();
} }
NetworkRequestInfo(int asUid, @NonNull final NetworkRequest r) { NetworkRequestInfo(int asUid, @NonNull final NetworkRequest r) {
@@ -5613,8 +5609,18 @@ public class ConnectivityService extends IConnectivityManager.Stub
return Collections.unmodifiableList(tempRequests); return Collections.unmodifiableList(tempRequests);
} }
void linkDeathRecipient() {
if (null != mBinder) {
try {
mBinder.linkToDeath(this, 0);
} catch (RemoteException e) {
binderDied();
}
}
}
void unlinkDeathRecipient() { void unlinkDeathRecipient() {
if (mBinder != null) { if (null != mBinder) {
mBinder.unlinkToDeath(this, 0); mBinder.unlinkToDeath(this, 0);
} }
} }