diff options
author | Michael Stahl <Michael.Stahl@cib.de> | 2019-04-29 17:14:42 +0200 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2019-05-13 19:51:05 +0200 |
commit | 103915a477ead1e6d0f799c57bf27050cae1abf4 (patch) | |
tree | 860842468ab38ca160e0edfd2ea1f75bb2965f24 /sw/source/core/bastyp/swcache.cxx | |
parent | 63fd178941707bc6cf0bed91d2c21216e2747120 (diff) |
tdf#122607 sw: remove deleted SwTextFrame's cache entry
Apparently nothing else would remove the entry, and without SwTextFrame
it's not accessible any more.
If the entry was recently used, then the SwSaveSetLRUOfst usage in
SwViewShell::CalcLayout() will preserve it instead of giving the cache
entry to a new frame.
Change-Id: Id43fdbad2ac006853928e30a7b6768c3e3dc1667
Reviewed-on: https://gerrit.libreoffice.org/71541
Tested-by: Jenkins
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
(cherry picked from commit 31ae7509003b1e650463ee1468c0b315ba13efe6)
Diffstat (limited to 'sw/source/core/bastyp/swcache.cxx')
-rw-r--r-- | sw/source/core/bastyp/swcache.cxx | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sw/source/core/bastyp/swcache.cxx b/sw/source/core/bastyp/swcache.cxx index 2019d7d0b3b5..ab82fe11ba74 100644 --- a/sw/source/core/bastyp/swcache.cxx +++ b/sw/source/core/bastyp/swcache.cxx @@ -326,6 +326,15 @@ void SwCache::DeleteObj( SwCacheObj *pObj ) CHECK; } +void SwCache::Delete(void const*const pOwner, sal_uInt16 const nIndex) +{ + INCREMENT( m_nDelete ); + if (SwCacheObj *const pObj = Get(pOwner, nIndex, false)) + { + DeleteObj(pObj); + } +} + void SwCache::Delete( const void *pOwner ) { INCREMENT( m_nDelete ); |