summaryrefslogtreecommitdiff
path: root/src/lib_math.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib_math.c')
-rw-r--r--src/lib_math.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lib_math.c b/src/lib_math.c
index 917b5e7b..599f948e 100644
--- a/src/lib_math.c
+++ b/src/lib_math.c
@@ -14,6 +14,7 @@
14 14
15#include "lj_obj.h" 15#include "lj_obj.h"
16#include "lj_lib.h" 16#include "lj_lib.h"
17#include "lj_vm.h"
17 18
18/* ------------------------------------------------------------------------ */ 19/* ------------------------------------------------------------------------ */
19 20
@@ -162,7 +163,7 @@ LJLIB_CF(math_random) LJLIB_REC(.)
162 double r1 = lj_lib_checknum(L, 1); 163 double r1 = lj_lib_checknum(L, 1);
163#endif 164#endif
164 if (n == 1) { 165 if (n == 1) {
165 d = floor(d*r1) + 1.0; /* d is an int in range [1, r1] */ 166 d = lj_vm_floor(d*r1) + 1.0; /* d is an int in range [1, r1] */
166 } else { 167 } else {
167#if LJ_DUALNUM 168#if LJ_DUALNUM
168 double r2; 169 double r2;
@@ -176,7 +177,7 @@ LJLIB_CF(math_random) LJLIB_REC(.)
176#else 177#else
177 double r2 = lj_lib_checknum(L, 2); 178 double r2 = lj_lib_checknum(L, 2);
178#endif 179#endif
179 d = floor(d*(r2-r1+1.0)) + r1; /* d is an int in range [r1, r2] */ 180 d = lj_vm_floor(d*(r2-r1+1.0)) + r1; /* d is an int in range [r1, r2] */
180 } 181 }
181#if LJ_DUALNUM 182#if LJ_DUALNUM
182 if (isint) { 183 if (isint) {