diff options
| author | 2023-06-01 21:55:45 +0000 | |
|---|---|---|
| committer | 2023-06-01 21:55:45 +0000 | |
| commit | 29cf40a9644febc6a3bb30c50d5d584702dba84f (patch) | |
| tree | c1706f118da76868d160a64d856f547a731b03ab | |
| parent | 463e0cb63198d2af9e8a84242b3e4c465bd5d6ca (diff) | |
| parent | f27fc6ca1a6350a988a767cbc4262fb5c5bdd7f2 (diff) | |
Merge "store preferential configs if no error from CS" into udc-qpr-dev
| -rw-r--r-- | services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java index a5b15489f292..b43209f26128 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java @@ -14837,17 +14837,23 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { "Caller is not managed profile owner or device owner;" + " only managed profile owner or device owner may control the preferential" + " network service"); - synchronized (getLockObject()) { - final ActiveAdmin requiredAdmin = getDeviceOrProfileOwnerAdminLocked( - caller.getUserId()); - if (!requiredAdmin.mPreferentialNetworkServiceConfigs.equals( - preferentialNetworkServiceConfigs)) { - requiredAdmin.mPreferentialNetworkServiceConfigs = - new ArrayList<>(preferentialNetworkServiceConfigs); - saveSettingsLocked(caller.getUserId()); + + try { + updateNetworkPreferenceForUser(caller.getUserId(), preferentialNetworkServiceConfigs); + synchronized (getLockObject()) { + final ActiveAdmin requiredAdmin = getDeviceOrProfileOwnerAdminLocked( + caller.getUserId()); + if (!requiredAdmin.mPreferentialNetworkServiceConfigs.equals( + preferentialNetworkServiceConfigs)) { + requiredAdmin.mPreferentialNetworkServiceConfigs = + new ArrayList<>(preferentialNetworkServiceConfigs); + saveSettingsLocked(caller.getUserId()); + } } + } catch (Exception e) { + Slogf.e(LOG_TAG, "Failed to set preferential network service configs"); + throw e; } - updateNetworkPreferenceForUser(caller.getUserId(), preferentialNetworkServiceConfigs); DevicePolicyEventLogger .createEvent(DevicePolicyEnums.SET_PREFERENTIAL_NETWORK_SERVICE_ENABLED) .setBoolean(preferentialNetworkServiceConfigs |