From 05c347434b98c569d8db0b62d4c4006d7421c08c Mon Sep 17 00:00:00 2001 From: Michael Davidsaver Date: Thu, 28 Apr 2016 09:20:13 -0400 Subject: [PATCH] use auto_ptr instead of epics_auto_ptr where applicable --- src/ca/client/ca_client_context.cpp | 4 ++-- src/ca/client/oldAccess.h | 6 ++++-- src/ioc/db/dbCAC.h | 4 +++- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/ca/client/ca_client_context.cpp b/src/ca/client/ca_client_context.cpp index 20a6e84c8..a2e5d8ac3 100644 --- a/src/ca/client/ca_client_context.cpp +++ b/src/ca/client/ca_client_context.cpp @@ -159,13 +159,13 @@ ca_client_context::ca_client_context ( bool enablePreemptiveCallback ) : this->localPort = htons ( tmpAddr.ia.sin_port ); } - epics_auto_ptr < CallbackGuard > pCBGuard; + std::auto_ptr < CallbackGuard > pCBGuard; if ( ! enablePreemptiveCallback ) { pCBGuard.reset ( new CallbackGuard ( this->cbMutex ) ); } // multiple steps ensure exception safety - this->pCallbackGuard = pCBGuard; + std::swap(this->pCallbackGuard, pCBGuard); } ca_client_context::~ca_client_context () diff --git a/src/ca/client/oldAccess.h b/src/ca/client/oldAccess.h index 04f551839..875b086fe 100644 --- a/src/ca/client/oldAccess.h +++ b/src/ca/client/oldAccess.h @@ -26,6 +26,8 @@ #ifndef oldAccessh #define oldAccessh +#include + #ifdef epicsExportSharedSymbols # define oldAccessh_restore_epicsExportSharedSymbols # undef epicsExportSharedSymbols @@ -402,8 +404,8 @@ private: epicsEvent ioDone; epicsEvent callbackThreadActivityComplete; epicsThreadId createdByThread; - epics_auto_ptr < CallbackGuard > pCallbackGuard; - epics_auto_ptr < cacContext > pServiceContext; + std::auto_ptr < CallbackGuard > pCallbackGuard; + std::auto_ptr < cacContext > pServiceContext; caExceptionHandler * ca_exception_func; void * ca_exception_arg; caPrintfFunc * pVPrintfFunc; diff --git a/src/ioc/db/dbCAC.h b/src/ioc/db/dbCAC.h index 70d9e205b..7847f0a2b 100644 --- a/src/ioc/db/dbCAC.h +++ b/src/ioc/db/dbCAC.h @@ -36,6 +36,8 @@ #include "stdlib.h" +#include // std::auto_ptr + #include "tsDLList.h" #include "tsFreeList.h" #include "resourceLib.h" @@ -203,7 +205,7 @@ private: epicsMutex & mutex; epicsMutex & cbMutex; cacContextNotify & notify; - epics_auto_ptr < cacContext > pNetContext; + std::auto_ptr < cacContext > pNetContext; char * pStateNotifyCache; bool isolated;