blob: a613b9573159615b335113de0b0520ce85414286 [file] [log] [blame]
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "content/child/storage_util.h"
#include "third_party/WebKit/public/platform/URLConversion.h"
#include "third_party/WebKit/public/platform/WebSecurityOrigin.h"
#include "url/gurl.h"
#include "url/origin.h"
namespace content {
GURL WebSecurityOriginToGURL(const blink::WebSecurityOrigin& security_origin) {
// "file:///" URLs navigated to by the user may have "isLocal" set,
// which stringify as "null" by default. Previous code that sent
// origins from Blink to Chromium via DatabaseIdentifier would ignore
// this, so we mimic that behavior here.
// TODO(jsbell): Eliminate this.
if (security_origin.Protocol().Utf8() == "file" &&
security_origin.Host().Utf8() == "" && security_origin.Port() == 0) {
return GURL("file:///");
return url::Origin(security_origin).GetURL();
} // namespace content