diff options
author | Hui Wang <huiwang@google.com> | 2021-02-19 20:09:31 -0800 |
---|---|---|
committer | Hui Wang <huiwang@google.com> | 2021-03-01 22:51:42 +0000 |
commit | e4fb450fe01c97c6ee90ba52db24997cf8a79483 (patch) | |
tree | 00bdd3f98cd1b51ae7aa706fdacbe231a91d1c6e /telephony/java | |
parent | f9e2a9c55ac956872fa3bc0a455b82ff87d3791e (diff) |
Notify rcs config as needed when RCS service ready
Bug: 180503768
Test: atest TeleServiceTests:com.android.phone.RcsProvisioningMonitorTest
Merged-In: I859a9b6bd439cca01aeed8448f684e17cb80d397
Change-Id: I859a9b6bd439cca01aeed8448f684e17cb80d397
Diffstat (limited to 'telephony/java')
-rw-r--r-- | telephony/java/android/telephony/ims/stub/ImsConfigImplBase.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/telephony/java/android/telephony/ims/stub/ImsConfigImplBase.java b/telephony/java/android/telephony/ims/stub/ImsConfigImplBase.java index cc050becfb25..34984e05e181 100644 --- a/telephony/java/android/telephony/ims/stub/ImsConfigImplBase.java +++ b/telephony/java/android/telephony/ims/stub/ImsConfigImplBase.java @@ -37,6 +37,7 @@ import com.android.internal.telephony.util.RemoteCallbackListExt; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.ref.WeakReference; +import java.util.Arrays; import java.util.HashMap; /** @@ -368,7 +369,13 @@ public class ImsConfigImplBase { } private void onNotifyRcsAutoConfigurationReceived(byte[] config, boolean isCompressed) { - mRcsConfigData = isCompressed ? RcsConfig.decompressGzip(config) : config; + // cache uncompressed config + config = isCompressed ? RcsConfig.decompressGzip(config) : config; + if (Arrays.equals(mRcsConfigData, config)) { + return; + } + mRcsConfigData = config; + // can be null in testing if (mRcsCallbacks != null) { mRcsCallbacks.broadcastAction(c -> { |