sfx2/source/doc/iframe.cxx | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-)
New commits: commit e55a1ca02b281d8a841361c1315b7e0ee7d75119 Author: Caolán McNamara <caolan.mcnam...@collabora.com> AuthorDate: Tue Jun 20 10:20:36 2023 +0100 Commit: Caolán McNamara <caolan.mcnam...@collabora.com> CommitDate: Tue Jun 20 12:28:02 2023 +0200 Resolves: tdf#155750 allow private:factory urls in floating frames they create a new document so there isn't an associated location which would trigger the prompt to allow it so just allow factory urls Change-Id: I7b693bcfe5ac04aaed06905637ab3c1eba43c51f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153316 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com> diff --git a/sfx2/source/doc/iframe.cxx b/sfx2/source/doc/iframe.cxx index 1db259994b50..507256aadf17 100644 --- a/sfx2/source/doc/iframe.cxx +++ b/sfx2/source/doc/iframe.cxx @@ -175,14 +175,18 @@ sal_Bool SAL_CALL IFrameObject::load( uno::Reference<frame::XFramesSupplier> xParentFrame = xFrame->getCreator(); SfxObjectShell* pDoc = SfxMacroLoader::GetObjectShell(xParentFrame); - bool bUpdateAllowed(true); - if (pDoc) + const bool bIsFactoryURL = aTargetURL.Complete.startsWith("private:factory/"); + if (!bIsFactoryURL) { - comphelper::EmbeddedObjectContainer& rEmbeddedObjectContainer = pDoc->getEmbeddedObjectContainer(); - bUpdateAllowed = rEmbeddedObjectContainer.getUserAllowsLinkUpdate(); + bool bUpdateAllowed(true); + if (pDoc) + { + comphelper::EmbeddedObjectContainer& rEmbeddedObjectContainer = pDoc->getEmbeddedObjectContainer(); + bUpdateAllowed = rEmbeddedObjectContainer.getUserAllowsLinkUpdate(); + } + if (!bUpdateAllowed) + return false; } - if (!bUpdateAllowed) - return false; OUString sReferer; if (pDoc && pDoc->HasName())