| Index: src/DefaultFileSystem.cpp |
| =================================================================== |
| --- a/src/DefaultFileSystem.cpp |
| +++ b/src/DefaultFileSystem.cpp |
| @@ -85,45 +85,19 @@ |
| std::string DefaultFileSystem::Resolve(const std::string& path) const |
| { |
| -#ifdef WIN32 |
| - // Resolve to LocalLow folder |
| + return basePath + "\\" + path; |
|
Felix Dahlke
2013/04/30 09:14:52
\\ won't work on UNIX, but I think / should work e
Wladimir Palant
2013/04/30 09:29:50
1) This path separator is Windows-specific. Please
|
| +} |
| - OSVERSIONINFOEX osvi; |
| - ZeroMemory(&osvi, sizeof(OSVERSIONINFOEX)); |
| - osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX); |
| - BOOL res = GetVersionEx((OSVERSIONINFO*) &osvi); |
| +void DefaultFileSystem::SetBasePath(const std::string& path) |
| +{ |
| - if(res == 0 ) return std::string(path); |
| - |
| - std::wstring resolvedW = L""; |
| - wchar_t resolvedPath[MAX_PATH]; |
| - HRESULT hr; |
| - if (osvi.dwMajorVersion >= 6) |
| + if (path.rfind('\\') == (path.length() - 1)) |
|
Felix Dahlke
2013/04/30 09:14:52
How about if (*path.rbegin() == '\\')?
This also
Wladimir Palant
2013/04/30 09:29:50
Please search for PATH_SEPARATOR here as well, not
|
| { |
| - hr = SHGetFolderPath(NULL, CSIDL_LOCAL_APPDATA, 0, 0, resolvedPath); |
| + basePath = path.substr(0, path.length() - 1); |
|
Felix Dahlke
2013/04/30 09:14:52
Never used this, but basePath.pop_back(); seems to
|
| } |
| else |
| { |
| - hr = SHGetFolderPath(NULL, CSIDL_APPDATA, 0, 0, resolvedPath); |
| + basePath = path; |
| } |
| - if (FAILED(hr)) |
| - return std::string(path); |
| - resolvedW.assign(resolvedPath); |
| - |
| - // TODO: Better conversion here |
| - std::string resolved(resolvedW.begin(), resolvedW.end()); |
| - if (osvi.dwMajorVersion >= 6) |
| - { |
| - resolved.append("Low\\AdblockPlus\\"); |
| - } |
| - else |
| - { |
| - resolved.append("\\AdblockPlus\\"); |
| - } |
| - resolved.append(path); |
| - return resolved; |
| -#else |
| - return std::string(path); |
| -#endif |
| } |