Commit 4ab2827f authored by arthursonzogni's avatar arthursonzogni Committed by Commit Bot

Sheriff: Fix StrictModePolicyViolation in AndroidSyncSettings

From the patch:
https://chromium-review.googlesource.com/c/chromium/src/+/2426465

Revert the changes to the file:
chrome/android/java/src/org/chromium/..
../chrome/browser/sync/AndroidSyncSettings.java

This caused several tests to fail:
```
ClearBrowsingDataFragmentTest#testDialogAboutOtherFormsOfBrowsingHistory
IdentityDiscControllerTest#testIdentityDiscWithSignInState
IdentityDiscControllerTest#testIdentityDiscWithSwitchToIncognito
RecentTabsPageTest#testPersonalizedSigninPromoInRecentTabsPage
RecentTabsPageTest#testPersonalizedSigninPromoInRecentTabsPage
RecentTabsPageTest#testPersonalizedSyncPromoInRecentTabsPage
RecentTabsPageTest#testPersonalizedSyncPromoInRecentTabsPage
SigninSignoutIntegrationTest#testSignIn
SigninSignoutIntegrationTest#testSignOut
SigninSignoutIntegrationTest#testSignOutNonManagedAccountWithDataW[..]
SigninSignoutIntegrationTest#testSignOutNonManagedAccountWithoutWi[..]
SigninSignoutIntegrationTest#testSignOutNonManagedAccountWithoutWi[..]
SyncErrorCardPreferenceTest#testSyncErrorCardForAuthError__NightMo[..]
...
```

With the error:
org.chromium.components.strictmode.StrictModePolicyViolation: DISK_READ
from
AndroidSyncSettings.setChromeSyncEnabled

TBR=jkrcal@chromium.org

Bug: 1133401
Change-Id: I15ddf7716356655f8480572f807d2e020c555964
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2438500
Commit-Queue: Arthur Sonzogni <arthursonzogni@chromium.org>
Reviewed-by: default avatarArthur Sonzogni <arthursonzogni@chromium.org>
Auto-Submit: Arthur Sonzogni <arthursonzogni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#812073}
parent e468cadd
......@@ -227,7 +227,9 @@ public class AndroidSyncSettings {
if (value == mChromeSyncEnabled || mAccount == null) return;
mChromeSyncEnabled = value;
mSyncContentResolverDelegate.setSyncAutomatically(mAccount, mContractAuthority, value);
try (StrictModeContext ignored = StrictModeContext.allowDiskWrites()) {
mSyncContentResolverDelegate.setSyncAutomatically(mAccount, mContractAuthority, value);
}
notifyObservers();
}
......@@ -281,17 +283,19 @@ public class AndroidSyncSettings {
boolean oldChromeSyncEnabled = mChromeSyncEnabled;
boolean oldMasterSyncEnabled = mMasterSyncEnabled;
if (mAccount != null) {
mIsSyncable =
mSyncContentResolverDelegate.getIsSyncable(mAccount, mContractAuthority)
> 0;
mChromeSyncEnabled = mSyncContentResolverDelegate.getSyncAutomatically(
mAccount, mContractAuthority);
} else {
mIsSyncable = false;
mChromeSyncEnabled = false;
try (StrictModeContext ignored = StrictModeContext.allowDiskWrites()) {
if (mAccount != null) {
mIsSyncable =
mSyncContentResolverDelegate.getIsSyncable(mAccount, mContractAuthority)
> 0;
mChromeSyncEnabled = mSyncContentResolverDelegate.getSyncAutomatically(
mAccount, mContractAuthority);
} else {
mIsSyncable = false;
mChromeSyncEnabled = false;
}
mMasterSyncEnabled = mSyncContentResolverDelegate.getMasterSyncAutomatically();
}
mMasterSyncEnabled = mSyncContentResolverDelegate.getMasterSyncAutomatically();
if (mAccount != null && ProfileSyncService.get() != null
&& ChromeFeatureList.isEnabled(
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment