summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSzymon Kłos <szymon.klos@collabora.com>2021-03-25 10:41:11 +0100
committerJan Holesovsky <kendy@collabora.com>2021-03-29 14:23:27 +0200
commitf34eac66e64a416739c36aa996c90ea1869b9f0d (patch)
tree59a9ef3598c3214b3c0d759b614d245d7e5e8404
parentf3ede41837dfaafe3ca9c4aa2e84c31b79aafe8f (diff)
SVGFilter::implGenerateMetaData check page before use
Avoid crash in online impress: 1. session A edits the textbox 2. session B removed slide which is edited by A 3. session A tries to edit another textbox on other slide Change-Id: Ic875321107baa48fd2a5b52aa2580a8fcde40823 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113077 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Jan Holesovsky <kendy@collabora.com>
-rw-r--r--filter/source/svg/svgexport.cxx2
1 files changed, 2 insertions, 0 deletions
diff --git a/filter/source/svg/svgexport.cxx b/filter/source/svg/svgexport.cxx
index ce12673b795d..f5ab1a67b94a 100644
--- a/filter/source/svg/svgexport.cxx
+++ b/filter/source/svg/svgexport.cxx
@@ -1228,6 +1228,8 @@ void SVGFilter::implGenerateMetaData()
{
const Reference< css::drawing::XDrawPage > & xDrawPage = mSelectedPages[i];
Reference< css::drawing::XMasterPageTarget > xMasterPageTarget( xDrawPage, UNO_QUERY );
+ if (!xMasterPageTarget.is())
+ continue;
Reference< css::drawing::XDrawPage > xMasterPage = xMasterPageTarget->getMasterPage();
OUString aSlideId(aId + "_" + OUString::number( i ));