svl/source/items/itempool.cxx | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)
New commits: commit 73c3c3deff69ccd6a2f55952a911738496fb3c32 Author: Xisco Fauli <xiscofa...@libreoffice.org> AuthorDate: Thu Dec 13 17:10:29 2018 +0100 Commit: Xisco FaulĂ <xiscofa...@libreoffice.org> CommitDate: Fri Dec 14 18:44:57 2018 +0100 tdf#120750: Revert "tdf#96248 delete SfxPoolItems with Which Id >= 4000" This reverts commit c9493b344a9bd104d0a882f5e9407880c0c63c20. According to https://bugs.documentfoundation.org/show_bug.cgi?id=96248#c15 the asert was gone even before the patch... Anyway, better to have an assert than a crash Change-Id: I84389bf2e8e604f6967923c0eedaae3aec3455e6 Reviewed-on: https://gerrit.libreoffice.org/65115 Tested-by: Jenkins Reviewed-by: Jochen Nitschke <j.nitschke+loger...@ok.de> Reviewed-by: Xisco FaulĂ <xiscofa...@libreoffice.org> (cherry picked from commit c5d0d424bd7e78455cb6f9578cf2425ac0787004) Reviewed-on: https://gerrit.libreoffice.org/65159 diff --git a/svl/source/items/itempool.cxx b/svl/source/items/itempool.cxx index 76e9d90b485f..2ac29e44ada6 100644 --- a/svl/source/items/itempool.cxx +++ b/svl/source/items/itempool.cxx @@ -765,9 +765,16 @@ void SfxItemPool::Remove( const SfxPoolItem& rItem ) SfxPoolItem*& p = (*pItemArr)[nIdx]; assert(p == &rItem); - assert(p->GetRefCount() && "removing Item without ref"); + if ( p->GetRefCount() ) //! + ReleaseRef( *p ); + else + { + assert(false && "removing Item without ref"); + } - if (0 == ReleaseRef(*p)) + // FIXME: Hack, for as long as we have problems with the Outliner + // See other MI-REF + if ( 0 == p->GetRefCount() && nWhich < 4000 ) { DELETEZ(p); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits