diff options
Diffstat (limited to 'cpp/src/qpid/broker/MessageDelivery.cpp')
-rw-r--r-- | cpp/src/qpid/broker/MessageDelivery.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/cpp/src/qpid/broker/MessageDelivery.cpp b/cpp/src/qpid/broker/MessageDelivery.cpp index 22053260c5..9ef7090cd9 100644 --- a/cpp/src/qpid/broker/MessageDelivery.cpp +++ b/cpp/src/qpid/broker/MessageDelivery.cpp @@ -90,14 +90,17 @@ struct MessageDeliveryToken : BaseToken AMQFrame sendMethod(intrusive_ptr<Message> msg, DeliveryId /*id*/) { //may need to set the redelivered flag: - if (msg->getRedelivered()){ - msg->getProperties<DeliveryProperties>()->setRedelivered(true); - } if (isPreview) { + if (msg->getRedelivered()){ + msg->getProperties<DeliveryProperties>()->setRedelivered(true); + } return AMQFrame(in_place<MessageTransferBody>( ProtocolVersion(), 0, destination, confirmMode, acquireMode)); } else { + if (msg->getRedelivered()){ + msg->getProperties<DeliveryProperties010>()->setRedelivered(true); + } return AMQFrame(in_place<Message010TransferBody>( ProtocolVersion(), destination, confirmMode, acquireMode)); } |