diff --git a/crates/node-maintainer/src/maintainer.rs b/crates/node-maintainer/src/maintainer.rs index eb83c4f6..45f8b910 100644 --- a/crates/node-maintainer/src/maintainer.rs +++ b/crates/node-maintainer/src/maintainer.rs @@ -306,7 +306,7 @@ impl NodeMaintainerOptions { resolver.graph[node].root = node; let (graph, _actual_tree) = resolver.run_resolver(lockfile).await?; #[cfg(not(target_arch = "wasm32"))] - let linker = Linker::hoisted(LinkerOptions { + let linker_opts = LinkerOptions { actual_tree: _actual_tree, concurrency: self.concurrency, script_concurrency: self.script_concurrency, @@ -318,10 +318,20 @@ impl NodeMaintainerOptions { on_extract_progress: self.on_extract_progress, on_script_start: self.on_script_start, on_script_line: self.on_script_line, - }); + }; #[cfg(target_arch = "wasm32")] let linker = Linker::null(); - let nm = NodeMaintainer { graph, linker }; + let nm = NodeMaintainer { + graph, + #[cfg(target_arch = "wasm32")] + linker: Linker::null(), + #[cfg(not(target_arch = "wasm32"))] + linker: if self.hoisted { + Linker::hoisted(linker_opts) + } else { + Linker::isolated(linker_opts) + }, + }; #[cfg(debug_assertions)] nm.graph.validate()?; Ok(nm)