diff options
author | Caolán McNamara <caolanm@redhat.com> | 2020-12-09 09:49:40 +0000 |
---|---|---|
committer | Michael Stahl <michael.stahl@cib.de> | 2020-12-10 15:22:54 +0100 |
commit | f9b1ce7a2afeb5d26fb7901eedc40212269156dd (patch) | |
tree | 1b6879efc91e59342de5793e128f5d1fbe473c6e /sd | |
parent | 4c2c161018165b7484233547fea1511c84b3ffe3 (diff) |
passed_freed_arg: InsertObjectAtView returns false if pObj was deleted
Change-Id: Ife8049e0426659f9b83504f1aced52b62159554b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107477
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
Diffstat (limited to 'sd')
-rw-r--r-- | sd/source/ui/view/sdview3.cxx | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sd/source/ui/view/sdview3.cxx b/sd/source/ui/view/sdview3.cxx index c4ae7621a60c..cc856512ae21 100644 --- a/sd/source/ui/view/sdview3.cxx +++ b/sd/source/ui/view/sdview3.cxx @@ -995,12 +995,13 @@ bool View::InsertData( const TransferableDataHelper& rDataHelper, nOptions |= SdrInsertFlags::DONTMARK; } - InsertObjectAtView( pObj, *pPV, nOptions ); + // bInserted of false means that pObj has been deleted + bool bInserted = InsertObjectAtView( pObj, *pPV, nOptions ); - if( pImageMap ) + if (bInserted && pImageMap) pObj->AppendUserData( std::unique_ptr<SdrObjUserData>(new SvxIMapInfo( *pImageMap )) ); - if (pObj->IsChart()) + if (bInserted && pObj->IsChart()) { bool bDisableDataTableDialog = false; svt::EmbeddedObjectRef::TryRunningState( xObj ); |