Merge "Mark DataUsageState as nullable to avoid potential NPE risk" am: 0960af0bf3 am: 325b033f85 am: 8c4db8e545 am: e6901aedba

Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/2217422

Change-Id: Ifea8d6dfd652cf73ac9361c1224635bf6169a389
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/src/com/android/settings/datausage/UnrestrictedDataAccessPreference.java b/src/com/android/settings/datausage/UnrestrictedDataAccessPreference.java
index 08e523c..1fea84c 100644
--- a/src/com/android/settings/datausage/UnrestrictedDataAccessPreference.java
+++ b/src/com/android/settings/datausage/UnrestrictedDataAccessPreference.java
@@ -20,6 +20,7 @@
 import android.os.UserHandle;
 import android.view.View;
 
+import androidx.annotation.Nullable;
 import androidx.preference.PreferenceViewHolder;
 
 import com.android.settings.R;
@@ -152,6 +153,7 @@
         }
     }
 
+    @Nullable
     public AppStateDataUsageBridge.DataUsageState getDataUsageState() {
         return mDataUsageState;
     }
diff --git a/src/com/android/settings/datausage/UnrestrictedDataAccessPreferenceController.java b/src/com/android/settings/datausage/UnrestrictedDataAccessPreferenceController.java
index 06cf8ed..438ed0d 100644
--- a/src/com/android/settings/datausage/UnrestrictedDataAccessPreferenceController.java
+++ b/src/com/android/settings/datausage/UnrestrictedDataAccessPreferenceController.java
@@ -194,7 +194,9 @@
             logSpecialPermissionChange(allowlisted, accessPreference.getEntry().info.packageName);
             mDataSaverBackend.setIsAllowlisted(accessPreference.getEntry().info.uid,
                     accessPreference.getEntry().info.packageName, allowlisted);
-            accessPreference.getDataUsageState().isDataSaverAllowlisted = allowlisted;
+            if (accessPreference.getDataUsageState() != null) {
+                accessPreference.getDataUsageState().isDataSaverAllowlisted = allowlisted;
+            }
             return true;
         }
         return false;