From 42fcd0f48d679ce26cae715b9764b1667f5d7465 Mon Sep 17 00:00:00 2001 From: Jay Sridharan Date: Tue, 20 Jun 2023 23:40:02 -0700 Subject: [PATCH] Fix partition copy in QoS (#1947) Signed-off-by: Jay Sridharan Co-authored-by: Jay Sridharan (cherry picked from commit 7bcbfa316d1b1b26b583f918472b2b21a89bb96e) --- src/cpp/fastdds/publisher/qos/WriterQos.cpp | 2 +- src/cpp/rtps/builtin/discovery/participant/PDP.cpp | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/cpp/fastdds/publisher/qos/WriterQos.cpp b/src/cpp/fastdds/publisher/qos/WriterQos.cpp index ada5fdf5969..7ebbaea962e 100644 --- a/src/cpp/fastdds/publisher/qos/WriterQos.cpp +++ b/src/cpp/fastdds/publisher/qos/WriterQos.cpp @@ -95,7 +95,7 @@ void WriterQos::setQos( m_presentation = qos.m_presentation; m_presentation.hasChanged = true; } - if (first_time || qos.m_partition.names().size() > 0) + if (first_time || qos.m_partition.names() != m_partition.names()) { m_partition = qos.m_partition; m_partition.hasChanged = true; diff --git a/src/cpp/rtps/builtin/discovery/participant/PDP.cpp b/src/cpp/rtps/builtin/discovery/participant/PDP.cpp index 34343e12964..f1789a11e5d 100644 --- a/src/cpp/rtps/builtin/discovery/participant/PDP.cpp +++ b/src/cpp/rtps/builtin/discovery/participant/PDP.cpp @@ -1046,6 +1046,7 @@ bool PDP::remove_remote_participant( // Return reader proxy objects to pool for (auto pit : *pdata->m_readers) { + pit.second->clear(); reader_proxies_pool_.push_back(pit.second); } pdata->m_readers->clear(); @@ -1053,6 +1054,7 @@ bool PDP::remove_remote_participant( // Return writer proxy objects to pool for (auto pit : *pdata->m_writers) { + pit.second->clear(); writer_proxies_pool_.push_back(pit.second); } pdata->m_writers->clear();