diff options
Diffstat (limited to 'lldb/source/Host')
| -rw-r--r-- | lldb/source/Host/windows/ProcessLauncherWindows.cpp | 17 | 
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(); | 
