sw/source/filter/html/htmlplug.cxx |    2 +-
 sw/source/filter/xml/xmltexti.cxx  |    2 +-
 tools/source/fsys/urlobj.cxx       |    3 ++-
 xmloff/source/draw/ximpshap.cxx    |    2 +-
 4 files changed, 5 insertions(+), 4 deletions(-)

New commits:
commit 38a7f67f26143b99fbb7dfb4fee4c7ca919fac4e
Author:     Caolán McNamara <[email protected]>
AuthorDate: Sat Nov 4 19:57:51 2023 +0000
Commit:     Miklos Vajna <[email protected]>
CommitDate: Fri Nov 24 08:45:07 2023 +0100

    warn about exotic protocols as well
    
    Change-Id: I50dcf4f36cd20d75f5ad3876353143268740a50f
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158902
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Reviewed-by: Miklos Vajna <[email protected]>
    (cherry picked from commit 1f5371361875629065a22560e39b9253eb87a23b)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159877

diff --git a/sw/source/filter/html/htmlplug.cxx 
b/sw/source/filter/html/htmlplug.cxx
index 46b1b8952b45..ab2f04a43471 100644
--- a/sw/source/filter/html/htmlplug.cxx
+++ b/sw/source/filter/html/htmlplug.cxx
@@ -1105,7 +1105,7 @@ void SwHTMLParser::InsertFloatingFrame()
 
                 OUString sHRef = aFrameDesc.GetURL().GetMainURL( 
INetURLObject::DecodeMechanism::NONE );
 
-                if (INetURLObject(sHRef).GetProtocol() == INetProtocol::Macro)
+                if (INetURLObject(sHRef).IsExoticProtocol())
                     NotifyMacroEventRead();
 
                 xSet->setPropertyValue("FrameURL", uno::makeAny( sHRef ) );
diff --git a/sw/source/filter/xml/xmltexti.cxx 
b/sw/source/filter/xml/xmltexti.cxx
index c14bd16e80e2..9a34b547f5af 100644
--- a/sw/source/filter/xml/xmltexti.cxx
+++ b/sw/source/filter/xml/xmltexti.cxx
@@ -826,7 +826,7 @@ uno::Reference< XPropertySet > 
SwXMLTextImportHelper::createAndInsertFloatingFra
                 OUString sHRef = URIHelper::SmartRel2Abs(
                             INetURLObject( GetXMLImport().GetBaseURL() ), 
rHRef );
 
-                if (INetURLObject(sHRef).GetProtocol() == INetProtocol::Macro)
+                if (INetURLObject(sHRef).IsExoticProtocol())
                     GetXMLImport().NotifyMacroEventRead();
 
                 xSet->setPropertyValue("FrameURL",
diff --git a/tools/source/fsys/urlobj.cxx b/tools/source/fsys/urlobj.cxx
index 187190b0dfe3..bcedfe4ff973 100644
--- a/tools/source/fsys/urlobj.cxx
+++ b/tools/source/fsys/urlobj.cxx
@@ -4834,7 +4834,8 @@ bool INetURLObject::IsExoticProtocol() const
     return m_eScheme == INetProtocol::Slot ||
            m_eScheme == INetProtocol::Macro ||
            m_eScheme == INetProtocol::Uno ||
-           isSchemeEqualTo(u"vnd.sun.star.script");
+           isSchemeEqualTo(u"vnd.sun.star.script") ||
+           isSchemeEqualTo(u"service");
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/xmloff/source/draw/ximpshap.cxx b/xmloff/source/draw/ximpshap.cxx
index fb5cda0901a8..84fbbd4f0e1f 100644
--- a/xmloff/source/draw/ximpshap.cxx
+++ b/xmloff/source/draw/ximpshap.cxx
@@ -3167,7 +3167,7 @@ void SdXMLFloatingFrameShapeContext::startFastElement 
(sal_Int32 /*nElement*/,
 
         if( !maHref.isEmpty() )
         {
-            if (INetURLObject(maHref).GetProtocol() == INetProtocol::Macro)
+            if (INetURLObject(maHref).IsExoticProtocol())
                 GetImport().NotifyMacroEventRead();
 
             xProps->setPropertyValue("FrameURL", Any(maHref) );

Reply via email to