summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/SemanticHandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qpid/broker/SemanticHandler.cpp')
-rw-r--r--cpp/src/qpid/broker/SemanticHandler.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/cpp/src/qpid/broker/SemanticHandler.cpp b/cpp/src/qpid/broker/SemanticHandler.cpp
index 768ea9ea08..32c032e701 100644
--- a/cpp/src/qpid/broker/SemanticHandler.cpp
+++ b/cpp/src/qpid/broker/SemanticHandler.cpp
@@ -40,6 +40,7 @@ using namespace qpid::sys;
SemanticHandler::SemanticHandler(SessionState& s) :
state(*this,s), session(s),
+ msgBuilder(&s.getBroker().getStore(), s.getBroker().getStagingThreshold()),
ackOp(boost::bind(&SemanticState::ackRange, &state, _1, _2))
{}
@@ -150,7 +151,7 @@ void SemanticHandler::handleContent(AMQFrame& frame)
msg = msgBuilder.getMessage();
}
msgBuilder.handle(frame);
- if (msg->getFrames().isComplete()) {//end of frameset will be indicated by frame flags
+ if (frame.getEof() && frame.getEos()) {//end of frameset will be indicated by frame flags
msg->setPublisher(&session.getConnection());
state.handle(msg);
msgBuilder.end();