From aacbed9ec082a072101f7a26fd33194176f12442 Mon Sep 17 00:00:00 2001 From: Gordon Sim Date: Tue, 2 Oct 2007 12:47:30 +0000 Subject: Correction to interpretation of flags (B/E refer to the first/last segment in the frameset and should be set on all frames in such segments). git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@581214 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/broker/Message.cpp | 2 +- cpp/src/qpid/framing/FrameSet.cpp | 2 +- cpp/src/qpid/framing/SendContent.cpp | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) (limited to 'cpp/src/qpid') diff --git a/cpp/src/qpid/broker/Message.cpp b/cpp/src/qpid/broker/Message.cpp index 030e1ef581..3dbd192d3c 100644 --- a/cpp/src/qpid/broker/Message.cpp +++ b/cpp/src/qpid/broker/Message.cpp @@ -154,12 +154,12 @@ void Message::sendContent(framing::FrameHandler& out, uint16_t maxFrameSize) con store->loadContent(*this, data, offset, remaining > maxContentSize ? maxContentSize : remaining); frame.setBof(false); + frame.setEof(true); if (offset > 0) { frame.setBos(false); } if (remaining) { frame.setEos(false); - frame.setEof(false); } out.handle(frame); } diff --git a/cpp/src/qpid/framing/FrameSet.cpp b/cpp/src/qpid/framing/FrameSet.cpp index 129219e0a1..6db02419c2 100644 --- a/cpp/src/qpid/framing/FrameSet.cpp +++ b/cpp/src/qpid/framing/FrameSet.cpp @@ -38,7 +38,7 @@ void FrameSet::append(AMQFrame& part) bool FrameSet::isComplete() const { - return !parts.empty() && parts.back().getEof(); + return !parts.empty() && parts.back().getEof() && parts.back().getEos(); } bool FrameSet::isContentBearing() const diff --git a/cpp/src/qpid/framing/SendContent.cpp b/cpp/src/qpid/framing/SendContent.cpp index 62a876f7c5..57ac58038b 100644 --- a/cpp/src/qpid/framing/SendContent.cpp +++ b/cpp/src/qpid/framing/SendContent.cpp @@ -60,7 +60,7 @@ void qpid::framing::SendContent::setFlags(AMQFrame& f, bool first, bool last) co { f.setBof(false); f.setBos(first); - f.setEof(last); + f.setEof(true);//content is always the last segment f.setEos(last); } -- cgit v1.2.1