diff options
author | Michael Stahl <mstahl@redhat.com> | 2014-09-30 14:21:41 +0200 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2014-09-30 17:34:25 +0200 |
commit | bc8a11cf663c41fbe3245640a6159bd0ea6d9ce7 (patch) | |
tree | d90973211a213229889bdd823b38db34643ccf3a /chart2 | |
parent | d0aba6a01c876a91d1c7ebb3800c7a8428534dec (diff) |
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
Diffstat (limited to 'chart2')
-rw-r--r-- | chart2/source/view/main/ChartView.cxx | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/chart2/source/view/main/ChartView.cxx b/chart2/source/view/main/ChartView.cxx index 6266b8755302..deeda978001b 100644 --- a/chart2/source/view/main/ChartView.cxx +++ b/chart2/source/view/main/ChartView.cxx @@ -321,8 +321,8 @@ ChartView::~ChartView() if( m_pDrawModelWrapper.get() ) { - EndListening( m_pDrawModelWrapper->getSdrModel(), false /*bAllDups*/ ); SolarMutexGuard aSolarGuard; + EndListening( m_pDrawModelWrapper->getSdrModel(), false /*bAllDups*/ ); m_pDrawModelWrapper.reset(); } m_xDrawPage = NULL; @@ -2882,6 +2882,8 @@ void SAL_CALL ChartView::removeVetoableChangeListener( const OUString& /* Proper Reference< uno::XInterface > ChartView::createInstance( const OUString& aServiceSpecifier ) throw (uno::Exception, uno::RuntimeException, std::exception) { + SolarMutexGuard aSolarGuard; + SdrModel* pModel = ( m_pDrawModelWrapper ? &m_pDrawModelWrapper->getSdrModel() : NULL ); if ( pModel ) { |