summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHui Wang <huiwang@google.com>2021-03-02 21:23:28 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-03-02 21:23:28 +0000
commit18fb42d63971baab8a79e8b7c2cffca46a96a95b (patch)
tree16a8aebbea7b669e53ce09a6a1e169168dcb2742
parentaa4c7d0fe5d9effd926b098f75dc07c1db14099f (diff)
parenta340c35a864d06d3ae760c1a896324ae7b8ed7a1 (diff)
downloadbase-18fb42d63971baab8a79e8b7c2cffca46a96a95b.tar.gz
Merge "Notify rcs config as needed when RCS service ready" am: a340c35a86
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1612066 MUST ONLY BE SUBMITTED BY AUTOMERGER Change-Id: I86cc208bb12d6d40876d06553f8a70200e8d9fac
-rw-r--r--telephony/java/android/telephony/ims/stub/ImsConfigImplBase.java9
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 -> {