aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Host/windows/ProcessLauncherWindows.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Host/windows/ProcessLauncherWindows.cpp')
-rw-r--r--lldb/source/Host/windows/ProcessLauncherWindows.cpp17
1 files changed, 7 insertions, 10 deletions
diff --git a/lldb/source/Host/windows/ProcessLauncherWindows.cpp b/lldb/source/Host/windows/ProcessLauncherWindows.cpp
index e1b4b7e..f5adada 100644
--- a/lldb/source/Host/windows/ProcessLauncherWindows.cpp
+++ b/lldb/source/Host/windows/ProcessLauncherWindows.cpp
@@ -16,7 +16,6 @@
#include "llvm/Support/Program.h"
#include <string>
-#include <unordered_set>
#include <vector>
using namespace lldb;
@@ -92,13 +91,13 @@ ProcessLauncherWindows::LaunchProcess(const ProcessLaunchInfo &launch_info,
startupinfo.hStdOutput =
stdout_handle ? stdout_handle : ::GetStdHandle(STD_OUTPUT_HANDLE);
- std::unordered_set<HANDLE> inherited_handles;
+ std::vector<HANDLE> inherited_handles;
if (startupinfo.hStdError)
- inherited_handles.insert(startupinfo.hStdError);
+ inherited_handles.push_back(startupinfo.hStdError);
if (startupinfo.hStdInput)
- inherited_handles.insert(startupinfo.hStdInput);
+ inherited_handles.push_back(startupinfo.hStdInput);
if (startupinfo.hStdOutput)
- inherited_handles.insert(startupinfo.hStdOutput);
+ inherited_handles.push_back(startupinfo.hStdOutput);
SIZE_T attributelist_size = 0;
InitializeProcThreadAttributeList(/*lpAttributeList=*/nullptr,
@@ -121,15 +120,13 @@ ProcessLauncherWindows::LaunchProcess(const ProcessLaunchInfo &launch_info,
const FileAction *act = launch_info.GetFileActionAtIndex(i);
if (act->GetAction() == FileAction::eFileActionDuplicate &&
act->GetFD() == act->GetActionArgument())
- inherited_handles.insert(reinterpret_cast<HANDLE>(act->GetFD()));
+ inherited_handles.push_back(reinterpret_cast<HANDLE>(act->GetFD()));
}
if (!inherited_handles.empty()) {
- std::vector<HANDLE> handles(inherited_handles.begin(),
- inherited_handles.end());
if (!UpdateProcThreadAttribute(
startupinfoex.lpAttributeList, /*dwFlags=*/0,
- PROC_THREAD_ATTRIBUTE_HANDLE_LIST, handles.data(),
- handles.size() * sizeof(HANDLE),
+ PROC_THREAD_ATTRIBUTE_HANDLE_LIST, inherited_handles.data(),
+ inherited_handles.size() * sizeof(HANDLE),
/*lpPreviousValue=*/nullptr, /*lpReturnSize=*/nullptr)) {
error = Status(::GetLastError(), eErrorTypeWin32);
return HostProcess();