diff --git a/src/remote/blockingUDPTransport.cpp b/src/remote/blockingUDPTransport.cpp index 78ccca7..77e5813 100644 --- a/src/remote/blockingUDPTransport.cpp +++ b/src/remote/blockingUDPTransport.cpp @@ -154,7 +154,7 @@ inline int sendto(int s, const char *buf, size_t len, int flags, const struct so // wait for send thread to exit cleanly - if (waitForThreadToComplete) + if (_thread.get() && waitForThreadToComplete) { if (!_shutdownEvent.wait(5.0)) { diff --git a/src/remoteClient/clientContextImpl.cpp b/src/remoteClient/clientContextImpl.cpp index 1f36273..3945250 100644 --- a/src/remoteClient/clientContextImpl.cpp +++ b/src/remoteClient/clientContextImpl.cpp @@ -4666,7 +4666,8 @@ namespace epics { localMulticastTransport->start(); m_udpTransports.push_back(transport); - m_udpTransports.push_back(transport2); + if (transport2) + m_udpTransports.push_back(transport2); m_udpTransports.push_back(localMulticastTransport); } diff --git a/src/server/serverContext.cpp b/src/server/serverContext.cpp index 4957a74..5ed0ea9 100644 --- a/src/server/serverContext.cpp +++ b/src/server/serverContext.cpp @@ -476,7 +476,8 @@ void ServerContextImpl::initializeBroadcastTransport() localMulticastTransport->start(); _udpTransports.push_back(transport); - _udpTransports.push_back(transport2); + if(transport2) + _udpTransports.push_back(transport2); _udpTransports.push_back(localMulticastTransport); }