Fix monkey crash on selecting account sync prefernece.

When running monkey, the authority in the preference might not have been
properly set. Add a check for valid authority before trying to update
the sync automatically setting.

Change-Id: I59f910565fc9f128e86bd92337135fe46fed12e1
Fixes: 80551551
Test: make RunSettingsRoboTests
This commit is contained in:
Doris Ling
2018-06-05 17:31:22 -07:00
parent 44931d1e96
commit 366418dab7
3 changed files with 72 additions and 3 deletions

View File

@@ -247,10 +247,13 @@ public class AccountSyncSettings extends AccountPreferenceBase {
}
if (preference instanceof SyncStateSwitchPreference) {
SyncStateSwitchPreference syncPref = (SyncStateSwitchPreference) preference;
String authority = syncPref.getAuthority();
Account account = syncPref.getAccount();
final String authority = syncPref.getAuthority();
if (TextUtils.isEmpty(authority)) {
return false;
}
final Account account = syncPref.getAccount();
final int userId = mUserHandle.getIdentifier();
String packageName = syncPref.getPackageName();
final String packageName = syncPref.getPackageName();
boolean syncAutomatically = ContentResolver.getSyncAutomaticallyAsUser(account,
authority, userId);