From 8c601830b5a8657bae3fdebe0d2ea42cef7b146a Mon Sep 17 00:00:00 2001 From: lobmo <1162431386@qq.com> Date: Thu, 21 May 2026 16:21:53 +0800 Subject: [PATCH] git commit -m "PDP: release locks and remove change on domain-id mismatch When a received Participant DATA has a different domain_id, return path left reader and PDP mutexes held and did not remove the change from history. Ensure locks are released and change removed before returning." --- src/cpp/rtps/builtin/discovery/participant/PDPListener.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/cpp/rtps/builtin/discovery/participant/PDPListener.cpp b/src/cpp/rtps/builtin/discovery/participant/PDPListener.cpp index 70be0165018..7132234d596 100644 --- a/src/cpp/rtps/builtin/discovery/participant/PDPListener.cpp +++ b/src/cpp/rtps/builtin/discovery/participant/PDPListener.cpp @@ -115,11 +115,13 @@ void PDPListener::on_new_cache_change_added( if (part->is_participant_ignored(guid.guidPrefix)) { + parent_pdp_->builtin_endpoints_->remove_from_pdp_reader_history(change); return; } if (!check_discovery_conditions(temp_participant_data_)) { + parent_pdp_->builtin_endpoints_->remove_from_pdp_reader_history(change); return; }