diff options
| -rw-r--r-- | ttwhy/scoped_attributes.cppm | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/ttwhy/scoped_attributes.cppm b/ttwhy/scoped_attributes.cppm index c68ab01..080bca7 100644 --- a/ttwhy/scoped_attributes.cppm +++ b/ttwhy/scoped_attributes.cppm @@ -56,9 +56,15 @@ namespace ttwhy export struct scoped_attributes { explicit scoped_attributes(int file_descriptor) - : m_file_descriptor{::dup(file_descriptor)} - , m_attributes{read_attributes(file_descriptor)} - {} + : m_file_descriptor{-1} + , m_attributes{} + { + if (isatty(file_descriptor)) + { + m_file_descriptor = dup(file_descriptor); + m_attributes = read_attributes(m_file_descriptor); + } + } scoped_attributes(scoped_attributes const &) = delete; |
