| Index: android_webview/native/cookie_manager.cc
|
| diff --git a/android_webview/native/cookie_manager.cc b/android_webview/native/cookie_manager.cc
|
| index 55c6412c64990f188678cf63092b557530b9bdac..f89bfda75c3423b1ae9f3560d247ae965106bfec 100644
|
| --- a/android_webview/native/cookie_manager.cc
|
| +++ b/android_webview/native/cookie_manager.cc
|
| @@ -387,12 +387,20 @@ void CookieManager::SetCookieHelper(
|
| options.set_include_httponly();
|
|
|
| // Log message for catching strict secure cookies related bugs.
|
| - if (!host.has_scheme() || host.SchemeIs(url::kHttpScheme)) {
|
| + // TODO(sgurun) temporary. Add UMA stats to monitor, and remove afterwards.
|
| + if (host.is_valid() &&
|
| + (!host.has_scheme() || host.SchemeIs(url::kHttpScheme))) {
|
| net::ParsedCookie parsed_cookie(value);
|
| if (parsed_cookie.IsValid() && parsed_cookie.IsSecure()) {
|
| LOG(WARNING) << "Strict Secure Cookie policy does not allow setting a "
|
| "secure cookie for "
|
| << host.spec();
|
| + GURL::Replacements replace_host;
|
| + replace_host.SetSchemeStr("https");
|
| + GURL new_host = host.ReplaceComponents(replace_host);
|
| + GetCookieStore()->SetCookieWithOptionsAsync(new_host, value, options,
|
| + callback);
|
| + return;
|
| }
|
| }
|
|
|
|
|