summaryrefslogtreecommitdiff
path: root/chart2
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2014-09-30 14:21:41 +0200
committerMichael Stahl <mstahl@redhat.com>2014-09-30 17:34:25 +0200
commitbc8a11cf663c41fbe3245640a6159bd0ea6d9ce7 (patch)
treed90973211a213229889bdd823b38db34643ccf3a /chart2
parentd0aba6a01c876a91d1c7ebb3800c7a8428534dec (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.cxx4
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 )
{