summaryrefslogtreecommitdiff
path: root/qpid/cpp/src
diff options
context:
space:
mode:
authorAndrew Stitcher <astitcher@apache.org>2010-09-08 16:49:33 +0000
committerAndrew Stitcher <astitcher@apache.org>2010-09-08 16:49:33 +0000
commit5847e9b226c219357e619b803d5f872f81fd89a5 (patch)
treeeeb39fb668e67e42926d30608965cb2472b1695c /qpid/cpp/src
parent298dd293dabb4b426d1495b41d0bcbaebdc0a340 (diff)
downloadqpid-python-5847e9b226c219357e619b803d5f872f81fd89a5.tar.gz
Reordered members of RdmaIOHandler to ensure correct destruction order
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@995140 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src')
-rw-r--r--qpid/cpp/src/qpid/sys/RdmaIOPlugin.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/qpid/cpp/src/qpid/sys/RdmaIOPlugin.cpp b/qpid/cpp/src/qpid/sys/RdmaIOPlugin.cpp
index 09c9770a5b..40967ca7c4 100644
--- a/qpid/cpp/src/qpid/sys/RdmaIOPlugin.cpp
+++ b/qpid/cpp/src/qpid/sys/RdmaIOPlugin.cpp
@@ -44,9 +44,7 @@ namespace qpid {
namespace sys {
class RdmaIOHandler : public OutputControl {
- Rdma::Connection::intrusive_ptr connection;
std::string identifier;
- Rdma::AsynchIO* aio;
ConnectionCodec::Factory* factory;
ConnectionCodec* codec;
bool readError;
@@ -54,6 +52,9 @@ class RdmaIOHandler : public OutputControl {
sys::Mutex pollingLock;
bool polling;
+ Rdma::AsynchIO* aio;
+ Rdma::Connection::intrusive_ptr connection;
+
void write(const framing::ProtocolInitiation&);
public:
@@ -82,12 +83,12 @@ class RdmaIOHandler : public OutputControl {
};
RdmaIOHandler::RdmaIOHandler(Rdma::Connection::intrusive_ptr c, qpid::sys::ConnectionCodec::Factory* f) :
- connection(c),
identifier(c->getPeerName()),
factory(f),
codec(0),
readError(false),
- polling(false)
+ polling(false),
+ connection(c)
{
}