From 1ec0207fb5fe772e47b257ab2b0c26ff85f94598 Mon Sep 17 00:00:00 2001 From: xuri Date: Tue, 20 Jul 2021 23:04:50 +0800 Subject: Fix code security issue --- calc.go | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'calc.go') diff --git a/calc.go b/calc.go index 2d10e3b..3bb81b8 100644 --- a/calc.go +++ b/calc.go @@ -7401,7 +7401,7 @@ func (fn *formulaFuncs) cumip(name string, argsList *list.List) formulaArg { if start.Number < 1 || start.Number > end.Number { return newErrorFormulaArg(formulaErrorNA, formulaErrorNA) } - num, ipmt := 0.0, newNumberFormulaArg(0) + num := 0.0 for per := start.Number; per <= end.Number; per++ { args := list.New().Init() args.PushBack(rate) @@ -7411,11 +7411,10 @@ func (fn *formulaFuncs) cumip(name string, argsList *list.List) formulaArg { args.PushBack(newNumberFormulaArg(0)) args.PushBack(typ) if name == "CUMIPMT" { - ipmt = fn.IPMT(args) - } else { - ipmt = fn.PPMT(args) + num += fn.IPMT(args).Number + continue } - num += ipmt.Number + num += fn.PPMT(args).Number } return newNumberFormulaArg(num) } -- cgit v1.2.1