diff options
author | Kohei Yoshida <kohei.yoshida@collabora.com> | 2013-10-08 09:14:48 -0400 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@collabora.com> | 2013-10-08 15:48:10 -0400 |
commit | 10579fcdbfe7873affaecffb09b13fa97a4c6b23 (patch) | |
tree | 429ebf91b0f673d4d19be559f057a1001ecb87e8 /sc | |
parent | 543dfbad46ae0e67636a92af677dd9c3258fac84 (diff) |
Use the document's string pool rather than a separate one for the formula.
Change-Id: Id13bca1ed493328fb0b8a664275af8c98e3f46c8
Diffstat (limited to 'sc')
-rw-r--r-- | sc/inc/formulagroup.hxx | 1 | ||||
-rw-r--r-- | sc/source/core/data/column2.cxx | 12 |
2 files changed, 6 insertions, 7 deletions
diff --git a/sc/inc/formulagroup.hxx b/sc/inc/formulagroup.hxx index fc3af2a543aa..ca240f718089 100644 --- a/sc/inc/formulagroup.hxx +++ b/sc/inc/formulagroup.hxx @@ -33,7 +33,6 @@ struct FormulaGroupContext : boost::noncopyable typedef boost::ptr_vector<NumArrayType> NumArrayStoreType; typedef boost::ptr_vector<StrArrayType> StrArrayStoreType; - svl::SharedStringPool maStrPool; NumArrayStoreType maNumArrays; StrArrayStoreType maStrArrays; }; diff --git a/sc/source/core/data/column2.cxx b/sc/source/core/data/column2.cxx index 35c91531d037..0f13a2635aa5 100644 --- a/sc/source/core/data/column2.cxx +++ b/sc/source/core/data/column2.cxx @@ -2167,11 +2167,11 @@ bool appendDouble( } bool appendStrings( - sc::FormulaGroupContext& rCxt, ScDocument* pDoc, - sc::FormulaGroupContext::StrArrayType& rArray, size_t nLen, - sc::CellStoreType::iterator it, const sc::CellStoreType::iterator& itEnd ) + ScDocument* pDoc, sc::FormulaGroupContext::StrArrayType& rArray, + size_t nLen, sc::CellStoreType::iterator it, const sc::CellStoreType::iterator& itEnd) { size_t nLenRemain = nLen; + svl::SharedStringPool& rPool = pDoc->GetCellStringPool(); for (; it != itEnd; ++it) { @@ -2194,7 +2194,7 @@ bool appendStrings( for (; itData != itDataEnd; ++itData) { OUString aStr = ScEditUtil::GetString(**itData, pDoc); - rArray.push_back(rCxt.maStrPool.intern(aStr).getData()); + rArray.push_back(rPool.intern(aStr).getData()); } } break; @@ -2219,7 +2219,7 @@ bool appendStrings( return false; } - rArray.push_back(rCxt.maStrPool.intern(aStr).getData()); + rArray.push_back(rPool.intern(aStr).getData()); } } break; @@ -2380,7 +2380,7 @@ formula::VectorRefArray ScColumn::FetchVectorRefArray( sc::FormulaGroupContext& // Fill the remaining array with values from the following blocks. ++aPos.first; - if (!appendStrings(rCxt, pDocument, rArray, nLenRequested - nLen, aPos.first, maCells.end())) + if (!appendStrings(pDocument, rArray, nLenRequested - nLen, aPos.first, maCells.end())) return formula::VectorRefArray(); return formula::VectorRefArray(&rArray[0]); |