diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2014-11-04 12:35:47 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2014-11-04 12:35:47 +0000 |
commit | c1f30877e0357a2513fdf4f99a90cfc35be6572e (patch) | |
tree | 5dc988323bd6c23270d7027b61172014a37c4201 /llvm/lib/Support/Windows/Program.inc | |
parent | 5a899e332b5d8eb10fd11b88901f09a55b7e6ac4 (diff) | |
download | llvm-c1f30877e0357a2513fdf4f99a90cfc35be6572e.zip llvm-c1f30877e0357a2513fdf4f99a90cfc35be6572e.tar.gz llvm-c1f30877e0357a2513fdf4f99a90cfc35be6572e.tar.bz2 |
Remove FindProgramByName. NFC.
llvm-svn: 221258
Diffstat (limited to 'llvm/lib/Support/Windows/Program.inc')
-rw-r--r-- | llvm/lib/Support/Windows/Program.inc | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/llvm/lib/Support/Windows/Program.inc b/llvm/lib/Support/Windows/Program.inc index db20e21..1f4270c 100644 --- a/llvm/lib/Support/Windows/Program.inc +++ b/llvm/lib/Support/Windows/Program.inc @@ -32,45 +32,6 @@ using namespace sys; ProcessInfo::ProcessInfo() : ProcessHandle(0), Pid(0), ReturnCode(0) {} -// This function just uses the PATH environment variable to find the program. -std::string sys::FindProgramByName(const std::string &progName) { - // Check some degenerate cases - if (progName.length() == 0) // no program - return ""; - std::string temp = progName; - // Return paths with slashes verbatim. - if (progName.find('\\') != std::string::npos || - progName.find('/') != std::string::npos) - return temp; - - // At this point, the file name is valid and does not contain slashes. - // Let Windows search for it. - SmallVector<wchar_t, MAX_PATH> progNameUnicode; - if (windows::UTF8ToUTF16(progName, progNameUnicode)) - return ""; - - SmallVector<wchar_t, MAX_PATH> buffer; - DWORD len = MAX_PATH; - do { - buffer.reserve(len); - len = ::SearchPathW(NULL, progNameUnicode.data(), L".exe", - buffer.capacity(), buffer.data(), NULL); - - // See if it wasn't found. - if (len == 0) - return ""; - - // Buffer was too small; grow and retry. - } while (len > buffer.capacity()); - - buffer.set_size(len); - SmallVector<char, MAX_PATH> result; - if (windows::UTF16ToUTF8(buffer.begin(), buffer.size(), result)) - return ""; - - return std::string(result.data(), result.size()); -} - ErrorOr<std::string> sys::findProgramByName(StringRef Name, ArrayRef<StringRef> Paths) { assert(!Name.empty() && "Must have a name!"); |