diff options
Diffstat (limited to 'src/components/transport_manager/src/iap2_emulation/iap2_transport_adapter.cc')
-rw-r--r-- | src/components/transport_manager/src/iap2_emulation/iap2_transport_adapter.cc | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/components/transport_manager/src/iap2_emulation/iap2_transport_adapter.cc b/src/components/transport_manager/src/iap2_emulation/iap2_transport_adapter.cc index 01ecb6e43c..66b4ad2901 100644 --- a/src/components/transport_manager/src/iap2_emulation/iap2_transport_adapter.cc +++ b/src/components/transport_manager/src/iap2_emulation/iap2_transport_adapter.cc @@ -131,12 +131,15 @@ void IAP2USBEmulationTransportAdapter::IAPSignalHandlerDelegate::threadMain() { const auto size = 32; while (run_flag_) { - char buffer[size]; - // TODO: maybe need to check errno + char buffer[size]; auto bytes = read(in_, &buffer, size); - if (!bytes) { + if (0 == bytes) { continue; } + if (-1 == bytes) { + LOG4CXX_DEBUG(logger_, "Error during input pipe read"); + break; + } LOG4CXX_DEBUG(logger_, "Read in bytes: " << bytes); std::string str(buffer); if (std::string::npos != str.find(switch_signal)) { |