diff options
author | Caolán McNamara <caolanm@redhat.com> | 2020-12-09 09:49:40 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2020-12-09 13:02:19 +0100 |
commit | e65f8ebcd743d0b97121cab222bba60b3f244944 (patch) | |
tree | d6e411f0cef10c7856d58514154cf6d341ecf5be | |
parent | cc1bba7d3a683574b2c116ab5be99be81cce93af (diff) |
passed_freed_arg: InsertObjectAtView returns false if pObj was deleted
Change-Id: Ife8049e0426659f9b83504f1aced52b62159554b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107459
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
-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 e05e370d3321..d5c2f494c3e6 100644 --- a/sd/source/ui/view/sdview3.cxx +++ b/sd/source/ui/view/sdview3.cxx @@ -994,12 +994,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 ); |