diff options
Diffstat (limited to 'cpp/src/qpid/broker/Queue.cpp')
| -rw-r--r-- | cpp/src/qpid/broker/Queue.cpp | 4 |
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; } |
