From a64c3cf0ab6da24a9a010a45ebe4794422d40c71 Mon Sep 17 00:00:00 2001 From: "cevans@chromium.org" Date: Sat, 6 Aug 2011 05:25:55 +0000 Subject: Be a little more careful whether something is an URL or a file path. BUG=72492 Review URL: http://codereview.chromium.org/7572046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95731 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/browser/net/url_fixer_upper.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'chrome/browser/net/url_fixer_upper.cc') diff --git a/chrome/browser/net/url_fixer_upper.cc b/chrome/browser/net/url_fixer_upper.cc index 37125d0..4d85b42 100644 --- a/chrome/browser/net/url_fixer_upper.cc +++ b/chrome/browser/net/url_fixer_upper.cc @@ -538,8 +538,12 @@ GURL URLFixerUpper::FixupRelativeFile(const FilePath& base_dir, PrepareStringForFileOps(text, &trimmed); bool is_file = true; + // Avoid recognizing definite non-file URLs as file paths. + GURL gurl(trimmed); + if (gurl.is_valid() && gurl.IsStandard()) + is_file = false; FilePath full_path; - if (!ValidPathForFile(trimmed, &full_path)) { + if (is_file && !ValidPathForFile(trimmed, &full_path)) { // Not a path as entered, try unescaping it in case the user has // escaped things. We need to go through 8-bit since the escaped values // only represent 8-bit values. -- cgit v1.1