You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
2.1 KiB
49 lines
2.1 KiB
From cd25a97bbadc0a5c1fd6b0e8603c8b6ebd051926 Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
|
Date: Tue, 1 May 2018 12:57:02 +0100
|
|
Subject: [PATCH] set Referer on link mediadescriptor
|
|
|
|
to allow determining if the source document is from a trusted/untrusted
|
|
location
|
|
|
|
Change-Id: I780568652d2ef0cc8543c27ba26289277b5d9d0c
|
|
Reviewed-on: https://gerrit.libreoffice.org/53693
|
|
Tested-by: Jenkins <ci@libreoffice.org>
|
|
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
---
|
|
sw/source/filter/xml/xmltexti.cxx | 11 ++++++++---
|
|
1 file changed, 8 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/sw/source/filter/xml/xmltexti.cxx b/sw/source/filter/xml/xmltexti.cxx
|
|
index 78cab08507f0..33548de42f6c 100644
|
|
--- a/sw/source/filter/xml/xmltexti.cxx
|
|
+++ b/sw/source/filter/xml/xmltexti.cxx
|
|
@@ -570,16 +570,21 @@ uno::Reference< XPropertySet > SwXMLTextImportHelper::createAndInsertOOoLink(
|
|
uno::Sequence< beans::PropertyValue > aMediaDescriptor( 1 );
|
|
aMediaDescriptor[0].Name = "URL";
|
|
aMediaDescriptor[0].Value <<= aURLObj.GetMainURL( INetURLObject::DecodeMechanism::NONE );
|
|
- if ( pDoc->GetDocShell() && pDoc->GetDocShell()->GetMedium() )
|
|
+
|
|
+ if (SfxMedium* pMedium = pDoc->GetDocShell() ? pDoc->GetDocShell()->GetMedium() : nullptr)
|
|
{
|
|
- uno::Reference< task::XInteractionHandler > xInteraction =
|
|
- pDoc->GetDocShell()->GetMedium()->GetInteractionHandler();
|
|
+ uno::Reference< task::XInteractionHandler > xInteraction = pMedium->GetInteractionHandler();
|
|
if ( xInteraction.is() )
|
|
{
|
|
aMediaDescriptor.realloc( 2 );
|
|
aMediaDescriptor[1].Name = "InteractionHandler";
|
|
aMediaDescriptor[1].Value <<= xInteraction;
|
|
}
|
|
+
|
|
+ const auto nLen = aMediaDescriptor.getLength() + 1;
|
|
+ aMediaDescriptor.realloc(nLen);
|
|
+ aMediaDescriptor[nLen - 1].Name = "Referer";
|
|
+ aMediaDescriptor[nLen - 1].Value <<= pMedium->GetName();
|
|
}
|
|
|
|
uno::Reference < embed::XEmbeddedObject > xObj(
|
|
--
|
|
2.14.3
|
|
|