summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@gmail.com>2013-05-03 18:05:25 -0400
committerKohei Yoshida <kohei.yoshida@gmail.com>2013-05-09 13:34:32 -0400
commitf34620b40b94d8021637c86ceb651ec881515397 (patch)
tree72a6efe2d0aaa3edfde7e9b02cc3bd1c9e2c2918 /sc
parent24c5c1185d5908b47605782f44a9e3c5fe1814ac (diff)
I should first check whether a broadcaster exists at this position.
Change-Id: I014e2054dda4103bb90b84db3bf20c5efd5dabab
Diffstat (limited to 'sc')
-rw-r--r--sc/source/core/data/column2.cxx8
1 files changed, 6 insertions, 2 deletions
diff --git a/sc/source/core/data/column2.cxx b/sc/source/core/data/column2.cxx
index 3301e00928c2..db9a3e84e301 100644
--- a/sc/source/core/data/column2.cxx
+++ b/sc/source/core/data/column2.cxx
@@ -1874,8 +1874,12 @@ void ScColumn::FindUsed( SCROW nStartRow, SCROW nEndRow, bool* pUsed ) const
void ScColumn::StartListening( SvtListener& rLst, SCROW nRow )
{
- SvtBroadcaster* pBC = new SvtBroadcaster;
- maBroadcasters.set(nRow, pBC);
+ SvtBroadcaster* pBC = GetBroadcaster(nRow);
+ if (!pBC)
+ {
+ pBC = new SvtBroadcaster;
+ maBroadcasters.set(nRow, pBC);
+ }
rLst.StartListening(*pBC);
}