path: root/sc/inc/sharedformula.hxx
diff options
authorEike Rathke <>2015-09-16 12:38:06 +0200
committerAndras Timar <>2015-09-17 21:45:29 +0200
commitf4820471141fb2cfc3e9fd60d94150ca94f2fbd7 (patch)
treead041541c765db8c0077e3b6af814e895fcf9d2f /sc/inc/sharedformula.hxx
parentdef698fddb611e1c8ed4fa5a36f3eb39299fba44 (diff)
Resolves: tdf#94249 do not remove broadcasters while iterators are in use
EndListeningContext holds BroadcasterStoreType iterators in its ColumnBlockPositionSet and collects broadcasters to purge them at the end. Removing broadcasters from ScColumn::maBroadcasters in between invalidates the iterators. Hence calling the "normal" EndListening() that removes a broadcaster when all listeners are gone while an EndListeningContext is in use is bad. Change-Id: Ibdd88469e91e6173ceff1f391c23ef7cb7c6f596 (cherry picked from commit e4a8ae0bf54476e9a0c9e1f5348c05f3cd838899) Reviewed-on: Reviewed-by: Caolán McNamara <> Tested-by: Caolán McNamara <>
Diffstat (limited to 'sc/inc/sharedformula.hxx')
1 files changed, 2 insertions, 1 deletions
diff --git a/sc/inc/sharedformula.hxx b/sc/inc/sharedformula.hxx
index d94d8fe39e08..ed0312934bc0 100644
--- a/sc/inc/sharedformula.hxx
+++ b/sc/inc/sharedformula.hxx
@@ -62,8 +62,9 @@ public:
* specified position is not a formula cell.
* @param aPos position of cell to examine.
+ * @param pCxt context to be used, if any, may be nullptr.
- static void splitFormulaCellGroup(const CellStoreType::position_type& aPos);
+ static void splitFormulaCellGroup(const CellStoreType::position_type& aPos, sc::EndListeningContext* pCxt);
* Split existing shared formula ranges at specified row positions.