From 844cbe038fca95d8a5406f895704076c402e4e29 Mon Sep 17 00:00:00 2001 From: "mmentovai@google.com" Date: Tue, 2 Sep 2008 18:13:34 +0000 Subject: Normalize newlines to LF in net git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1647 0039d316-1c4b-4281-b951-d872f2087c98 --- net/base/net_util_posix.cc | 92 +++++++++++++++++++++++----------------------- 1 file changed, 46 insertions(+), 46 deletions(-) (limited to 'net/base/net_util_posix.cc') diff --git a/net/base/net_util_posix.cc b/net/base/net_util_posix.cc index b24fbad..2554e4b 100644 --- a/net/base/net_util_posix.cc +++ b/net/base/net_util_posix.cc @@ -1,46 +1,46 @@ -// Copyright (c) 2006-2008 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 "net/base/net_util.h" - -#include "base/string_util.h" -#include "googleurl/src/gurl.h" -#include "net/base/escape.h" - -namespace net { - -bool FileURLToFilePath(const GURL& url, std::wstring* file_path) { - file_path->clear(); - - if (!url.is_valid()) - return false; - - // Firefox seems to ignore the "host" of a file url if there is one. That is, - // file://foo/bar.txt maps to /bar.txt. - std::string path = url.path(); - - if (path.empty()) - return false; - - // GURL stores strings as percent-encoded 8-bit, this will undo if possible. - path = UnescapeURLComponent(path, - UnescapeRule::SPACES | UnescapeRule::URL_SPECIAL_CHARS); - - // Collapse multiple path slashes into a single path slash. - std::string new_path; - do { - new_path = path; - ReplaceSubstringsAfterOffset(&new_path, 0, "//", "/"); - path.swap(new_path); - } while (new_path != path); - - // TODO(tc): This should actually be 8-bit to wide. We may lose data if the - // string isn't UTF-8. - file_path->assign(UTF8ToWide(path)); - - return !file_path->empty(); -} - -} // namespace net - +// Copyright (c) 2006-2008 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 "net/base/net_util.h" + +#include "base/string_util.h" +#include "googleurl/src/gurl.h" +#include "net/base/escape.h" + +namespace net { + +bool FileURLToFilePath(const GURL& url, std::wstring* file_path) { + file_path->clear(); + + if (!url.is_valid()) + return false; + + // Firefox seems to ignore the "host" of a file url if there is one. That is, + // file://foo/bar.txt maps to /bar.txt. + std::string path = url.path(); + + if (path.empty()) + return false; + + // GURL stores strings as percent-encoded 8-bit, this will undo if possible. + path = UnescapeURLComponent(path, + UnescapeRule::SPACES | UnescapeRule::URL_SPECIAL_CHARS); + + // Collapse multiple path slashes into a single path slash. + std::string new_path; + do { + new_path = path; + ReplaceSubstringsAfterOffset(&new_path, 0, "//", "/"); + path.swap(new_path); + } while (new_path != path); + + // TODO(tc): This should actually be 8-bit to wide. We may lose data if the + // string isn't UTF-8. + file_path->assign(UTF8ToWide(path)); + + return !file_path->empty(); +} + +} // namespace net + -- cgit v1.1