Hi, Please find the latest report on new defect(s) introduced to LibreOffice found with Coverity Scan. 4 new defect(s) introduced to LibreOffice found with Coverity Scan. 18 defect(s), reported by Coverity Scan earlier, were marked fixed in the recent build analyzed by Coverity Scan. New defect(s) Reported-by: Coverity Scan Showing 4 of 4 defect(s) ** CID 1634594: (MISSING_LOCK) /UnoControls/source/base/multiplexer.cxx: 75 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 1)]::operator ()<com::sun::star::awt::XMouseListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() /UnoControls/source/base/multiplexer.cxx: 75 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 1)]::operator ()<com::sun::star::awt::XMouseMotionListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() /UnoControls/source/base/multiplexer.cxx: 75 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 1)]::operator ()<com::sun::star::awt::XWindowListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() /UnoControls/source/base/multiplexer.cxx: 75 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 1)]::operator ()<com::sun::star::awt::XPaintListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() ________________________________________________________________________________________________________ *** CID 1634594: (MISSING_LOCK) /UnoControls/source/base/multiplexer.cxx: 75 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 1)]::operator ()<com::sun::star::awt::XMouseListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() 69 if( m_xPeer.is() ) 70 { 71 for_each_container( 72 [this, &aGuard]<class Ifc>(const comphelper::OInterfaceContainerHelper4<Ifc>& c) 73 { 74 if (c.getLength(aGuard) > 0) >>> CID 1634594: (MISSING_LOCK) >>> Accessing "this->this->m_xPeer" without holding lock "comphelper::UnoImplBase.m_aMutex". Elsewhere, "unocontrols::OMRCListenerMultiplexerHelper.m_xPeer" is written to with "UnoImplBase.m_aMutex" held 2 out of 2 times. 75 notifyPeer(m_xPeer, Remove<Ifc>); 76 }); 77 } 78 m_xPeer = xPeer; 79 if( m_xPeer.is() ) 80 { /UnoControls/source/base/multiplexer.cxx: 75 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 1)]::operator ()<com::sun::star::awt::XMouseMotionListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() 69 if( m_xPeer.is() ) 70 { 71 for_each_container( 72 [this, &aGuard]<class Ifc>(const comphelper::OInterfaceContainerHelper4<Ifc>& c) 73 { 74 if (c.getLength(aGuard) > 0) >>> CID 1634594: (MISSING_LOCK) >>> Accessing "this->this->m_xPeer" without holding lock "comphelper::UnoImplBase.m_aMutex". Elsewhere, "unocontrols::OMRCListenerMultiplexerHelper.m_xPeer" is written to with "UnoImplBase.m_aMutex" held 2 out of 2 times. 75 notifyPeer(m_xPeer, Remove<Ifc>); 76 }); 77 } 78 m_xPeer = xPeer; 79 if( m_xPeer.is() ) 80 { /UnoControls/source/base/multiplexer.cxx: 75 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 1)]::operator ()<com::sun::star::awt::XWindowListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() 69 if( m_xPeer.is() ) 70 { 71 for_each_container( 72 [this, &aGuard]<class Ifc>(const comphelper::OInterfaceContainerHelper4<Ifc>& c) 73 { 74 if (c.getLength(aGuard) > 0) >>> CID 1634594: (MISSING_LOCK) >>> Accessing "this->this->m_xPeer" without holding lock "comphelper::UnoImplBase.m_aMutex". Elsewhere, "unocontrols::OMRCListenerMultiplexerHelper.m_xPeer" is written to with "UnoImplBase.m_aMutex" held 2 out of 2 times. 75 notifyPeer(m_xPeer, Remove<Ifc>); 76 }); 77 } 78 m_xPeer = xPeer; 79 if( m_xPeer.is() ) 80 { /UnoControls/source/base/multiplexer.cxx: 75 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 1)]::operator ()<com::sun::star::awt::XPaintListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() 69 if( m_xPeer.is() ) 70 { 71 for_each_container( 72 [this, &aGuard]<class Ifc>(const comphelper::OInterfaceContainerHelper4<Ifc>& c) 73 { 74 if (c.getLength(aGuard) > 0) >>> CID 1634594: (MISSING_LOCK) >>> Accessing "this->this->m_xPeer" without holding lock "comphelper::UnoImplBase.m_aMutex". Elsewhere, "unocontrols::OMRCListenerMultiplexerHelper.m_xPeer" is written to with "UnoImplBase.m_aMutex" held 2 out of 2 times. 75 notifyPeer(m_xPeer, Remove<Ifc>); 76 }); 77 } 78 m_xPeer = xPeer; 79 if( m_xPeer.is() ) 80 { ** CID 1634593: (UNINIT) ________________________________________________________________________________________________________ *** CID 1634593: (UNINIT) /UnoControls/inc/multiplexer.hxx: 147 in unocontrols::OMRCListenerMultiplexerHelper::advise<com::sun::star::awt::XWindowListener>(const com::sun::star::uno::Reference<T1> &)() 141 @short Add the specified listener to the source. 142 */ 143 144 template <class Interface> void advise(const css::uno::Reference<Interface>& xListener) 145 { 146 std::unique_lock aGuard(m_aMutex); >>> CID 1634593: (UNINIT) >>> Using uninitialized value "aGuard._M_owns" when calling "add". 147 add(aGuard, xListener, m_xPeer); 148 } 149 150 /** 151 @short Remove the specified listener from the source. 152 */ /UnoControls/inc/multiplexer.hxx: 147 in unocontrols::OMRCListenerMultiplexerHelper::advise<com::sun::star::awt::XPaintListener>(const com::sun::star::uno::Reference<T1> &)() 141 @short Add the specified listener to the source. 142 */ 143 144 template <class Interface> void advise(const css::uno::Reference<Interface>& xListener) 145 { 146 std::unique_lock aGuard(m_aMutex); >>> CID 1634593: (UNINIT) >>> Using uninitialized value "aGuard._M_owns" when calling "add". 147 add(aGuard, xListener, m_xPeer); 148 } 149 150 /** 151 @short Remove the specified listener from the source. 152 */ /UnoControls/inc/multiplexer.hxx: 147 in unocontrols::OMRCListenerMultiplexerHelper::advise<com::sun::star::awt::XFocusListener>(const com::sun::star::uno::Reference<T1> &)() 141 @short Add the specified listener to the source. 142 */ 143 144 template <class Interface> void advise(const css::uno::Reference<Interface>& xListener) 145 { 146 std::unique_lock aGuard(m_aMutex); >>> CID 1634593: (UNINIT) >>> Using uninitialized value "aGuard._M_owns" when calling "add". 147 add(aGuard, xListener, m_xPeer); 148 } 149 150 /** 151 @short Remove the specified listener from the source. 152 */ /UnoControls/inc/multiplexer.hxx: 147 in unocontrols::OMRCListenerMultiplexerHelper::advise<com::sun::star::awt::XMouseMotionListener>(const com::sun::star::uno::Reference<T1> &)() 141 @short Add the specified listener to the source. 142 */ 143 144 template <class Interface> void advise(const css::uno::Reference<Interface>& xListener) 145 { 146 std::unique_lock aGuard(m_aMutex); >>> CID 1634593: (UNINIT) >>> Using uninitialized value "aGuard._M_owns" when calling "add". 147 add(aGuard, xListener, m_xPeer); 148 } 149 150 /** 151 @short Remove the specified listener from the source. 152 */ /UnoControls/inc/multiplexer.hxx: 147 in unocontrols::OMRCListenerMultiplexerHelper::advise<com::sun::star::awt::XKeyListener>(const com::sun::star::uno::Reference<T1> &)() 141 @short Add the specified listener to the source. 142 */ 143 144 template <class Interface> void advise(const css::uno::Reference<Interface>& xListener) 145 { 146 std::unique_lock aGuard(m_aMutex); >>> CID 1634593: (UNINIT) >>> Using uninitialized value "aGuard._M_owns" when calling "add". 147 add(aGuard, xListener, m_xPeer); 148 } 149 150 /** 151 @short Remove the specified listener from the source. 152 */ /UnoControls/inc/multiplexer.hxx: 147 in unocontrols::OMRCListenerMultiplexerHelper::advise<com::sun::star::awt::XMouseListener>(const com::sun::star::uno::Reference<T1> &)() 141 @short Add the specified listener to the source. 142 */ 143 144 template <class Interface> void advise(const css::uno::Reference<Interface>& xListener) 145 { 146 std::unique_lock aGuard(m_aMutex); >>> CID 1634593: (UNINIT) >>> Using uninitialized value "aGuard._M_owns" when calling "add". 147 add(aGuard, xListener, m_xPeer); 148 } 149 150 /** 151 @short Remove the specified listener from the source. 152 */ ** CID 1634592: (UNINIT) ________________________________________________________________________________________________________ *** CID 1634592: (UNINIT) /UnoControls/inc/multiplexer.hxx: 157 in unocontrols::OMRCListenerMultiplexerHelper::unadvise<com::sun::star::awt::XFocusListener>(const com::sun::star::uno::Reference<T1> &)() 151 @short Remove the specified listener from the source. 152 */ 153 154 template <class Interface> void unadvise(const css::uno::Reference<Interface>& xListener) 155 { 156 std::unique_lock aGuard(m_aMutex); >>> CID 1634592: (UNINIT) >>> Using uninitialized value "aGuard._M_owns" when calling "remove". 157 remove(aGuard, xListener, m_xPeer); 158 } 159 160 // XEventListener 161 162 virtual void SAL_CALL disposing(const css::lang::EventObject& aSource) override; /UnoControls/inc/multiplexer.hxx: 157 in unocontrols::OMRCListenerMultiplexerHelper::unadvise<com::sun::star::awt::XMouseMotionListener>(const com::sun::star::uno::Reference<T1> &)() 151 @short Remove the specified listener from the source. 152 */ 153 154 template <class Interface> void unadvise(const css::uno::Reference<Interface>& xListener) 155 { 156 std::unique_lock aGuard(m_aMutex); >>> CID 1634592: (UNINIT) >>> Using uninitialized value "aGuard._M_owns" when calling "remove". 157 remove(aGuard, xListener, m_xPeer); 158 } 159 160 // XEventListener 161 162 virtual void SAL_CALL disposing(const css::lang::EventObject& aSource) override; /UnoControls/inc/multiplexer.hxx: 157 in unocontrols::OMRCListenerMultiplexerHelper::unadvise<com::sun::star::awt::XWindowListener>(const com::sun::star::uno::Reference<T1> &)() 151 @short Remove the specified listener from the source. 152 */ 153 154 template <class Interface> void unadvise(const css::uno::Reference<Interface>& xListener) 155 { 156 std::unique_lock aGuard(m_aMutex); >>> CID 1634592: (UNINIT) >>> Using uninitialized value "aGuard._M_owns" when calling "remove". 157 remove(aGuard, xListener, m_xPeer); 158 } 159 160 // XEventListener 161 162 virtual void SAL_CALL disposing(const css::lang::EventObject& aSource) override; /UnoControls/inc/multiplexer.hxx: 157 in unocontrols::OMRCListenerMultiplexerHelper::unadvise<com::sun::star::awt::XMouseListener>(const com::sun::star::uno::Reference<T1> &)() 151 @short Remove the specified listener from the source. 152 */ 153 154 template <class Interface> void unadvise(const css::uno::Reference<Interface>& xListener) 155 { 156 std::unique_lock aGuard(m_aMutex); >>> CID 1634592: (UNINIT) >>> Using uninitialized value "aGuard._M_owns" when calling "remove". 157 remove(aGuard, xListener, m_xPeer); 158 } 159 160 // XEventListener 161 162 virtual void SAL_CALL disposing(const css::lang::EventObject& aSource) override; /UnoControls/inc/multiplexer.hxx: 157 in unocontrols::OMRCListenerMultiplexerHelper::unadvise<com::sun::star::awt::XKeyListener>(const com::sun::star::uno::Reference<T1> &)() 151 @short Remove the specified listener from the source. 152 */ 153 154 template <class Interface> void unadvise(const css::uno::Reference<Interface>& xListener) 155 { 156 std::unique_lock aGuard(m_aMutex); >>> CID 1634592: (UNINIT) >>> Using uninitialized value "aGuard._M_owns" when calling "remove". 157 remove(aGuard, xListener, m_xPeer); 158 } 159 160 // XEventListener 161 162 virtual void SAL_CALL disposing(const css::lang::EventObject& aSource) override; /UnoControls/inc/multiplexer.hxx: 157 in unocontrols::OMRCListenerMultiplexerHelper::unadvise<com::sun::star::awt::XPaintListener>(const com::sun::star::uno::Reference<T1> &)() 151 @short Remove the specified listener from the source. 152 */ 153 154 template <class Interface> void unadvise(const css::uno::Reference<Interface>& xListener) 155 { 156 std::unique_lock aGuard(m_aMutex); >>> CID 1634592: (UNINIT) >>> Using uninitialized value "aGuard._M_owns" when calling "remove". 157 remove(aGuard, xListener, m_xPeer); 158 } 159 160 // XEventListener 161 162 virtual void SAL_CALL disposing(const css::lang::EventObject& aSource) override; ** CID 1634591: (MISSING_LOCK) /UnoControls/source/base/multiplexer.cxx: 85 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 2)]::operator ()<com::sun::star::awt::XMouseMotionListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() /UnoControls/source/base/multiplexer.cxx: 85 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 2)]::operator ()<com::sun::star::awt::XPaintListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() /UnoControls/source/base/multiplexer.cxx: 85 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 2)]::operator ()<com::sun::star::awt::XMouseListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() /UnoControls/source/base/multiplexer.cxx: 85 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 2)]::operator ()<com::sun::star::awt::XWindowListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() ________________________________________________________________________________________________________ *** CID 1634591: (MISSING_LOCK) /UnoControls/source/base/multiplexer.cxx: 85 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 2)]::operator ()<com::sun::star::awt::XMouseMotionListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() 79 if( m_xPeer.is() ) 80 { 81 for_each_container( 82 [this, &aGuard]<class Ifc>(const comphelper::OInterfaceContainerHelper4<Ifc>& c) 83 { 84 if (c.getLength(aGuard) > 0) >>> CID 1634591: (MISSING_LOCK) >>> Accessing "this->this->m_xPeer" without holding lock "comphelper::UnoImplBase.m_aMutex". Elsewhere, "unocontrols::OMRCListenerMultiplexerHelper.m_xPeer" is written to with "UnoImplBase.m_aMutex" held 2 out of 2 times. 85 notifyPeer(m_xPeer, Add<Ifc>); 86 }); 87 } 88 } 89 90 // container method /UnoControls/source/base/multiplexer.cxx: 85 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 2)]::operator ()<com::sun::star::awt::XPaintListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() 79 if( m_xPeer.is() ) 80 { 81 for_each_container( 82 [this, &aGuard]<class Ifc>(const comphelper::OInterfaceContainerHelper4<Ifc>& c) 83 { 84 if (c.getLength(aGuard) > 0) >>> CID 1634591: (MISSING_LOCK) >>> Accessing "this->this->m_xPeer" without holding lock "comphelper::UnoImplBase.m_aMutex". Elsewhere, "unocontrols::OMRCListenerMultiplexerHelper.m_xPeer" is written to with "UnoImplBase.m_aMutex" held 2 out of 2 times. 85 notifyPeer(m_xPeer, Add<Ifc>); 86 }); 87 } 88 } 89 90 // container method /UnoControls/source/base/multiplexer.cxx: 85 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 2)]::operator ()<com::sun::star::awt::XMouseListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() 79 if( m_xPeer.is() ) 80 { 81 for_each_container( 82 [this, &aGuard]<class Ifc>(const comphelper::OInterfaceContainerHelper4<Ifc>& c) 83 { 84 if (c.getLength(aGuard) > 0) >>> CID 1634591: (MISSING_LOCK) >>> Accessing "this->this->m_xPeer" without holding lock "comphelper::UnoImplBase.m_aMutex". Elsewhere, "unocontrols::OMRCListenerMultiplexerHelper.m_xPeer" is written to with "UnoImplBase.m_aMutex" held 2 out of 2 times. 85 notifyPeer(m_xPeer, Add<Ifc>); 86 }); 87 } 88 } 89 90 // container method /UnoControls/source/base/multiplexer.cxx: 85 in unocontrols::OMRCListenerMultiplexerHelper::setPeer(const com::sun::star::uno::Reference<com::sun::star::awt::XWindow> &)::[lambda(const comphelper::OInterfaceContainerHelper4<T1> &) (instance 2)]::operator ()<com::sun::star::awt::XWindowListener>(auto, const comphelper::OInterfaceContainerHelper4<T1> &) const() 79 if( m_xPeer.is() ) 80 { 81 for_each_container( 82 [this, &aGuard]<class Ifc>(const comphelper::OInterfaceContainerHelper4<Ifc>& c) 83 { 84 if (c.getLength(aGuard) > 0) >>> CID 1634591: (MISSING_LOCK) >>> Accessing "this->this->m_xPeer" without holding lock "comphelper::UnoImplBase.m_aMutex". Elsewhere, "unocontrols::OMRCListenerMultiplexerHelper.m_xPeer" is written to with "UnoImplBase.m_aMutex" held 2 out of 2 times. 85 notifyPeer(m_xPeer, Add<Ifc>); 86 }); 87 } 88 } 89 90 // container method ________________________________________________________________________________________________________ To view the defects in Coverity Scan visit, https://u15810271.ct.sendgrid.net/ls/click?upn=u001.AxU2LYlgjL6eX23u9ErQy-2BKADyCpvUKOL6EWmZljiu6VvXBlQRUbS683tC8265rGNPXqJ1ffcoLZCnTuJFQbNcTEkb4XaEQkzovKhJ5DB3c-3Dyff9_A9M4dSy7guk8NP6DcfgslOyvJRzavztVIKj6nRqYjYpWom7SJFyX0y710bz0kUGt5xHJZZ0nE4yp5eiSpmFmFKM59ngrn68TvWjQ3l-2BEy7twsLmsF8yRUU4gZl71YQQun67s8GNkKIWWj-2BE7RLqaEb1XFuBzma345gYeNtNVz0ZieIh7Y141aoyuGjI5hEGuwcWdAQumo4Ssc2ftVv2Tu3O9tSyiUeRO1Qcs1JvZel8-3D