summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/bcmath/bcmath.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/ext/bcmath/bcmath.c b/ext/bcmath/bcmath.c
index 7100367faa..10450f1968 100644
--- a/ext/bcmath/bcmath.c
+++ b/ext/bcmath/bcmath.c
@@ -439,8 +439,9 @@ PHP_FUNCTION(bcpowmod)
scale_int = (int) ((int)scale < 0 ? 0 : scale);
if (bc_raisemod(first, second, mod, &result, scale_int) != -1) {
- if (result->n_scale > scale) {
- result->n_scale = (int)scale;
+ if (result->n_scale > scale_int) {
+ result = split_bc_num(result);
+ result->n_scale = scale_int;
}
RETVAL_STR(bc_num2str(result));
} else {