summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/Queue.cpp
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2008-11-26 21:13:05 +0000
committerAlan Conway <aconway@apache.org>2008-11-26 21:13:05 +0000
commita2917ca1aabd64e4f6e1667b8e52145d9752d0e0 (patch)
tree2292126635ef5673798a57fcef8f5d7bab657a1c /cpp/src/qpid/broker/Queue.cpp
parentbb68e723af7401a05f2f103d441acfd655254b31 (diff)
downloadqpid-python-a2917ca1aabd64e4f6e1667b8e52145d9752d0e0.tar.gz
Was causing cluster failures.
QPID-1488 Mick Goulish: QueuePolicy serialization fix for cluster braindump. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@720979 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/broker/Queue.cpp')
-rw-r--r--cpp/src/qpid/broker/Queue.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/cpp/src/qpid/broker/Queue.cpp b/cpp/src/qpid/broker/Queue.cpp
index 9f722cf8be..b1f9163bb5 100644
--- a/cpp/src/qpid/broker/Queue.cpp
+++ b/cpp/src/qpid/broker/Queue.cpp
@@ -741,11 +741,12 @@ void Queue::encode(Buffer& buffer) const
{
buffer.putShortString(name);
buffer.put(settings);
+ buffer.put(*policy);
}
uint32_t Queue::encodedSize() const
{
- return name.size() + 1/*short string size octet*/ + settings.encodedSize();
+ return name.size() + 1/*short string size octet*/ + settings.encodedSize() + (*policy).encodedSize();
}
Queue::shared_ptr Queue::decode(QueueRegistry& queues, Buffer& buffer)
@@ -755,6 +756,7 @@ Queue::shared_ptr Queue::decode(QueueRegistry& queues, Buffer& buffer)
std::pair<Queue::shared_ptr, bool> result = queues.declare(name, true);
buffer.get(result.first->settings);
result.first->configure(result.first->settings);
+ buffer.get ( *(result.first->policy) );
return result.first;
}