[FS] Report errors from llvm::sys::fs::rename on Windows

Previously we would always report success, which is pretty bogus.

I'm too lazy to write a test where rename will portably fail on all
platforms. I'm just trying to fix breakage introduced by r234597, which
happened to tickle this.

llvm-svn: 234611
This commit is contained in:
Reid Kleckner 2015-04-10 17:20:45 +00:00
parent cc81556831
commit d03f9f4016
1 changed files with 1 additions and 0 deletions

View File

@ -261,6 +261,7 @@ std::error_code rename(const Twine &from, const Twine &to) {
MOVEFILE_COPY_ALLOWED | MOVEFILE_REPLACE_EXISTING))
return std::error_code();
DWORD LastError = ::GetLastError();
ec = windows_error(LastError);
if (LastError != ERROR_ACCESS_DENIED)
break;
// Retry MoveFile() at ACCESS_DENIED.