diff options
author | Szymon Kłos <szymon.klos@collabora.com> | 2023-09-22 11:11:06 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.com> | 2023-10-02 17:55:04 +0200 |
commit | e2ee3dd61ab8ea5d970d8da5df3233e7bba5909e (patch) | |
tree | 1bd14e1380c0e9f0ff08890c923e6a086f59232f /sfx2 | |
parent | 6ce4d0091f1e55080f5e9e9c54f27747d1ef700f (diff) |
lok: add broken package interaction handler
in case of repair don't use template flag to not make
file readonly so we can overwrite it and upload to storage
updated version
Conflicts:
desktop/source/lib/lokinteractionhandler.cxx
desktop/source/lib/lokinteractionhandler.hxx
sfx2/source/doc/sfxbasemodel.cxx
Change-Id: Ia460009fc3b77582dde06dd6f94a85aef3aee11b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157493
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Diffstat (limited to 'sfx2')
-rw-r--r-- | sfx2/source/doc/sfxbasemodel.cxx | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sfx2/source/doc/sfxbasemodel.cxx b/sfx2/source/doc/sfxbasemodel.cxx index e5eb0177fe6d..761bd16d2a76 100644 --- a/sfx2/source/doc/sfxbasemodel.cxx +++ b/sfx2/source/doc/sfxbasemodel.cxx @@ -1980,9 +1980,11 @@ void SAL_CALL SfxBaseModel::load( const Sequence< beans::PropertyValue >& seqA xHandler->handle( aRequest.GetRequest() ); if( aRequest.isApproved() ) { + // lok: we want to overwrite file in jail, so don't use template flag + bool bIsLOK = comphelper::LibreOfficeKit::isActive(); // broken package: try second loading and allow repair pMedium->GetItemSet().Put( SfxBoolItem( SID_REPAIRPACKAGE, true ) ); - pMedium->GetItemSet().Put( SfxBoolItem( SID_TEMPLATE, true ) ); + pMedium->GetItemSet().Put( SfxBoolItem( SID_TEMPLATE, !bIsLOK ) ); pMedium->GetItemSet().Put( SfxStringItem( SID_DOCINFO_TITLE, aDocName ) ); // the error must be reset and the storage must be reopened in new mode |