diff options
author | Dan Gohman <gohman@apple.com> | 2009-09-11 20:46:33 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2009-09-11 20:46:33 +0000 |
commit | e59292360311fd824f6be5f71cd0e537fee86392 (patch) | |
tree | 2a2c32e66f67335aed79d8b9311e2797c16daf10 /llvm/lib/System/Unix/Process.inc | |
parent | dd3f5f1fcabd0be8167dcd5e96fbe1e7a09ff300 (diff) | |
download | bcm5719-llvm-e59292360311fd824f6be5f71cd0e537fee86392.tar.gz bcm5719-llvm-e59292360311fd824f6be5f71cd0e537fee86392.zip |
Fix llvm-extract's "writing bitcode to a terminal" warning, which wasn't
working. To support this, add an is_displayed() function to raw_ostream,
and generalize Process::StandardOutIsDisplayed and friends in order to
support it.
Also, call RemoveFileOnSignal before creating a file instead of after, so
that the file isn't left behind if the program is interrupted between when
the file is created and RemoveFileOnSignal is called.
While here, add a -S to llvm-extract and port it to IRReader so that it
supports assembly input.
llvm-svn: 81568
Diffstat (limited to 'llvm/lib/System/Unix/Process.inc')
-rw-r--r-- | llvm/lib/System/Unix/Process.inc | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/llvm/lib/System/Unix/Process.inc b/llvm/lib/System/Unix/Process.inc index 774783f8ad0..d7155852bf2 100644 --- a/llvm/lib/System/Unix/Process.inc +++ b/llvm/lib/System/Unix/Process.inc @@ -179,26 +179,20 @@ void Process::PreventCoreFiles() { } bool Process::StandardInIsUserInput() { -#if HAVE_ISATTY - return isatty(0); -#else - // If we don't have isatty, just return false. - return false; -#endif + return FileDescriptorIsDisplayed(STDIN_FILENO); } bool Process::StandardOutIsDisplayed() { -#if HAVE_ISATTY - return isatty(1); -#else - // If we don't have isatty, just return false. - return false; -#endif + return FileDescriptorIsDisplayed(STDOUT_FILENO); } bool Process::StandardErrIsDisplayed() { + return FileDescriptorIsDisplayed(STDERR_FILENO); +} + +bool Process::FileDescriptorIsDisplayed(int fd) { #if HAVE_ISATTY - return isatty(2); + return isatty(fd); #else // If we don't have isatty, just return false. return false; |