diff options
author | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-10-15 05:09:50 +0000 |
---|---|---|
committer | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-10-15 05:09:50 +0000 |
commit | 66ff7356a381d6c8c6c3272b095938408c4f3188 (patch) | |
tree | 9c3ae2fb0d55d1d9650a8071d1c80c557e7f0d93 /chrome_frame | |
parent | 2c8088a4452c2c204237ba9f2f3706e7eeaaf35b (diff) | |
download | chromium_src-66ff7356a381d6c8c6c3272b095938408c4f3188.zip chromium_src-66ff7356a381d6c8c6c3272b095938408c4f3188.tar.gz chromium_src-66ff7356a381d6c8c6c3272b095938408c4f3188.tar.bz2 |
Re-try r29078: Remove some deprecated file_util wstring functions.
With the previous patch, the try bots failed with mysterious messages, so I ignored them, patched it into my windows box and tested it there manually, and found no problems. As it turns out, the try failures were real :(. But nsylvain and I found the problem: the behavior of file_util::GetDirectoryFromPath() differs from DirName() when the path is empty (officially, GetDirectoryFromPath is not supposed to support non-absolute paths, but that is not enforced).
Here is a green win try result: http://build.chromium.org/buildbot/try-server/builders/win/builds/3705
mac: http://build.chromium.org/buildbot/try-server/builders/mac/builds/3491
linux: http://build.chromium.org/buildbot/try-server/builders/linux/builds/3466
I also applied this patch locally in Windows to test that it doesn't break the chrome frame compile or tests, since that's not covered by the trybots yet.
Review URL: http://codereview.chromium.org/271099
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29094 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome_frame')
-rw-r--r-- | chrome_frame/chrome_launcher.cc | 9 | ||||
-rw-r--r-- | chrome_frame/chrome_launcher.h | 6 | ||||
-rw-r--r-- | chrome_frame/chrome_tab.cc | 8 | ||||
-rw-r--r-- | chrome_frame/test/perf/chrome_frame_perftest.cc | 6 | ||||
-rw-r--r-- | chrome_frame/test_utils.cc | 13 | ||||
-rw-r--r-- | chrome_frame/test_utils.h | 4 |
6 files changed, 26 insertions, 20 deletions
diff --git a/chrome_frame/chrome_launcher.cc b/chrome_frame/chrome_launcher.cc index f742a28..b9af23d 100644 --- a/chrome_frame/chrome_launcher.cc +++ b/chrome_frame/chrome_launcher.cc @@ -90,10 +90,10 @@ bool SanitizeAndLaunchChrome(const wchar_t* command_line) { return base::LaunchApp(sanitized.command_line_string(), false, false, NULL); } -std::wstring GetChromeExecutablePath() { - std::wstring cur_path; +FilePath GetChromeExecutablePath() { + FilePath cur_path; PathService::Get(base::DIR_MODULE, &cur_path); - file_util::AppendToPath(&cur_path, chrome::kBrowserProcessExecutableName); + cur_path = cur_path.Append(chrome::kBrowserProcessExecutableName); // The installation model for Chrome places the DLLs in a versioned // sub-folder one down from the Chrome executable. If we fail to find @@ -101,8 +101,7 @@ std::wstring GetChromeExecutablePath() { // instead. if (!file_util::PathExists(cur_path)) { PathService::Get(base::DIR_MODULE, &cur_path); - file_util::UpOneDirectory(&cur_path); - file_util::AppendToPath(&cur_path, chrome::kBrowserProcessExecutableName); + cur_path = cur_path.DirName().Append(chrome::kBrowserProcessExecutableName); } return cur_path; diff --git a/chrome_frame/chrome_launcher.h b/chrome_frame/chrome_launcher.h index 7c2aea9..86dc03f 100644 --- a/chrome_frame/chrome_launcher.h +++ b/chrome_frame/chrome_launcher.h @@ -7,6 +7,8 @@ #include <string> +#include "base/file_path.h" + class CommandLine; namespace chrome_launcher { @@ -30,12 +32,12 @@ CommandLine* CreateLaunchCommandLine(); void SanitizeCommandLine(const CommandLine& original, CommandLine* sanitized); // Given a command-line without an initial program part, launch our associated -// chrome.exe with a sanitized version of that command line. Returns true iff +// chrome.exe with a sanitized version of that command line. Returns true iff // successful. bool SanitizeAndLaunchChrome(const wchar_t* command_line); // Returns the full path to the Chrome executable. -std::wstring GetChromeExecutablePath(); +FilePath GetChromeExecutablePath(); // The type of the CfLaunchChrome entrypoint exported from this DLL. typedef int (__stdcall *CfLaunchChromeProc)(); diff --git a/chrome_frame/chrome_tab.cc b/chrome_frame/chrome_tab.cc index 923d957d8..601ef06 100644 --- a/chrome_frame/chrome_tab.cc +++ b/chrome_frame/chrome_tab.cc @@ -61,10 +61,10 @@ class ChromeTabModule } if (SUCCEEDED(hr)) { - std::wstring app_path( - chrome_launcher::GetChromeExecutablePath()); - app_path = file_util::GetDirectoryFromPath(app_path); - hr = registrar->AddReplacement(L"CHROME_APPPATH", app_path.c_str()); + FilePath app_path = + chrome_launcher::GetChromeExecutablePath().DirName(); + hr = registrar->AddReplacement(L"CHROME_APPPATH", + app_path.value().c_str()); DCHECK(SUCCEEDED(hr)); } diff --git a/chrome_frame/test/perf/chrome_frame_perftest.cc b/chrome_frame/test/perf/chrome_frame_perftest.cc index 79bbd7b..c896fa4 100644 --- a/chrome_frame/test/perf/chrome_frame_perftest.cc +++ b/chrome_frame/test/perf/chrome_frame_perftest.cc @@ -621,7 +621,8 @@ class ChromeFrameMemoryTest : public ChromeFramePerfTestBase { file_util::AppendToPath(&chrome_exe_test_path, chrome::kBrowserProcessExecutableName); - if (!file_util::PathExists(chrome_exe_test_path)) { + if (!file_util::PathExists( + FilePath::FromWStringHack(chrome_exe_test_path))) { file_util::UpOneDirectory(&chrome_exe_path); chrome_exe_test_path = chrome_exe_path; @@ -629,7 +630,8 @@ class ChromeFrameMemoryTest : public ChromeFramePerfTestBase { chrome::kBrowserProcessExecutableName); } - EXPECT_TRUE(file_util::PathExists(chrome_exe_test_path)); + EXPECT_TRUE( + file_util::PathExists(FilePath::FromWStringHack(chrome_exe_test_path))); return chrome_exe_path; } diff --git a/chrome_frame/test_utils.cc b/chrome_frame/test_utils.cc index 2d47c71..abfdbee 100644 --- a/chrome_frame/test_utils.cc +++ b/chrome_frame/test_utils.cc @@ -15,17 +15,18 @@ // Statics -std::wstring ScopedChromeFrameRegistrar::GetChromeFrameBuildPath() { - std::wstring build_path; +FilePath ScopedChromeFrameRegistrar::GetChromeFrameBuildPath() { + FilePath build_path; PathService::Get(chrome::DIR_APP, &build_path); - file_util::AppendToPath(&build_path, L"servers\\npchrome_tab.dll"); + build_path = build_path.Append(L"servers"). + Append(L"npchrome_tab.dll"); file_util::PathExists(build_path); return build_path; } void ScopedChromeFrameRegistrar::RegisterDefaults() { - std::wstring dll_path_ = GetChromeFrameBuildPath(); - RegisterAtPath(dll_path_); + FilePath dll_path = GetChromeFrameBuildPath(); + RegisterAtPath(dll_path.value()); } void ScopedChromeFrameRegistrar::RegisterAtPath( @@ -56,7 +57,7 @@ void ScopedChromeFrameRegistrar::RegisterAtPath( // Non-statics ScopedChromeFrameRegistrar::ScopedChromeFrameRegistrar() { - original_dll_path_ = GetChromeFrameBuildPath(); + original_dll_path_ = GetChromeFrameBuildPath().ToWStringHack(); RegisterChromeFrameAtPath(original_dll_path_); } diff --git a/chrome_frame/test_utils.h b/chrome_frame/test_utils.h index fb470a0..85f5cc5 100644 --- a/chrome_frame/test_utils.h +++ b/chrome_frame/test_utils.h @@ -7,6 +7,8 @@ #include <string> +#include "base/file_path.h" + // Helper class used to register different chrome frame DLLs while running // tests. At construction, this registers the DLL found in the build path. // At destruction, again registers the DLL found in the build path if another @@ -24,7 +26,7 @@ class ScopedChromeFrameRegistrar { std::wstring GetChromeFrameDllPath() const; - static std::wstring GetChromeFrameBuildPath(); + static FilePath GetChromeFrameBuildPath(); static void RegisterAtPath(const std::wstring& path); static void RegisterDefaults(); |