diff options
Diffstat (limited to 'tools/slang-test/os.cpp')
| -rw-r--r-- | tools/slang-test/os.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/tools/slang-test/os.cpp b/tools/slang-test/os.cpp index 8f5172ae6..4bc3d8e6d 100644 --- a/tools/slang-test/os.cpp +++ b/tools/slang-test/os.cpp @@ -205,6 +205,15 @@ void OSProcessSpawner::pushExecutableName( { executableName_ = executableName; commandLine_.Append(executableName); + isExecutablePath_ = false; +} + +void OSProcessSpawner::pushExecutablePath( + CoreLib::Basic::String executablePath) +{ + executableName_ = executablePath; + commandLine_.Append(executablePath); + isExecutablePath_ = true; } void OSProcessSpawner::pushArgument( @@ -305,7 +314,7 @@ OSError OSProcessSpawner::spawnAndWaitForCompletion() // `CreateProcess` requires write access to this, for some reason... BOOL success = CreateProcessW( - executableName_.ToWString(), + isExecutablePath_ ? executableName_.ToWString() : nullptr, (LPWSTR)commandLine_.ToString().ToWString(), nullptr, nullptr, |
