diff options
author | Oliver Bolte <obo@openoffice.org> | 2010-01-04 12:10:04 +0000 |
---|---|---|
committer | Oliver Bolte <obo@openoffice.org> | 2010-01-04 12:10:04 +0000 |
commit | a9723cee98e94763dfb445fc99d619240ab5976a (patch) | |
tree | 23b4a691424310a30bb269d1587370057c22243c | |
parent | 29202bab9013e06da34b8f71c1372b8667460a89 (diff) |
CWS-TOOLING: integrate CWS calc32stopper7
2009-12-17 18:28:31 +0100 er r277827 : #i107741# HasRefListExpressibleAsOneReference is supposed to detect one reference, really do so
-rw-r--r-- | sc/source/core/data/cell2.cxx | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sc/source/core/data/cell2.cxx b/sc/source/core/data/cell2.cxx index 5bcc5f540..5f0b95ccf 100644 --- a/sc/source/core/data/cell2.cxx +++ b/sc/source/core/data/cell2.cxx @@ -679,6 +679,14 @@ ScFormulaCell::HasRefListExpressibleAsOneReference(ScRange& rRange) const Union of these references must form one range and their intersection must be empty set. */ + + // Detect the simple case of exactly one reference in advance without all + // overhead. + // #i107741# Doing so actually makes outlines using SUBTOTAL(x;reference) + // work again, where the function does not have only references. + if (HasOneReference( rRange)) + return true; + pCode->Reset(); // Get first reference, if any ScToken* const pFirstReference( |