Kaydet (Commit) bc8a11cf authored tarafından Michael Stahl's avatar Michael Stahl

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
üst d0aba6a0
...@@ -321,8 +321,8 @@ ChartView::~ChartView() ...@@ -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 ...@@ -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 )
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment