extensions/source/update/check/updatecheck.cxx |    6 +++---
 extensions/source/update/check/updatecheck.hxx |    1 +
 2 files changed, 4 insertions(+), 3 deletions(-)

New commits:
commit c5bd87c78866dffd053c764b2b6d7406c5625f7e
Author:     Caolán McNamara <[email protected]>
AuthorDate: Thu Aug 21 20:43:48 2025 +0100
Commit:     Caolán McNamara <[email protected]>
CommitDate: Sat Aug 23 10:58:13 2025 +0200

    cid#1659646 Data race condition
    
    minimal no-real-change effort
    
    Change-Id: Ie4e54400d321a9396bc2efe62230be5a2f36f535
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190029
    Reviewed-by: Caolán McNamara <[email protected]>
    Tested-by: Jenkins
    Tested-by: Caolán McNamara <[email protected]>

diff --git a/extensions/source/update/check/updatecheck.cxx 
b/extensions/source/update/check/updatecheck.cxx
index b22ff4c0a843..36ca9bfbb757 100644
--- a/extensions/source/update/check/updatecheck.cxx
+++ b/extensions/source/update/check/updatecheck.cxx
@@ -1264,11 +1264,10 @@ UpdateCheck::setCheckFailedState()
 
 
 void UpdateCheck::handleMenuBarUI( const rtl::Reference< UpdateHandler >& 
rUpdateHandler,
+                                   const uno::Reference<beans::XPropertySet>& 
xMenuBarUI,
                                    UpdateState& eState,
                                    bool suppressBubble )
 {
-    uno::Reference<beans::XPropertySet> xMenuBarUI( m_xMenuBarUI );
-
     if ( ( UPDATESTATE_NO_UPDATE_AVAIL == eState ) && m_bHasExtensionUpdate )
         eState = UPDATESTATE_EXT_UPD_AVAIL;
 
@@ -1323,10 +1322,11 @@ void UpdateCheck::setUIState(UpdateState eState, bool 
suppressBubble)
 
     UpdateInfo aUpdateInfo(m_aUpdateInfo);
     OUString aImageName(m_aImageName);
+    uno::Reference<beans::XPropertySet> xMenuBarUI(m_xMenuBarUI);
 
     aGuard.unlock();
 
-    handleMenuBarUI( aUpdateHandler, eState, suppressBubble );
+    handleMenuBarUI(aUpdateHandler, xMenuBarUI, eState, suppressBubble);
 
     if( (UPDATESTATE_UPDATE_AVAIL == eState)
      || (UPDATESTATE_DOWNLOAD_PAUSED == eState)
diff --git a/extensions/source/update/check/updatecheck.hxx 
b/extensions/source/update/check/updatecheck.hxx
index 7b38e3f0d271..1f8455f95187 100644
--- a/extensions/source/update/check/updatecheck.hxx
+++ b/extensions/source/update/check/updatecheck.hxx
@@ -148,6 +148,7 @@ private:
     /* This method turns on the menubar icon and triggers the bubble window
      */
     void handleMenuBarUI( const rtl::Reference< UpdateHandler >& 
rUpdateHandler,
+                          const css::uno::Reference<css::beans::XPropertySet>& 
xMenuBarUI,
                           UpdateState& eState, bool suppressBubble );
     enum State {
         NOT_INITIALIZED,

Reply via email to