diff options
author | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2018-01-26 16:13:23 +0100 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2018-01-27 23:31:33 +0100 |
commit | 1841fcf896f50b7df1375d431857ecddd5f5b392 (patch) | |
tree | b7f3c3cacfcfc34bbb8b7e0314f0878e7d99742e /include | |
parent | 498deef48de6605193268fb8328fec1053c4ed3c (diff) |
tdf#115090 keep internal BaseModel alive long enough
There's reams of code already preventing a close during save
(SfxSaveGuard), but this looks equally effective. Avoids
SfxBaseModel::dispose() pulling the rug under us, when
SfxBaseModel::postEvent_Impl() wants to access parts of the
interface containers during notification.
Change-Id: Iace1f9922c47a97ab2e798b577c6aec8a729da48
Reviewed-on: https://gerrit.libreoffice.org/48709
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Diffstat (limited to 'include')
-rw-r--r-- | include/sfx2/sfxbasemodel.hxx | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/sfx2/sfxbasemodel.hxx b/include/sfx2/sfxbasemodel.hxx index e383a3de0dd0..33c8b4b1e3c2 100644 --- a/include/sfx2/sfxbasemodel.hxx +++ b/include/sfx2/sfxbasemodel.hxx @@ -739,7 +739,7 @@ private: private: - std::unique_ptr<IMPL_SfxBaseModel_DataContainer> m_pData; + std::shared_ptr<IMPL_SfxBaseModel_DataContainer> m_pData; // cannot be held in m_pData, since it needs to be accessed in non-threadsafe context const bool m_bSupportEmbeddedScripts; const bool m_bSupportDocRecovery; |