diff options
author | Michael Stahl <mstahl@redhat.com> | 2016-03-05 00:42:05 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2016-03-09 10:12:53 +0000 |
commit | 2317420ecee0bf2f01f1555fdaaa56dc9fd6a9c8 (patch) | |
tree | bac4b8fe418387ad943edd46fc1c1deb333ab364 | |
parent | b3f2b2529dc4ed313f423d29551577b6dfed4258 (diff) |
basic: tdf#87530 if a new password is set, must set mbLoadedSource flag
... so that the library is stored (and encrypted), and not copied
unencrypted from source storage.
Change-Id: I9546087ec6f07007aa1ec377d2e959f2bae99a38
(cherry picked from commit 6a351c5cf91d0f667168d834ba2eb5c04121c7d5)
Reviewed-on: https://gerrit.libreoffice.org/23043
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r-- | basic/source/uno/scriptcont.cxx | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/basic/source/uno/scriptcont.cxx b/basic/source/uno/scriptcont.cxx index bbf1fa6b2117..8805c38b982e 100644 --- a/basic/source/uno/scriptcont.cxx +++ b/basic/source/uno/scriptcont.cxx @@ -94,6 +94,11 @@ void SfxScriptLibraryContainer::setLibraryPassword( const OUString& rLibraryName pImplLib->mbDoc50Password = true; pImplLib->mbPasswordProtected = true; pImplLib->maPassword = rPassword; + SfxScriptLibrary *const pSL(dynamic_cast<SfxScriptLibrary *>(pImplLib)); + if (pSL && pSL->mbLoaded) + { + pSL->mbLoadedSource = true; // must store source code now! + } } } catch(const NoSuchElementException& ) {} @@ -515,6 +520,11 @@ void SAL_CALL SfxScriptLibraryContainer::changeLibraryPassword( const OUString& pImplLib->mbPasswordProtected = true; pImplLib->mbPasswordVerified = true; pImplLib->maPassword = NewPassword; + SfxScriptLibrary *const pSL(dynamic_cast<SfxScriptLibrary *>(pImplLib)); + if (pSL && pSL->mbLoaded) + { + pSL->mbLoadedSource = true; // must store source code now! + } maModifiable.setModified( true ); pImplLib->implSetModified( true ); |