diff --git a/fairmq/shmem/Message.h b/fairmq/shmem/Message.h index 95b1dd50..4c78f2ac 100644 --- a/fairmq/shmem/Message.h +++ b/fairmq/shmem/Message.h @@ -109,7 +109,7 @@ class Message final : public fair::mq::Message , fRegionPtr(nullptr) , fLocalPtr(static_cast(data)) { - if (reinterpret_cast(data) >= reinterpret_cast(region->GetData()) || + if (reinterpret_cast(data) >= reinterpret_cast(region->GetData()) && reinterpret_cast(data) <= reinterpret_cast(region->GetData()) + region->GetSize()) { fMeta.fHandle = (boost::interprocess::managed_shared_memory::handle_t)(reinterpret_cast(data) - reinterpret_cast(region->GetData())); } else {