From cd1d625ab21e741e91be7d2190bb4fd59fab3200 Mon Sep 17 00:00:00 2001 From: kwolekr Date: Mon, 27 Apr 2015 01:24:37 -0400 Subject: Replace PRNG assertions with PrngException --- src/noise.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/noise.h') diff --git a/src/noise.h b/src/noise.h index d2287835e..5757cbc99 100644 --- a/src/noise.h +++ b/src/noise.h @@ -26,8 +26,8 @@ #ifndef NOISE_HEADER #define NOISE_HEADER -#include "debug.h" #include "irr_v3d.h" +#include "exceptions.h" #include "util/string.h" extern FlagDesc flagdesc_noiseparams[]; @@ -56,14 +56,16 @@ public: inline int range(int min, int max) { - assert(max >= min); + if (max < min) + throw PrngException("Invalid range (max < min)"); /* Here, we ensure the range is not too large relative to RANDOM_MAX, as otherwise the effects of bias would become noticable. Unlike PcgRandom, we cannot modify this RNG's range as it would change the output of this RNG for reverse compatibility. */ - assert((u32)(max - min) <= (RANDOM_RANGE + 1) / 10); + if ((u32)(max - min) > (RANDOM_RANGE + 1) / 10) + throw PrngException("Range too large"); return (next() % (max - min + 1)) + min; } -- cgit v1.2.3