Index: base/path_service.cc |
diff --git a/base/path_service.cc b/base/path_service.cc |
index 407715f4842548e6034f74246b6030e0e7bc1630..56f254c6d7c73558728905d00331045ba43e1e4d 100644 |
--- a/base/path_service.cc |
+++ b/base/path_service.cc |
@@ -19,13 +19,13 @@ |
#include "base/string_util.h" |
namespace base { |
- bool PathProvider(int key, std::wstring* result); |
+ bool PathProvider(int key, FilePath* result); |
#if defined(OS_WIN) |
- bool PathProviderWin(int key, std::wstring* result); |
+ bool PathProviderWin(int key, FilePath* result); |
#elif defined(OS_MACOSX) |
- bool PathProviderMac(int key, std::wstring* result); |
+ bool PathProviderMac(int key, FilePath* result); |
#elif defined(OS_LINUX) |
- bool PathProviderLinux(int key, std::wstring* result); |
+ bool PathProviderLinux(int key, FilePath* result); |
#endif |
} |
@@ -166,23 +166,22 @@ bool PathService::Get(int key, FilePath* result) { |
if (GetFromCache(key, result)) |
return true; |
- std::wstring path_string; |
+ FilePath path; |
// search providers for the requested path |
// NOTE: it should be safe to iterate here without the lock |
// since RegisterProvider always prepends. |
Provider* provider = path_data->providers; |
while (provider) { |
- if (provider->func(key, &path_string)) |
+ if (provider->func(key, &path)) |
break; |
- DCHECK(path_string.empty()) << "provider should not have modified path"; |
+ DCHECK(path.value().empty()) << "provider should not have modified path"; |
provider = provider->next; |
} |
- if (path_string.empty()) |
+ if (path.value().empty()) |
return false; |
- FilePath path = FilePath::FromWStringHack(path_string); |
AddToCache(key, path); |
*result = path; |