mirror of
https://github.com/RPCS3/llvm.git
synced 2025-01-20 08:54:08 +00:00
[Bugpoint] Close error log in ProcessFailure. Bugpoint had been failing to close
this, and in some circumstances (e.g. reducing particularly large test-cases) this was causing bugpoint to be killed for hitting open file-handle limits. No test case: I was only able to trigger this with test cases taking upwards of 10 mins to run. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@219244 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
1ba00eab26
commit
7106ab7ffd
@ -141,21 +141,13 @@ static std::string ProcessFailure(StringRef ProgPath, const char** Args,
|
||||
|
||||
// Rerun the compiler, capturing any error messages to print them.
|
||||
SmallString<128> ErrorFilename;
|
||||
int ErrorFD;
|
||||
std::error_code EC = sys::fs::createTemporaryFile(
|
||||
"bugpoint.program_error_messages", "", ErrorFD, ErrorFilename);
|
||||
"bugpoint.program_error_messages", "", ErrorFilename);
|
||||
if (EC) {
|
||||
errs() << "Error making unique filename: " << EC.message() << "\n";
|
||||
exit(1);
|
||||
}
|
||||
|
||||
#ifdef _WIN32
|
||||
// Close ErrorFD immediately, or it couldn't be reopened on Win32.
|
||||
// FIXME: We may have an option in openFileForWrite(), not to use ResultFD
|
||||
// but to close it.
|
||||
delete new raw_fd_ostream(ErrorFD, true);
|
||||
#endif
|
||||
|
||||
RunProgramWithTimeout(ProgPath, Args, "", ErrorFilename.str(),
|
||||
ErrorFilename.str(), Timeout, MemoryLimit);
|
||||
// FIXME: check return code ?
|
||||
|
Loading…
x
Reference in New Issue
Block a user