diff options
Diffstat (limited to 'cpp/src/qpid/client/amqp0_10/SenderImpl.h')
-rw-r--r-- | cpp/src/qpid/client/amqp0_10/SenderImpl.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/cpp/src/qpid/client/amqp0_10/SenderImpl.h b/cpp/src/qpid/client/amqp0_10/SenderImpl.h index b65f8cf8cc..9e4181f42f 100644 --- a/cpp/src/qpid/client/amqp0_10/SenderImpl.h +++ b/cpp/src/qpid/client/amqp0_10/SenderImpl.h @@ -28,6 +28,7 @@ #include "qpid/client/AsyncSession.h" #include "qpid/client/amqp0_10/SessionImpl.h" #include <memory> +#include <boost/intrusive_ptr.hpp> #include <boost/ptr_container/ptr_deque.hpp> namespace qpid { @@ -58,7 +59,7 @@ class SenderImpl : public qpid::messaging::SenderImpl qpid::messaging::Session getSession() const; private: - SessionImpl& parent; + boost::intrusive_ptr<SessionImpl> parent; const std::string name; const qpid::messaging::Address address; State state; @@ -143,13 +144,13 @@ class SenderImpl : public qpid::messaging::SenderImpl template <class F> void execute() { F f(*this); - parent.execute(f); + parent->execute(f); } template <class F, class P> bool execute1(P p) { F f(*this, p); - return parent.execute(f); + return parent->execute(f); } }; }}} // namespace qpid::client::amqp0_10 |