Index: chrome/browser/ui/webui/signin/inline_login_handler_impl.cc |
diff --git a/chrome/browser/ui/webui/signin/inline_login_handler_impl.cc b/chrome/browser/ui/webui/signin/inline_login_handler_impl.cc |
index 0d2e2ad6d3303ec3bb5fd64ea5953608eee55156..9d180ec46ec70d874fede423d9b11171d99b87ed 100644 |
--- a/chrome/browser/ui/webui/signin/inline_login_handler_impl.cc |
+++ b/chrome/browser/ui/webui/signin/inline_login_handler_impl.cc |
@@ -149,12 +149,20 @@ void InlineSigninHelper::OnSigninOAuthInformationAvailable( |
if (start_signin) { |
// Call OneClickSigninSyncStarter to exchange oauth code for tokens. |
// OneClickSigninSyncStarter will delete itself once the job is done. |
+ std::string continue_url_str; |
+ net::GetValueForKeyInQuery(current_url_, "continueUrl", |
+ &continue_url_str); |
+ GURL continue_url = GURL(continue_url_str); |
+ if (!continue_url.is_valid()) |
+ continue_url = GURL(); |
+ |
new OneClickSigninSyncStarter( |
profile_, browser, |
email, password_, refresh_token, |
start_mode, |
contents, |
confirmation_required, |
+ continue_url, |
base::Bind(&InlineLoginHandlerImpl::SyncStarterCallback, handler_)); |
} |
} |