| Index: chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
|
| index 2d040ff73efbd5856547f370ba73dd3a8e339e88..c74fd561395aa445e4bd5bdcfa31a3df32079496 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
|
| @@ -540,7 +540,7 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
|
| if (wipeData) {
|
| wipeProfileData(wipeDataHooks);
|
| } else {
|
| - onSignOutDone();
|
| + wipeGoogleServiceWorkerCaches(wipeDataHooks);
|
| }
|
|
|
| AccountTrackerService.get().invalidateAccountSeedStatus(true);
|
| @@ -592,6 +592,12 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
|
| nativeWipeProfileData(mNativeSigninManagerAndroid, hooks);
|
| }
|
|
|
| + private void wipeGoogleServiceWorkerCaches(WipeDataHooks hooks) {
|
| + if (hooks != null) hooks.preWipeData();
|
| + // This will call back to onProfileDataWiped().
|
| + nativeWipeGoogleServiceWorkerCaches(mNativeSigninManagerAndroid, hooks);
|
| + }
|
| +
|
| /**
|
| * Convenience method to return a Promise to be fulfilled when the user's sync data has been
|
| * wiped if the parameter is true, or an already fulfilled Promise if the parameter is false.
|
| @@ -679,6 +685,8 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
|
| private native void nativeSignOut(long nativeSigninManagerAndroid);
|
| private native String nativeGetManagementDomain(long nativeSigninManagerAndroid);
|
| private native void nativeWipeProfileData(long nativeSigninManagerAndroid, WipeDataHooks hooks);
|
| + private native void nativeWipeGoogleServiceWorkerCaches(
|
| + long nativeSigninManagerAndroid, WipeDataHooks hooks);
|
| private native void nativeClearLastSignedInUser(long nativeSigninManagerAndroid);
|
| private native void nativeLogInSignedInUser(long nativeSigninManagerAndroid);
|
| private native boolean nativeIsSignedInOnNative(long nativeSigninManagerAndroid);
|
|
|