diff options
author | Hui Wang <huiwang@google.com> | 2021-03-02 19:20:38 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2021-03-02 19:20:38 +0000 |
commit | a340c35a864d06d3ae760c1a896324ae7b8ed7a1 (patch) | |
tree | 41f57f286046f87cb60408d4f802a573fa333f1d /telephony | |
parent | 3727cc1834c014d3d9631eb17cbe85865ab13204 (diff) | |
parent | e4fb450fe01c97c6ee90ba52db24997cf8a79483 (diff) |
Merge "Notify rcs config as needed when RCS service ready"
Diffstat (limited to 'telephony')
-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 -> { |