Index: google_apis/gaia/oauth2_mint_token_fetcher.cc |
diff --git a/google_apis/gaia/oauth2_mint_token_fetcher.cc b/google_apis/gaia/oauth2_mint_token_fetcher.cc |
index 425a12649915ed476dc495f4c3b68d3ab45a804d..051f9ab49bb9c01a77aa31bffbd598f64e4d7947 100644 |
--- a/google_apis/gaia/oauth2_mint_token_fetcher.cc |
+++ b/google_apis/gaia/oauth2_mint_token_fetcher.cc |
@@ -62,6 +62,11 @@ static URLFetcher* CreateFetcher(URLRequestContextGetter* getter, |
result->SetRequestContext(getter); |
result->SetLoadFlags(net::LOAD_DO_NOT_SEND_COOKIES | |
net::LOAD_DO_NOT_SAVE_COOKIES); |
+ // Fetchers are sometimes cancelled because a network change was detected, |
+ // especially at startup and after sign-in on ChromeOS. Retrying once should |
+ // be enough in those cases; let the fetcher retry up to 3 times just in case. |
+ // http://crbug.com/163710 |
+ result->SetAutomaticallyRetryOnNetworkChanges(3); |
if (!empty_body) |
result->SetUploadData("application/x-www-form-urlencoded", body); |