From 047be9a36e8b2243d0b06a722df72dc3fbc97bf5 Mon Sep 17 00:00:00 2001 From: Gavin Howard Date: Mon, 10 Jun 2019 19:52:37 -0600 Subject: bc: fix a bug in power This bug is that an error should be returned when the user tries to take 0 to a negative power, since that is undefined, but bc would return 0. --- toys/pending/bc.c | 1 + 1 file changed, 1 insertion(+) diff --git a/toys/pending/bc.c b/toys/pending/bc.c index bb5d86cb..b38d9872 100644 --- a/toys/pending/bc.c +++ b/toys/pending/bc.c @@ -1717,6 +1717,7 @@ static BcStatus bc_num_p(BcNum *a, BcNum *b, BcNum *c, size_t scale) { if (b->rdx) return bc_vm_err(BC_ERROR_MATH_NON_INTEGER); if (!b->len) { + if (b->neg) return bc_vm_err(BC_ERROR_MATH_DIVIDE_BY_ZERO); bc_num_one(c); return BC_STATUS_SUCCESS; } -- cgit v1.2.3