summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/unotools/options.hxx1
-rw-r--r--unotools/source/config/options.cxx12
2 files changed, 13 insertions, 0 deletions
diff --git a/include/unotools/options.hxx b/include/unotools/options.hxx
index 22a731b501ef..8df85d04858c 100644
--- a/include/unotools/options.hxx
+++ b/include/unotools/options.hxx
@@ -80,6 +80,7 @@ namespace utl {
ConfigurationBroadcaster();
ConfigurationBroadcaster(ConfigurationBroadcaster const & );
virtual ~ConfigurationBroadcaster();
+ ConfigurationBroadcaster & operator =(ConfigurationBroadcaster const & other);
virtual void BlockBroadcasts( bool bBlock );
};
diff --git a/unotools/source/config/options.cxx b/unotools/source/config/options.cxx
index 11a396287ad8..977f185b42b8 100644
--- a/unotools/source/config/options.cxx
+++ b/unotools/source/config/options.cxx
@@ -42,6 +42,18 @@ ConfigurationBroadcaster::~ConfigurationBroadcaster()
{
}
+ConfigurationBroadcaster & ConfigurationBroadcaster::operator =(
+ ConfigurationBroadcaster const & other)
+{
+ if (&other != this) {
+ mpList.reset(
+ other.mpList == nullptr ? nullptr : new IMPL_ConfigurationListenerList(*other.mpList));
+ m_nBroadcastBlocked = other.m_nBroadcastBlocked;
+ m_nBlockedHint = other.m_nBlockedHint;
+ }
+ return *this;
+}
+
void ConfigurationBroadcaster::AddListener( utl::ConfigurationListener* pListener )
{
if ( !mpList )