filter/source/msfilter/svdfppt.cxx | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-)
New commits: commit 248aec4e966a99e411f46950722f0684b6286b2c Author: Caolán McNamara <caol...@redhat.com> Date: Thu Mar 16 21:22:36 2017 +0000 ofz: use after free Change-Id: I6d3f9108b02149165b020fc9c6677880456a1ef4 Reviewed-on: https://gerrit.libreoffice.org/35300 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Michael Stahl <mst...@redhat.com> diff --git a/filter/source/msfilter/svdfppt.cxx b/filter/source/msfilter/svdfppt.cxx index 4bd7a4f58ea8..2c05ce0d7403 100644 --- a/filter/source/msfilter/svdfppt.cxx +++ b/filter/source/msfilter/svdfppt.cxx @@ -2904,7 +2904,18 @@ void SdrPowerPointImport::ImportPage( SdrPage* pRet, const PptSlidePersistEntry* // obsolete here, too. pRet->getSdrPageProperties().ClearItem(); pRet->getSdrPageProperties().PutItemSet(rSlidePersist.pBObj->GetMergedItemSet()); - SdrObject::Free( rSlidePersist.pBObj ); + if (rSlidePersist.pSolverContainer) + { + for (SvxMSDffConnectorRule* pPtr : rSlidePersist.pSolverContainer->aCList) + { + // check connections to the group object + if (pPtr->pAObj == rSlidePersist.pBObj) + pPtr->pAObj = nullptr; + if (pPtr->pBObj == rSlidePersist.pBObj) + pPtr->pBObj = nullptr; + } + } + SdrObject::Free(rSlidePersist.pBObj); } } }
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits