diff options
Diffstat (limited to 'src/shared/Util.cpp')
-rw-r--r-- | src/shared/Util.cpp | 35 |
1 files changed, 30 insertions, 5 deletions
diff --git a/src/shared/Util.cpp b/src/shared/Util.cpp index 26d2275ec2a..4624cacfde7 100644 --- a/src/shared/Util.cpp +++ b/src/shared/Util.cpp @@ -36,27 +36,52 @@ static MTRandTSS mtRand; int32 irand (int32 min, int32 max) { - return int32 (mtRand.get ().randInt (max - min)) + min; + int32 result; +#pragma omp critical (mtrand) +{ + result = mtRand.get ().randInt (max-min) + min; +} + return result; } uint32 urand (uint32 min, uint32 max) { - return mtRand.get ().randInt (max - min) + min; + uint32 result; +#pragma omp critical (mtrand) +{ + result = mtRand.get ().randInt (max - min) + min; +} + return result; } int32 rand32 () { - return mtRand.get ().randInt (); + int32 result; +#pragma omp critical (mtrand) +{ + result = mtRand.get ().randInt (); +} + return result; } double rand_norm(void) { - return mtRand.get ().randExc (); + double result; +#pragma omp critical (mtrand) +{ + result = mtRand.get ().randExc (); +} + return result; } double rand_chance (void) { - return mtRand.get ().randExc (100.0); + double result; +#pragma omp critical (mtrand) +{ + result = mtRand.get ().randExc (100.0); +} + return result; } Tokens StrSplit(const std::string &src, const std::string &sep) |