summaryrefslogtreecommitdiff
path: root/cli/ops/runtime_compiler.rs
diff options
context:
space:
mode:
authorRyan Dahl <ry@tinyclouds.org>2021-11-03 09:27:36 -0400
committerGitHub <noreply@github.com>2021-11-03 09:27:36 -0400
commit7c2abb9d579d13fa61339c24f8c39bc3c27c25db (patch)
treec3ce3cefff867dd3f073eda18ebed53f728e4675 /cli/ops/runtime_compiler.rs
parent95b2955712b0daae3c8e8f7bb0eccf341b5c8fa3 (diff)
fix: Deno.emit crashes with BorrowMutError (#12627)
Warn on await_holding_refcell_ref clippy rule to avoid this in the future. Fixes #12453
Diffstat (limited to 'cli/ops/runtime_compiler.rs')
-rw-r--r--cli/ops/runtime_compiler.rs12
1 files changed, 9 insertions, 3 deletions
diff --git a/cli/ops/runtime_compiler.rs b/cli/ops/runtime_compiler.rs
index ab6992d19..8f7a75146 100644
--- a/cli/ops/runtime_compiler.rs
+++ b/cli/ops/runtime_compiler.rs
@@ -88,9 +88,15 @@ async fn op_emit(
) -> Result<EmitResult, AnyError> {
deno_runtime::ops::check_unstable2(&state, "Deno.emit");
let root_specifier = args.root_specifier;
- let state = state.borrow();
- let ps = state.borrow::<ProcState>();
- let mut runtime_permissions = { state.borrow::<Permissions>().clone() };
+ let ps = {
+ let state = state.borrow();
+ state.borrow::<ProcState>().clone()
+ };
+ let mut runtime_permissions = {
+ let state = state.borrow();
+ state.borrow::<Permissions>().clone()
+ };
+
let mut cache: Box<dyn cache::CacherLoader> =
if let Some(sources) = &args.sources {
Box::new(cache::MemoryCacher::new(sources.clone()))