From 76b18a6ba9a33f5a93022390be7ed805f9f722e8 Mon Sep 17 00:00:00 2001 From: cosmonaut Date: Tue, 23 Jul 2024 17:03:29 -0700 Subject: [PATCH] fix infinite loop if using EntitiesInRandomOrder with filter count 1 --- src/RandomManager.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/RandomManager.cs b/src/RandomManager.cs index dafd5fb..dcccb94 100644 --- a/src/RandomManager.cs +++ b/src/RandomManager.cs @@ -26,10 +26,14 @@ public static class RandomManager /// internal static LinearCongruentialEnumerator LinearCongruentialSequence(int n) { + // special cases! if (n == 0) { - // bail out, empty enumerator - return new LinearCongruentialEnumerator(0, 0, 0); + return new LinearCongruentialEnumerator(0, 1, 0); + } + else if (n == 1) + { + return new LinearCongruentialEnumerator(0, 2, 1); } var x = Primes[Random.Next(Primes.Length - 1)];