sc/source/core/data/dpcache.cxx | 4 ++-- sc/source/core/data/dpitemdata.cxx | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-)
New commits: commit 1afd1e5ca8872253c491af76c70397fb9e00f900 Author: Kohei Yoshida <kohei.yosh...@gmail.com> Date: Wed Aug 22 23:33:14 2012 -0400 fdo#53929: Pivot table uses case insensitive string comparison. Change-Id: I65fa22ceeba37a15b70fe41b1dee26f1dde7d759 diff --git a/sc/source/core/data/dpcache.cxx b/sc/source/core/data/dpcache.cxx index fa2b1ef..c94b542 100644 --- a/sc/source/core/data/dpcache.cxx +++ b/sc/source/core/data/dpcache.cxx @@ -195,7 +195,7 @@ struct EqualByValue : std::binary_function<Bucket, Bucket, bool> { bool operator() (const Bucket& left, const Bucket& right) const { - return left.maValue == right.maValue; + return left.maValue.IsCaseInsEqual(right.maValue); } }; @@ -251,7 +251,7 @@ void processBuckets(std::vector<Bucket>& aBuckets, ScDPCache::Field& rField) it->mnOrderIndex = nCurIndex; for (++it; it != itEnd; ++it) { - if (aPrev != it->maValue) + if (!aPrev.IsCaseInsEqual(it->maValue)) ++nCurIndex; it->mnOrderIndex = nCurIndex; diff --git a/sc/source/core/data/dpitemdata.cxx b/sc/source/core/data/dpitemdata.cxx index 1641572..bb22894 100644 --- a/sc/source/core/data/dpitemdata.cxx +++ b/sc/source/core/data/dpitemdata.cxx @@ -210,8 +210,9 @@ bool ScDPItemData::IsCaseInsEqual(const ScDPItemData& r) const ; } - if (mbStringInterned && r.mbStringInterned) - return mpString == r.mpString; + if (mbStringInterned && r.mbStringInterned && mpString == r.mpString) + // Fast equality check for interned strings. + return true; return ScGlobal::GetpTransliteration()->isEqual(GetString(), r.GetString()); } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits