summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2015-01-23 12:09:55 +0100
committerAndras Timar <andras.timar@collabora.com>2015-01-24 16:54:47 +0100
commit6bb208198c2a2d8a0162e67ecfc7efe0ccecc009 (patch)
tree0b4884b17a1d8972d1d1384745ab6cc1923bdabd
parent36e1d44e64a2d2e973c3da5abee2f9c8b314a324 (diff)
Allow for null xModel in TitleHelper::getTitle
Witnessed a JunitTest_chart2_unoapi failure where (deep within Idle::Timeout) chart::impl::ModelState::update is apparently called with a null xModel. All the code called from there appears to be careful to handle a null xModel, except for chart::TitleHelper::getTitle, which---presumably by accident---stopped doing so with 401f01caf5b357ac6c15b37a89c0a9aaeb46f4e4 "use ChartModel instead of XModel in a few places." Change-Id: I5788b5e41a6d68fe193cb214d736ee54c4c581d7 (cherry picked from commit 6acfc822566ca3c7d9fdd4af37ad5104a00d5d35) Reviewed-on: https://gerrit.libreoffice.org/14127 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--chart2/source/tools/TitleHelper.cxx20
1 files changed, 10 insertions, 10 deletions
diff --git a/chart2/source/tools/TitleHelper.cxx b/chart2/source/tools/TitleHelper.cxx
index 26bffc3459aa..3c58947ae8b2 100644
--- a/chart2/source/tools/TitleHelper.cxx
+++ b/chart2/source/tools/TitleHelper.cxx
@@ -152,19 +152,19 @@ uno::Reference< XTitle > TitleHelper::getTitle( TitleHelper::eTitleType nTitleIn
uno::Reference< XTitle > TitleHelper::getTitle( TitleHelper::eTitleType nTitleIndex
, const uno::Reference< frame::XModel >& xModel )
{
+ uno::Reference< XTitled > xTitled;
if(nTitleIndex == TitleHelper::MAIN_TITLE)
{
- uno::Reference< XTitled > xTitled( xModel, uno::UNO_QUERY );
- return xTitled->getTitleObject();
+ xTitled.set( xModel, uno::UNO_QUERY );
+ }
+ else
+ {
+ uno::Reference< XChartDocument > xChartDoc( xModel, uno::UNO_QUERY );
+ uno::Reference< XDiagram > xDiagram;
+ if( xChartDoc.is())
+ xDiagram.set( xChartDoc->getFirstDiagram());
+ xTitled = lcl_getTitleParent( nTitleIndex, xDiagram );
}
-
- uno::Reference< XChartDocument > xChartDoc( xModel, uno::UNO_QUERY );
- uno::Reference< XDiagram > xDiagram;
-
- if( xChartDoc.is())
- xDiagram.set( xChartDoc->getFirstDiagram());
-
- uno::Reference< XTitled > xTitled( lcl_getTitleParent( nTitleIndex, xDiagram ) );
if( xTitled.is())
return xTitled->getTitleObject();
return NULL;