diff options
Diffstat (limited to 'chrome/common/file_descriptor_set_posix.cc')
-rw-r--r-- | chrome/common/file_descriptor_set_posix.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/chrome/common/file_descriptor_set_posix.cc b/chrome/common/file_descriptor_set_posix.cc index b57c007..1be7aa8 100644 --- a/chrome/common/file_descriptor_set_posix.cc +++ b/chrome/common/file_descriptor_set_posix.cc @@ -4,6 +4,7 @@ #include "chrome/common/file_descriptor_set_posix.h" +#include "base/eintr_wrapper.h" #include "base/logging.h" FileDescriptorSet::FileDescriptorSet() @@ -26,7 +27,7 @@ FileDescriptorSet::~FileDescriptorSet() { for (unsigned i = consumed_descriptor_highwater_; i < descriptors_.size(); ++i) { if (descriptors_[i].auto_close) - close(descriptors_[i].fd); + HANDLE_EINTR(close(descriptors_[i].fd)); } } @@ -97,7 +98,7 @@ void FileDescriptorSet::CommitAll() { for (std::vector<base::FileDescriptor>::iterator i = descriptors_.begin(); i != descriptors_.end(); ++i) { if (i->auto_close) - close(i->fd); + HANDLE_EINTR(close(i->fd)); } descriptors_.clear(); consumed_descriptor_highwater_ = 0; |