summaryrefslogtreecommitdiff
path: root/cli/program_state.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/program_state.rs')
-rw-r--r--cli/program_state.rs22
1 files changed, 11 insertions, 11 deletions
diff --git a/cli/program_state.rs b/cli/program_state.rs
index 0051e744b..50890b9e4 100644
--- a/cli/program_state.rs
+++ b/cli/program_state.rs
@@ -153,12 +153,14 @@ impl ProgramState {
self: &Arc<Self>,
specifiers: Vec<ModuleSpecifier>,
lib: TypeLib,
- runtime_permissions: Permissions,
+ root_permissions: Permissions,
+ dynamic_permissions: Permissions,
maybe_import_map: Option<ImportMap>,
) -> Result<(), AnyError> {
let handler = Arc::new(Mutex::new(FetchHandler::new(
self,
- runtime_permissions.clone(),
+ root_permissions,
+ dynamic_permissions,
)?));
let mut builder =
@@ -221,19 +223,17 @@ impl ProgramState {
self: &Arc<Self>,
specifier: ModuleSpecifier,
lib: TypeLib,
- mut runtime_permissions: Permissions,
+ root_permissions: Permissions,
+ dynamic_permissions: Permissions,
is_dynamic: bool,
maybe_import_map: Option<ImportMap>,
) -> Result<(), AnyError> {
let specifier = specifier.clone();
- // Workers are subject to the current runtime permissions. We do the
- // permission check here early to avoid "wasting" time building a module
- // graph for a module that cannot be loaded.
- if lib == TypeLib::DenoWorker || lib == TypeLib::UnstableDenoWorker {
- runtime_permissions.check_specifier(&specifier)?;
- }
- let handler =
- Arc::new(Mutex::new(FetchHandler::new(self, runtime_permissions)?));
+ let handler = Arc::new(Mutex::new(FetchHandler::new(
+ self,
+ root_permissions,
+ dynamic_permissions,
+ )?));
let mut builder =
GraphBuilder::new(handler, maybe_import_map, self.lockfile.clone());
builder.add(&specifier, is_dynamic).await?;