diff --git a/utils/messageqcpp/inetstreamsocket.cpp b/utils/messageqcpp/inetstreamsocket.cpp index b298843a2..57c863aea 100644 --- a/utils/messageqcpp/inetstreamsocket.cpp +++ b/utils/messageqcpp/inetstreamsocket.cpp @@ -436,10 +436,16 @@ const SBS InetStreamSocket::read(const struct ::timespec* timeout, bool* isTimeO uint8_t* msglenp = reinterpret_cast(&msglen); size_t mlread = 0; - if (readToMagic(msecs, isTimeOut, stats) == false) //indicates a timeout or EOF + bool myIsTimeOut = false; + if (readToMagic(msecs, &myIsTimeOut, stats) == false) //indicates a timeout or EOF { - logIoError("InetStreamSocket::read: timeout during readToMagic", 0); - return SBS(new ByteStream(0)); + if (!myIsTimeOut) + logIoError("InetStreamSocket::read: EOF during readToMagic", 0); + if (isTimeOut) + { + *isTimeOut = myIsTimeOut; + } + return SBS(new ByteStream(0)); } //FIXME: This seems like a lot of work to read 4 bytes...