diff options
| author | 2021-07-14 18:59:24 -0700 | |
|---|---|---|
| committer | 2021-07-15 06:58:12 +0000 | |
| commit | bc02830a593112e8a541388f3c6b87dea19e86b3 (patch) | |
| tree | ca4707b796f864b85f7bb3c78777bae181a5f295 | |
| parent | f5c3de0dbdd5a6b6b5c164ef6d159fd87632f756 (diff) | |
Clear binder calling identity before calling callback
This change clears calling identities before the
onSubscriptionsChangedListener.onSubscriptionsChanged() callback is
made.
Bug: 193731920
Test: atest TelephonyRegistryManagerTest
Change-Id: I21f14e40a05f76346eb90b8f36608b4d6bdf1a29
| -rw-r--r-- | core/java/android/telephony/TelephonyRegistryManager.java | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/core/java/android/telephony/TelephonyRegistryManager.java b/core/java/android/telephony/TelephonyRegistryManager.java index 161d10a9090c..ba288188e06d 100644 --- a/core/java/android/telephony/TelephonyRegistryManager.java +++ b/core/java/android/telephony/TelephonyRegistryManager.java @@ -111,7 +111,12 @@ public class TelephonyRegistryManager { IOnSubscriptionsChangedListener callback = new IOnSubscriptionsChangedListener.Stub() { @Override public void onSubscriptionsChanged () { - executor.execute(() -> listener.onSubscriptionsChanged()); + final long identity = Binder.clearCallingIdentity(); + try { + executor.execute(() -> listener.onSubscriptionsChanged()); + } finally { + Binder.restoreCallingIdentity(identity); + } } }; mSubscriptionChangedListenerMap.put(listener, callback); |