diff --git a/src/remote/codec.cpp b/src/remote/codec.cpp index 0b586c5..44cab1f 100644 --- a/src/remote/codec.cpp +++ b/src/remote/codec.cpp @@ -47,7 +47,7 @@ namespace { struct BreakTransport : TransportSender { virtual ~BreakTransport() {} - virtual void send(epics::pvData::ByteBuffer* buffer, TransportSendControl* control) + virtual void send(epics::pvData::ByteBuffer* buffer, TransportSendControl* control) OVERRIDE FINAL { throw epics::pvAccess::detail::connection_closed_exception("Break"); } diff --git a/src/server/serverContext.cpp b/src/server/serverContext.cpp index e5d461e..7899399 100644 --- a/src/server/serverContext.cpp +++ b/src/server/serverContext.cpp @@ -329,6 +329,9 @@ void ServerContextImpl::shutdown() // this will also destroy all channels destroyAllTransports(); + // drop timer queue + _timer.reset(); + // response handlers hold strong references to us, // so must break the cycles _responseHandler.reset();