chart2: add a SolarMutexGuard in ChartView::createInstance()
SvxUnoNameItemTable::SvxUnoNameItemTable() registers a listener at SdrModel, surely that needs a lock of some kind. Change-Id: I80d5a31be66e75f07e8abd26504bdcc93ffd22a3
This commit is contained in:
@@ -321,8 +321,8 @@ ChartView::~ChartView()
|
|||||||
|
|
||||||
if( m_pDrawModelWrapper.get() )
|
if( m_pDrawModelWrapper.get() )
|
||||||
{
|
{
|
||||||
EndListening( m_pDrawModelWrapper->getSdrModel(), false /*bAllDups*/ );
|
|
||||||
SolarMutexGuard aSolarGuard;
|
SolarMutexGuard aSolarGuard;
|
||||||
|
EndListening( m_pDrawModelWrapper->getSdrModel(), false /*bAllDups*/ );
|
||||||
m_pDrawModelWrapper.reset();
|
m_pDrawModelWrapper.reset();
|
||||||
}
|
}
|
||||||
m_xDrawPage = NULL;
|
m_xDrawPage = NULL;
|
||||||
@@ -2882,6 +2882,8 @@ void SAL_CALL ChartView::removeVetoableChangeListener( const OUString& /* Proper
|
|||||||
Reference< uno::XInterface > ChartView::createInstance( const OUString& aServiceSpecifier )
|
Reference< uno::XInterface > ChartView::createInstance( const OUString& aServiceSpecifier )
|
||||||
throw (uno::Exception, uno::RuntimeException, std::exception)
|
throw (uno::Exception, uno::RuntimeException, std::exception)
|
||||||
{
|
{
|
||||||
|
SolarMutexGuard aSolarGuard;
|
||||||
|
|
||||||
SdrModel* pModel = ( m_pDrawModelWrapper ? &m_pDrawModelWrapper->getSdrModel() : NULL );
|
SdrModel* pModel = ( m_pDrawModelWrapper ? &m_pDrawModelWrapper->getSdrModel() : NULL );
|
||||||
if ( pModel )
|
if ( pModel )
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user