summaryrefslogtreecommitdiff
path: root/sc/source/filter/excel/xeformula.cxx
diff options
context:
space:
mode:
authorDaniel Rentz [dr] <daniel.rentz@oracle.com>2012-12-15 00:57:00 +0100
committerEike Rathke <erack@redhat.com>2012-12-15 21:46:45 +0100
commitbe42c9c1087e18554940525231305a2c7e699acc (patch)
tree60dee1b8b7c6ff6c3356c5b78ab68657dd9422de /sc/source/filter/excel/xeformula.cxx
parent5d5ab4368a0ad0d520ca1728282d9fbb8d9f32bd (diff)
calcishmakkica: #i117283# support new functions in Excel filters
AVERAGEIF, AVERAGEIFS, COUNTIFS, SUMIFS Merged from Apache OO with adaptions. http://svn.apache.org/viewvc?rev=1381452&view=rev Original Apache OO committer: Andrew Rist <arist@apache.org> Original Author: Daniel Rentz [dr] <daniel.rentz@oracle.com> Original Committer: Daniel Rentz [dr] <daniel.rentz@oracle.com> # HG changeset patch # User Daniel Rentz [dr] <daniel.rentz@oracle.com> # Date 1299664669 -3600 # Node ID 89feb2fb2947d76a15e2de8bc1def1edf20e4f88 # Parent 1bf6d73db8a4ee709aa4d9d9d827efafc9c611d2 Change-Id: Ia70075284c5921faea58cae986e4e5eb090b1fab (cherry picked from commit ba950a50b0d0863e18ef781214eaaff9a8684790)
Diffstat (limited to 'sc/source/filter/excel/xeformula.cxx')
-rw-r--r--sc/source/filter/excel/xeformula.cxx5
1 files changed, 4 insertions, 1 deletions
diff --git a/sc/source/filter/excel/xeformula.cxx b/sc/source/filter/excel/xeformula.cxx
index bc66024db65f..d450dfed4b76 100644
--- a/sc/source/filter/excel/xeformula.cxx
+++ b/sc/source/filter/excel/xeformula.cxx
@@ -202,11 +202,14 @@ void XclExpFuncData::IncParamInfoIdx()
if( mpParamInfo )
{
// move pointer to next entry, if something explicit follows
- if( (static_cast<size_t>(mpParamInfo - mrFuncInfo.mpParamInfos + 1) < EXC_FUNCINFO_PARAMINFO_COUNT) && (mpParamInfo[ 1 ].meValid != EXC_PARAM_NONE) )
+ if( (static_cast< size_t >( mpParamInfo - mrFuncInfo.mpParamInfos + 1 ) < EXC_FUNCINFO_PARAMINFO_COUNT) && (mpParamInfo[ 1 ].meValid != EXC_PARAM_NONE) )
++mpParamInfo;
// if last parameter type is 'Excel-only' or 'Calc-only', do not repeat it
else if( IsExcelOnlyParam() || IsCalcOnlyParam() )
mpParamInfo = 0;
+ // points to last info, but parameter pairs expected, move to previous info
+ else if( mrFuncInfo.IsParamPairs() )
+ --mpParamInfo;
// otherwise: repeat last parameter class
}
}