Commit 4803624d authored by Joseph Noir's avatar Joseph Noir

Fix message processing with terminating broker

parent b5c049b6
......@@ -861,7 +861,9 @@ protected:
else
consumed = reader_->consume(&backend(), itr->second, rd_buf_);
prepare_next_read();
if (!consumed) {
if (!consumed
|| (reader_->parent() != nullptr
&& reader_->parent()->finalize())) {
passivate();
return;
}
......
......@@ -276,6 +276,7 @@ void abstract_broker::move_datagram_servant(datagram_servant_ptr ptr) {
CAF_ASSERT(ptr != nullptr);
CAF_ASSERT(ptr->parent() != nullptr && ptr->parent() != this);
ptr->set_parent(this);
launch_servant(ptr);
CAF_ASSERT(ptr->parent() == this);
auto hdls = ptr->hdls();
for (auto& hdl : hdls)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment