diff options
author | Caolán McNamara <caolanm@redhat.com> | 2020-05-11 20:46:43 +0100 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2020-05-12 21:24:10 +0200 |
commit | 5d101a65c31e6c2f8dd0edffe05f69055cbd481c (patch) | |
tree | 76e185277d2e2c4b07d578613b59cc5691abd5a4 /forms | |
parent | tdf#132939: avoid crash when uninitialized FilterDescriptor (diff) | |
download | core-5d101a65c31e6c2f8dd0edffe05f69055cbd481c.tar.gz core-5d101a65c31e6c2f8dd0edffe05f69055cbd481c.zip |
limit forms to http[s]
Change-Id: I3ed0bc626f693ec03f610dc7361f93cad914c9d8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93993
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'forms')
-rw-r--r-- | forms/source/xforms/submission.cxx | 3 | ||||
-rw-r--r-- | forms/source/xforms/submission/submission.hxx | 6 |
2 files changed, 9 insertions, 0 deletions
diff --git a/forms/source/xforms/submission.cxx b/forms/source/xforms/submission.cxx index f20b72f11973..7e8517e89481 100644 --- a/forms/source/xforms/submission.cxx +++ b/forms/source/xforms/submission.cxx @@ -253,6 +253,9 @@ bool Submission::doSubmit( const Reference< XInteractionHandler >& xHandler ) return false; } + if (!xSubmission->IsWebProtocol()) + return false; + CSubmission::SubmissionResult aResult = xSubmission->submit( xHandler ); if (aResult == CSubmission::SUCCESS) diff --git a/forms/source/xforms/submission/submission.hxx b/forms/source/xforms/submission/submission.hxx index 77d59b1f740e..a459f471ba0d 100644 --- a/forms/source/xforms/submission/submission.hxx +++ b/forms/source/xforms/submission/submission.hxx @@ -126,6 +126,12 @@ public: , m_xContext(::comphelper::getProcessComponentContext()) {} + bool IsWebProtocol() const + { + INetProtocol eProtocol = m_aURLObj.GetProtocol(); + return eProtocol == INetProtocol::Http || eProtocol == INetProtocol::Https; + } + virtual ~CSubmission() {} virtual SubmissionResult submit(const css::uno::Reference< css::task::XInteractionHandler >& ) = 0; |