]> granicus.if.org Git - clang/commitdiff
driver: Map closed standard file descriptors to /dev/null
authorDavid Majnemer <david.majnemer@gmail.com>
Mon, 6 Oct 2014 23:52:23 +0000 (23:52 +0000)
committerDavid Majnemer <david.majnemer@gmail.com>
Mon, 6 Oct 2014 23:52:23 +0000 (23:52 +0000)
Utilize Process::FixupStandardFileDescriptors, introduced in r219170, to
guard against files from being treated as one of the standard file
descriptors.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219174 91177308-0d34-0410-b5e6-96231b3b80d8

tools/driver/driver.cpp

index 7c170718431eb914c41ebb132a8932dfb1b4995e..db356b76e3656a8a94968299fee497e713a01fc3 100644 (file)
@@ -378,6 +378,9 @@ int main(int argc_, const char **argv_) {
   llvm::sys::PrintStackTraceOnErrorSignal();
   llvm::PrettyStackTraceProgram X(argc_, argv_);
 
+  if (llvm::sys::Process::FixupStandardFileDescriptors())
+    return 1;
+
   SmallVector<const char *, 256> argv;
   llvm::SpecificBumpPtrAllocator<char> ArgAllocator;
   std::error_code EC = llvm::sys::Process::GetArgumentVector(