Fix unicode support for File::Rename() on windows.

Partial fix of issue 6721.
This commit is contained in:
Rachel Bryk 2013-10-09 15:33:21 -04:00
parent d5e40bfb01
commit 99c89ae109
1 changed files with 4 additions and 0 deletions

View File

@ -241,7 +241,11 @@ bool Rename(const std::string &srcFilename, const std::string &destFilename)
{
INFO_LOG(COMMON, "Rename: %s --> %s",
srcFilename.c_str(), destFilename.c_str());
#ifdef _WIN32
if (_trename(UTF8ToTStr(srcFilename).c_str(), UTF8ToTStr(destFilename).c_str()) == 0)
#else
if (rename(srcFilename.c_str(), destFilename.c_str()) == 0)
#endif
return true;
ERROR_LOG(COMMON, "Rename: failed %s --> %s: %s",
srcFilename.c_str(), destFilename.c_str(), GetLastErrorMsg());