Merge "Fix crash due to modifying immutable PersistableBundle" am: 706b376fb7 am: 9aaf4d1e58

Original change: https://android-review.googlesource.com/c/platform/packages/providers/TelephonyProvider/+/1698933

Change-Id: I195c2e7745e2c3abf98cca2eeb59ee595f6ec8ee
diff --git a/src/com/android/providers/telephony/TelephonyProvider.java b/src/com/android/providers/telephony/TelephonyProvider.java
index 5382363..1d72a28 100644
--- a/src/com/android/providers/telephony/TelephonyProvider.java
+++ b/src/com/android/providers/telephony/TelephonyProvider.java
@@ -3218,10 +3218,11 @@
                 selection,
                 selectionArgs,
                 ORDER_BY_SUB_ID)) {
-            findAndRestoreAllMatches(bundle, cursor, restoreCase);
+            findAndRestoreAllMatches(bundle.deepCopy(), cursor, restoreCase);
         }
     }
 
+    // backedUpDataBundle must to be mutable
     private void findAndRestoreAllMatches(PersistableBundle backedUpDataBundle, Cursor cursor,
             int restoreCase) {
         int[] previouslyRestoredSubIdsArray =