Fix logging process output on Windows

This commit is contained in:
Wojtek Figat
2020-12-31 00:50:39 +01:00
parent 3973452ec3
commit 99f1ac1cc5

View File

@@ -1013,8 +1013,8 @@ int32 WindowsPlatform::RunProcess(const StringView& cmdLine, const StringView& w
outData.RemoveAllKeepOrder('\r');
Array<Char> buffer;
buffer.Resize(outData.Count() + 1);
uint32 length = 0;
StringUtils::ConvertUTF82UTF16(outData.Get(), buffer.Get(), outData.Count(), &length);
const uint32 length = outData.Count();
StringUtils::ConvertANSI2UTF16(outData.Get(), buffer.Get(), outData.Count());
buffer[length] = '\0';
Log::Logger::Write(LogType::Info, StringView(buffer.Get(), length));
}
@@ -1024,8 +1024,8 @@ int32 WindowsPlatform::RunProcess(const StringView& cmdLine, const StringView& w
errData.RemoveAllKeepOrder('\r');
Array<Char> buffer;
buffer.Resize(errData.Count() + 1);
uint32 length = 0;
StringUtils::ConvertUTF82UTF16(errData.Get(), buffer.Get(), errData.Count(), &length);
const uint32 length = errData.Count();
StringUtils::ConvertANSI2UTF16(errData.Get(), buffer.Get(), errData.Count());
buffer[length] = '\0';
Log::Logger::Write(LogType::Error, StringView(buffer.Get(), length));
}