aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/math/big/prime.odin12
1 files changed, 8 insertions, 4 deletions
diff --git a/core/math/big/prime.odin b/core/math/big/prime.odin
index 8403d5315..110c10239 100644
--- a/core/math/big/prime.odin
+++ b/core/math/big/prime.odin
@@ -1250,7 +1250,10 @@ internal_random_prime :: proc(a: ^Int, size_in_bits: int, trials: int, flags :=
/*
Is it prime?
*/
- internal_int_is_prime(a, trials) or_return or_continue
+ res := internal_int_is_prime(a, trials) or_return
+ if !res {
+ continue
+ }
if .Safe in flags {
/*
@@ -1262,9 +1265,10 @@ internal_random_prime :: proc(a: ^Int, size_in_bits: int, trials: int, flags :=
/*
Is it prime?
*/
- if internal_int_is_prime(a, trials) or_return {
- break
- }
+ res = internal_int_is_prime(a, trials) or_return
+ }
+ if res {
+ break
}
}