summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/messaging/Receiver.cpp
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2013-08-30 12:31:45 +0000
committerGordon Sim <gsim@apache.org>2013-08-30 12:31:45 +0000
commit425ab451141331c183b03277cf35c00c3e9d6654 (patch)
treecead47eaf1a321d22d08d46eca21a5c65cd39e77 /cpp/src/qpid/messaging/Receiver.cpp
parentd88d41f66a1f87966fe988ae168f6ce15dbe0603 (diff)
downloadqpid-python-425ab451141331c183b03277cf35c00c3e9d6654.tar.gz
QPID-5040: fix for string and symbol types on AmqpValue section (also clear message on fetch())
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1518955 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/messaging/Receiver.cpp')
-rw-r--r--cpp/src/qpid/messaging/Receiver.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/cpp/src/qpid/messaging/Receiver.cpp b/cpp/src/qpid/messaging/Receiver.cpp
index c45ebd6760..f60e5f55b3 100644
--- a/cpp/src/qpid/messaging/Receiver.cpp
+++ b/cpp/src/qpid/messaging/Receiver.cpp
@@ -21,6 +21,7 @@
#include "qpid/messaging/Receiver.h"
#include "qpid/messaging/Address.h"
#include "qpid/messaging/Message.h"
+#include "qpid/messaging/MessageImpl.h"
#include "qpid/messaging/ReceiverImpl.h"
#include "qpid/messaging/Session.h"
#include "qpid/messaging/PrivateImplRef.h"
@@ -36,7 +37,11 @@ Receiver::~Receiver() { PI::dtor(*this); }
Receiver& Receiver::operator=(const Receiver& s) { return PI::assign(*this, s); }
bool Receiver::get(Message& message, Duration timeout) { return impl->get(message, timeout); }
Message Receiver::get(Duration timeout) { return impl->get(timeout); }
-bool Receiver::fetch(Message& message, Duration timeout) { return impl->fetch(message, timeout); }
+bool Receiver::fetch(Message& message, Duration timeout)
+{
+ MessageImplAccess::get(message).clear();
+ return impl->fetch(message, timeout);
+}
Message Receiver::fetch(Duration timeout) { return impl->fetch(timeout); }
void Receiver::setCapacity(uint32_t c) { impl->setCapacity(c); }
uint32_t Receiver::getCapacity() { return impl->getCapacity(); }