diff options
-rw-r--r-- | sw/inc/calbck.hxx | 4 | ||||
-rw-r--r-- | sw/source/core/attr/calbck.cxx | 11 |
2 files changed, 9 insertions, 6 deletions
diff --git a/sw/inc/calbck.hxx b/sw/inc/calbck.hxx index cdf1e9b612dc..8843f2a45838 100644 --- a/sw/inc/calbck.hxx +++ b/sw/inc/calbck.hxx @@ -26,7 +26,7 @@ #include "ring.hxx" #include "hintids.hxx" #include <type_traits> -#include <list> +#include <vector> #include <memory> @@ -265,7 +265,7 @@ namespace sw typedef std::unique_ptr<SwDepend> pointer_t; #endif SwClient& m_rToTell; - std::list<pointer_t> m_vDepends; + std::vector<pointer_t> m_vDepends; public: WriterMultiListener(SwClient& rToTell) : m_rToTell(rToTell) {} diff --git a/sw/source/core/attr/calbck.cxx b/sw/source/core/attr/calbck.cxx index 8f97761e38fe..ca75f06904df 100644 --- a/sw/source/core/attr/calbck.cxx +++ b/sw/source/core/attr/calbck.cxx @@ -314,10 +314,13 @@ bool sw::WriterMultiListener::IsListeningTo(const SwModify* const pBroadcaster) void sw::WriterMultiListener::EndListening(SwModify* pBroadcaster) { - m_vDepends.remove_if( [&pBroadcaster](const pointer_t& pListener) - { - return pListener->GetRegisteredIn() == nullptr || pListener->GetRegisteredIn() == pBroadcaster; - }); + m_vDepends.erase( + std::remove_if( m_vDepends.begin(), m_vDepends.end(), + [&pBroadcaster](const pointer_t& pListener) + { + return pListener->GetRegisteredIn() == nullptr || pListener->GetRegisteredIn() == pBroadcaster; + }), + m_vDepends.end()); } void sw::WriterMultiListener::EndListeningAll() |