diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2015-03-04 13:34:52 +0100 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2015-03-04 13:34:52 +0100 |
commit | db2c0dc78f11c2764f16e7ca4edaf2cdffc56c64 (patch) | |
tree | 38fa8506227f9978728b66c0b55bbe33c187704c /sw | |
parent | e49ca69747e9e905dbb00bbd5a7ea85331607a04 (diff) |
Hack to make an in-destruction SwPageFrm no longer claim to be one
as observed by -fsanitize=vptr e.g. during CppunitTest_sw_mailmerge (though the
true fix might be to prevent all this from happening during ~SwPageFrm anyway?):
SwFrm::FindPageFrm()
SwAnchoredObject::FindPageFrmOfAnchor()
lcl_NotifyBackgroundOfObj(SwDrawContact&, SdrObject const&, Rectangle const*)
SwDrawContact::DisconnectFromLayout(bool)
SwDrawContact::DisconnectObjFromLayout(SdrObject*)
SwLayoutFrm::Destroy()
SwLayoutFrm::~SwLayoutFrm()
SwFtnBossFrm::~SwFtnBossFrm()
SwPageFrm::~SwPageFrm()
SwFrm::CheckPageDescs(SwPageFrm*, bool, SwPageFrm**)
SwFlowFrm::MoveBwd(bool&)
SwCntntFrm::MakeAll()
SwFrm::PrepareMake()
SwFrm::Calc()
SwLayAction::IsShortCut(SwPageFrm*&)
SwLayAction::InternalAction()
SwLayAction::Action()
SwViewShell::ImplEndAction(bool)
SwViewShell::EndAction(bool)
SwCrsrShell::EndAction(bool, bool)
SwEditShell::EndAllAction()
SwDoc::AppendDoc(SwDoc const&, unsigned short, SwPageDesc*, bool)
...
Change-Id: Iac207ef4a80318609f0a00d219dcccacaee7b205
Diffstat (limited to 'sw')
-rw-r--r-- | sw/source/core/layout/pagechg.cxx | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sw/source/core/layout/pagechg.cxx b/sw/source/core/layout/pagechg.cxx index 60c1f06f9d82..f65afbca664a 100644 --- a/sw/source/core/layout/pagechg.cxx +++ b/sw/source/core/layout/pagechg.cxx @@ -263,6 +263,10 @@ SwPageFrm::~SwPageFrm() } } } + + // Hack to make sure code called from base ~SwFtnBossFrm does not interpret + // this as a SwPageFrm (which it no longer is by then): + mnFrmType = FRM_UNUSED; } void SwPageFrm::CheckGrid( bool bInvalidate ) |