Fix division by zero during modulo operation

This commit is contained in:
Sasha Koshka 2022-11-22 14:04:04 -05:00
parent 2c2fd8f3f9
commit 7417b58bad

View File

@ -333,10 +333,14 @@ func (operation *Operation) Solution () (solution int64, err error) {
if err != nil { return } if err != nil { return }
if index == 0 { if index == 0 {
solution = subSolution solution = subSolution
} else {
if subSolution == 0 {
err = ErrorDivideByZero
} else { } else {
solution %= subSolution solution %= subSolution
} }
} }
}
case OpcodeOr: case OpcodeOr:
for _, operand := range operation.operands { for _, operand := range operation.operands {
subSolution, err = operand.Solution() subSolution, err = operand.Solution()