commit b769cc464d34f3f13733831b31fb41884734f6ab Author: David Tardon <dtardon@redhat.com> Date: Mon Oct 11 10:19:11 2010 +0200 #i110567# lock SolarMutex before calling Invalidate() diff --git a/desktop/source/deployment/gui/dp_gui_dialog2.cxx b/desktop/source/deployment/gui/dp_gui_dialog2.cxx index 5f1b359..00d9cd3 100644 --- a/desktop/source/deployment/gui/dp_gui_dialog2.cxx +++ b/desktop/source/deployment/gui/dp_gui_dialog2.cxx @@ -427,6 +427,7 @@ } else if ( rMEvt.IsLeft() ) { + const vos::OGuard aGuard( Application::GetSolarMutex() ); if ( rMEvt.IsMod1() && HasActive() ) selectEntry( EXTENSION_LISTBOX_ENTRY_NOTFOUND ); // Selecting an not existing entry will deselect the current one else @@ -784,6 +785,7 @@ long ExtMgrDialog::addPackageToList( const uno::Reference< deployment::XPackage > &xPackage, const uno::Reference< deployment::XPackageManager > &xPackageManager ) { + const vos::OGuard aGuard( Application::GetSolarMutex() ); m_aUpdateBtn.Enable( true ); return m_pExtensionBox->addEntry( xPackage, xPackageManager ); } @@ -1041,6 +1043,7 @@ //------------------------------------------------------------------------------ void ExtMgrDialog::updatePackageInfo( const uno::Reference< deployment::XPackage > &xPackage ) { + const vos::OGuard aGuard( Application::GetSolarMutex() ); m_pExtensionBox->updateEntry( xPackage ); } @@ -1327,6 +1330,7 @@ if ( !checkDependencies( xPackage ) ) { m_bHasLockedEntries |= (bool) xPackageManager->isReadOnly(); + const vos::OGuard aGuard( Application::GetSolarMutex() ); m_aUpdateBtn.Enable( true ); return m_pExtensionBox->addEntry( xPackage, xPackageManager ); } @@ -1457,6 +1461,7 @@ // We will remove all updated packages with satisfied dependencies, but // we will show all disabled entries so the user sees the result // of the 'disable all' button + const vos::OGuard aGuard( Application::GetSolarMutex() ); if ( isEnabled( xPackage ) && checkDependencies( xPackage ) ) m_pExtensionBox->removeEntry( xPackage ); else