Index: chrome/android/java/src/org/chromium/chrome/browser/init/AsyncInitTaskRunner.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/AsyncInitTaskRunner.java b/chrome/android/java/src/org/chromium/chrome/browser/init/AsyncInitTaskRunner.java |
index 2fc7507548be36c441604bec311928253fc4c7b7..73a6dd32d0eb6094a6e42f5f61778c0061c990ae 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/init/AsyncInitTaskRunner.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/init/AsyncInitTaskRunner.java |
@@ -6,12 +6,14 @@ package org.chromium.chrome.browser.init; |
import android.os.AsyncTask; |
+import org.chromium.base.Callback; |
import org.chromium.base.ContextUtils; |
import org.chromium.base.ThreadUtils; |
import org.chromium.base.VisibleForTesting; |
import org.chromium.base.library_loader.LibraryLoader; |
import org.chromium.base.library_loader.LibraryProcessType; |
import org.chromium.base.library_loader.ProcessInitException; |
+import org.chromium.chrome.browser.ChromeActivitySessionTracker; |
import org.chromium.chrome.browser.ChromeVersionInfo; |
import org.chromium.components.variations.firstrun.VariationsSeedFetcher; |
import org.chromium.content.browser.ChildProcessLauncher; |
@@ -67,9 +69,15 @@ public abstract class AsyncInitTaskRunner { |
} |
private class FetchSeedTask extends AsyncTask<Void, Void, Void> { |
+ private final String mRestrictMode; |
+ |
+ public FetchSeedTask(String restrictMode) { |
+ mRestrictMode = restrictMode; |
+ } |
+ |
@Override |
protected Void doInBackground(Void... params) { |
- VariationsSeedFetcher.get().fetchSeed(); |
+ VariationsSeedFetcher.get().fetchSeed(mRestrictMode); |
return null; |
} |
@@ -92,8 +100,15 @@ public abstract class AsyncInitTaskRunner { |
assert mLoadTask == null; |
if (fetchVariationSeed && shouldFetchVariationsSeedDuringFirstRun()) { |
mFetchingVariations = true; |
- mFetchSeedTask = new FetchSeedTask(); |
- mFetchSeedTask.executeOnExecutor(getExecutor()); |
+ ChromeActivitySessionTracker sessionTracker = |
+ ChromeActivitySessionTracker.getInstance(); |
+ sessionTracker.getVariationsRestrictModeValue(new Callback<String>() { |
+ @Override |
+ public void onResult(String restrictMode) { |
+ mFetchSeedTask = new FetchSeedTask(restrictMode); |
+ mFetchSeedTask.executeOnExecutor(getExecutor()); |
+ } |
+ }); |
} |
if (allocateChildConnection) { |