extensions/source/propctrlr/formcomponenthandler.cxx      |    4 ++++
 reportdesign/source/ui/inspection/DataProviderHandler.cxx |    3 ++-
 2 files changed, 6 insertions(+), 1 deletion(-)

New commits:
commit 7c4d18cb87e871bef9d1be19a79ce63b5ff7dd7d
Author:     Caolán McNamara <[email protected]>
AuthorDate: Wed Mar 30 21:22:16 2022 +0100
Commit:     Michael Stahl <[email protected]>
CommitDate: Fri Apr 1 11:55:20 2022 +0200

    Resolves: tdf#117159 don't crash with chart selected in database report edit
    
    Change-Id: I770008bf0a775c108019c2005b6ec73ee9702a19
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132190
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <[email protected]>

diff --git a/extensions/source/propctrlr/formcomponenthandler.cxx 
b/extensions/source/propctrlr/formcomponenthandler.cxx
index 20a21ad8ae72..30568b56b7d8 100644
--- a/extensions/source/propctrlr/formcomponenthandler.cxx
+++ b/extensions/source/propctrlr/formcomponenthandler.cxx
@@ -243,6 +243,10 @@ namespace pcr
     {
         const PropertyId nPropId( impl_getPropertyId_throwUnknownProperty( 
_rPropertyName ) );
 
+        // tdf#117159 crash with chart in database report
+        if (!m_xComponent)
+            return Any();
+
         Any aPropertyValue( m_xComponent->getPropertyValue( _rPropertyName ) );
 
         Reference< resource::XStringResourceResolver > xStringResourceResolver
diff --git a/reportdesign/source/ui/inspection/DataProviderHandler.cxx 
b/reportdesign/source/ui/inspection/DataProviderHandler.cxx
index a6c1214704a7..389074a903c5 100644
--- a/reportdesign/source/ui/inspection/DataProviderHandler.cxx
+++ b/reportdesign/source/ui/inspection/DataProviderHandler.cxx
@@ -182,7 +182,8 @@ uno::Any SAL_CALL 
DataProviderHandler::getPropertyValue(const OUString & Propert
             //}
             break;
         case PROPERTY_ID_PREVIEW_COUNT:
-            aPropertyValue <<= m_xDataProvider->getRowLimit();
+            if (m_xDataProvider) // tdf#117159 crash with chart in database 
report otherwise
+                aPropertyValue <<= m_xDataProvider->getRowLimit();
             break;
         default:
             aPropertyValue = m_xFormComponentHandler->getPropertyValue( 
PropertyName );

Reply via email to