summaryrefslogtreecommitdiff
path: root/cli/ops/random.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/ops/random.rs')
-rw-r--r--cli/ops/random.rs7
1 files changed, 4 insertions, 3 deletions
diff --git a/cli/ops/random.rs b/cli/ops/random.rs
index 2458bc453..84e38d105 100644
--- a/cli/ops/random.rs
+++ b/cli/ops/random.rs
@@ -3,6 +3,7 @@
use deno_core::error::AnyError;
use deno_core::OpState;
use deno_core::ZeroCopyBuf;
+use rand::rngs::StdRng;
use rand::thread_rng;
use rand::Rng;
use serde_json::Value;
@@ -17,9 +18,9 @@ fn op_get_random_values(
zero_copy: &mut [ZeroCopyBuf],
) -> Result<Value, AnyError> {
assert_eq!(zero_copy.len(), 1);
- let cli_state = super::cli_state(state);
- if let Some(seeded_rng) = &cli_state.seeded_rng {
- seeded_rng.borrow_mut().fill(&mut *zero_copy[0]);
+ let maybe_seeded_rng = state.try_borrow_mut::<StdRng>();
+ if let Some(seeded_rng) = maybe_seeded_rng {
+ seeded_rng.fill(&mut *zero_copy[0]);
} else {
let mut rng = thread_rng();
rng.fill(&mut *zero_copy[0]);