From a8cbfa66e9ce808e8959f54a26f487b3790e8f9d Mon Sep 17 00:00:00 2001 From: William Bell Date: Wed, 21 Jun 2023 20:48:46 +0100 Subject: [PATCH] fix divide by zero bug --- src/operations.go | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/operations.go b/src/operations.go index b4e1e06..1c47b20 100644 --- a/src/operations.go +++ b/src/operations.go @@ -416,6 +416,16 @@ func calcDivide(o operationType, stack stack, stacklevel int) (any, ArErr) { true, } if typeof(resp) == "number" && typeof(output) == "number" { + if resp.(number).Cmp(newNumber()) == 0 { + return nil, ArErr{ + "Runtime Error", + "Cannot divide by zero", + o.line, + o.path, + o.code, + true, + } + } output = output.(number).Quo(output.(number), resp.(number)) return output, ArErr{} } else if x, ok := output.(ArObject); ok {