From 46137f96bb946652d7d710ebb948f2adb623d5df Mon Sep 17 00:00:00 2001 From: Michael Davidsaver Date: Tue, 20 Jun 2017 20:30:37 +0200 Subject: [PATCH] deprecate dispose() bad practice --- src/remoteClient/pv/clientContextImpl.h | 2 +- src/server/pv/serverContext.h | 2 +- src/server/serverContext.cpp | 9 ++++++++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/remoteClient/pv/clientContextImpl.h b/src/remoteClient/pv/clientContextImpl.h index d5f1dfd..e11408f 100644 --- a/src/remoteClient/pv/clientContextImpl.h +++ b/src/remoteClient/pv/clientContextImpl.h @@ -93,7 +93,7 @@ public: * Dispose (destroy) server context. * This calls destroy() and silently handles all exceptions. */ - virtual void dispose() = 0; + virtual void dispose() EPICS_DEPRECATED = 0; virtual ChannelSearchManager::shared_pointer getChannelSearchManager() = 0; diff --git a/src/server/pv/serverContext.h b/src/server/pv/serverContext.h index c89776c..7de759f 100644 --- a/src/server/pv/serverContext.h +++ b/src/server/pv/serverContext.h @@ -69,7 +69,7 @@ public: */ virtual void printInfo(std::ostream& str) = 0; - void dispose(); + void dispose() EPICS_DEPRECATED; virtual epicsTimeStamp& getStartTime() = 0; diff --git a/src/server/serverContext.cpp b/src/server/serverContext.cpp index 9b128ce..fb2ddaf 100644 --- a/src/server/serverContext.cpp +++ b/src/server/serverContext.cpp @@ -55,7 +55,14 @@ ServerContextImpl::ServerContextImpl(): ServerContextImpl::~ServerContextImpl() { - dispose(); + try + { + shutdown(); + } + catch(std::exception& e) + { + std::cerr<<"Error in: ServerContextImpl::dispose: "<