summaryrefslogtreecommitdiff
path: root/cli/ops/runtime_compiler.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/ops/runtime_compiler.rs')
-rw-r--r--cli/ops/runtime_compiler.rs11
1 files changed, 6 insertions, 5 deletions
diff --git a/cli/ops/runtime_compiler.rs b/cli/ops/runtime_compiler.rs
index ec9806e60..bb3e47226 100644
--- a/cli/ops/runtime_compiler.rs
+++ b/cli/ops/runtime_compiler.rs
@@ -11,8 +11,6 @@ use crate::specifier_handler::FetchHandler;
use crate::specifier_handler::MemoryHandler;
use crate::specifier_handler::SpecifierHandler;
use crate::tsc_config;
-use deno_runtime::permissions::Permissions;
-use std::sync::Arc;
use deno_core::error::AnyError;
use deno_core::error::Context;
@@ -23,10 +21,13 @@ use deno_core::serde_json::Value;
use deno_core::BufVec;
use deno_core::ModuleSpecifier;
use deno_core::OpState;
+use deno_runtime::permissions::Permissions;
use serde::Deserialize;
use std::cell::RefCell;
use std::collections::HashMap;
use std::rc::Rc;
+use std::sync::Arc;
+use std::sync::Mutex;
pub fn init(rt: &mut deno_core::JsRuntime) {
super::reg_json_async(rt, "op_compile", op_compile);
@@ -58,11 +59,11 @@ async fn op_compile(
let state = state.borrow();
state.borrow::<Permissions>().clone()
};
- let handler: Rc<RefCell<dyn SpecifierHandler>> =
+ let handler: Arc<Mutex<dyn SpecifierHandler>> =
if let Some(sources) = args.sources {
- Rc::new(RefCell::new(MemoryHandler::new(sources)))
+ Arc::new(Mutex::new(MemoryHandler::new(sources)))
} else {
- Rc::new(RefCell::new(FetchHandler::new(
+ Arc::new(Mutex::new(FetchHandler::new(
&program_state,
runtime_permissions,
)?))