framework/source/interaction/quietinteraction.cxx | 15 +++++++++++++++ 1 file changed, 15 insertions(+)
New commits: commit a86b0e83177f15320c4fe2906a0a02486ba60d49 Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Tue Oct 19 19:21:29 2021 +0200 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Wed Oct 20 10:19:20 2021 +0200 framework: allow tests to run with read-only $SRCDIR SfxMedium constructor will call QuietInteraction::handle() which invokes abort(), so can't load any documents. (regression from commit 95eb088802562b75f8b299908160145c7e88d763) Change-Id: I7958ad30a06ffea299d70a9a8132eb9ffcf33f43 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123834 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> diff --git a/framework/source/interaction/quietinteraction.cxx b/framework/source/interaction/quietinteraction.cxx index e9dc218576e0..feeecf7c6568 100644 --- a/framework/source/interaction/quietinteraction.cxx +++ b/framework/source/interaction/quietinteraction.cxx @@ -24,6 +24,7 @@ #include <com/sun/star/document/XInteractionFilterSelect.hpp> #include <com/sun/star/document/XInteractionFilterOptions.hpp> #include <com/sun/star/document/FilterOptionsRequest.hpp> +#include <com/sun/star/document/ReadOnlyOpenRequest.hpp> #include <com/sun/star/task/ErrorCodeRequest.hpp> #include <com/sun/star/document/LockedDocumentRequest.hpp> @@ -76,6 +77,7 @@ void SAL_CALL QuietInteraction::handle( const css::uno::Reference< css::task::XI css::task::ErrorCodeRequest aErrorCodeRequest; css::document::LockedDocumentRequest aLockedDocumentRequest; css::document::FilterOptionsRequest aFilterOptionsRequest; + css::document::ReadOnlyOpenRequest aReadOnlyOpenRequest; if( aRequest >>= aErrorCodeRequest ) { @@ -108,6 +110,19 @@ void SAL_CALL QuietInteraction::handle( const css::uno::Reference< css::task::XI } } else + if (aRequest >>= aReadOnlyOpenRequest) + { + // allow unit tests to run on read-only SRCDIR + if (xApprove.is()) + { + xApprove->select(); + } + else if (xAbort.is()) + { + xAbort->select(); + } + } + else if (xAbort.is()) xAbort->select(); }