diff --git a/src/ca/tcpiiu.cpp b/src/ca/tcpiiu.cpp index ae07ba812..75083c644 100644 --- a/src/ca/tcpiiu.cpp +++ b/src/ca/tcpiiu.cpp @@ -413,8 +413,13 @@ void tcpRecvThread::run () } catch ( ... ) { errlogPrintf ( "cac tcp receive thread terminating due to a c++ exception\n" ); - this->iiu.cacRef.initiateAbortShutdown ( this->iiu ); } + + // Although this is redundant in certain situations it is + // required in other because the receive thread must hang + // around until it receives its blocking socket call interrupt + // signal. + this->iiu.cacRef.initiateAbortShutdown ( this->iiu ); } //