Fixed StringView::GetText() related issued pointed out in review.
This commit is contained in:
@@ -23,9 +23,12 @@ void WindowsClipboard::Clear()
|
||||
|
||||
void WindowsClipboard::SetText(const StringView& text)
|
||||
{
|
||||
const int32 size = (text.Length() + 1) * sizeof(Char);
|
||||
const HGLOBAL hMem = GlobalAlloc(GMEM_MOVEABLE, size);
|
||||
Platform::MemoryCopy(GlobalLock(hMem), String(text).GetText(), size);
|
||||
const int32 sizeWithoutNull = text.Length() * sizeof(Char);
|
||||
const HGLOBAL hMem = GlobalAlloc(GMEM_MOVEABLE, sizeWithoutNull + sizeof(Char));
|
||||
|
||||
Char* pMem = static_cast<Char*>(GlobalLock(hMem));
|
||||
Platform::MemoryCopy(pMem, text.GetNonTerminatedText(), sizeWithoutNull);
|
||||
Platform::MemorySet(pMem + text.Length(), sizeof(Char), 0);
|
||||
GlobalUnlock(hMem);
|
||||
|
||||
OpenClipboard(nullptr);
|
||||
|
||||
@@ -1111,7 +1111,7 @@ int32 WindowsPlatform::RunProcess(const StringView& cmdLine, const StringView& w
|
||||
|
||||
// Create the process
|
||||
PROCESS_INFORMATION procInfo;
|
||||
if (!CreateProcessW(nullptr, const_cast<LPWSTR>(String(cmdLine).GetText()), nullptr, nullptr, TRUE, dwCreationFlags, (LPVOID)environmentStr, String(workingDir).GetText(), &startupInfoEx.StartupInfo, &procInfo))
|
||||
if (!CreateProcessW(nullptr, const_cast<LPWSTR>(String(cmdLine).GetText()), nullptr, nullptr, TRUE, dwCreationFlags, (LPVOID)environmentStr, workingDir.HasChars() ? workingDir.Get() : nullptr, &startupInfoEx.StartupInfo, &procInfo))
|
||||
{
|
||||
LOG(Warning, "Cannot start process '{0}'. Error code: 0x{1:x}", cmdLine, static_cast<int64>(GetLastError()));
|
||||
goto ERROR_EXIT;
|
||||
|
||||
Reference in New Issue
Block a user