From 6c5905dbc354ae701f06c734608af834a0ba844c Mon Sep 17 00:00:00 2001 From: Divy Srivastava Date: Sat, 20 Jul 2024 18:05:35 -0700 Subject: fix: CFunctionInfo and CTypeInfo leaks (#24634) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Trying out the deno_core patch Ref https://github.com/denoland/deno_core/pull/832 Closes https://github.com/denoland/deno/issues/24575 --------- Co-authored-by: Bartek IwaƄczuk --- cli/module_loader.rs | 10 ++-------- cli/standalone/mod.rs | 2 -- cli/worker.rs | 21 ++++++--------------- 3 files changed, 8 insertions(+), 25 deletions(-) (limited to 'cli') diff --git a/cli/module_loader.rs b/cli/module_loader.rs index 5156e98e3..56e103d1b 100644 --- a/cli/module_loader.rs +++ b/cli/module_loader.rs @@ -55,7 +55,6 @@ use deno_core::ModuleType; use deno_core::RequestedModuleType; use deno_core::ResolutionKind; use deno_core::SourceCodeCacheInfo; -use deno_core::SourceMapGetter; use deno_graph::source::ResolutionMode; use deno_graph::source::Resolver; use deno_graph::GraphKind; @@ -293,8 +292,7 @@ impl CliModuleLoaderFactory { shared: self.shared.clone(), }))); ModuleLoaderAndSourceMapGetter { - module_loader: loader.clone(), - source_map_getter: Some(loader), + module_loader: loader, } } } @@ -828,11 +826,7 @@ impl ModuleLoader } std::future::ready(()).boxed_local() } -} -impl SourceMapGetter - for CliModuleLoader -{ fn get_source_map(&self, file_name: &str) -> Option> { let specifier = resolve_url(file_name).ok()?; match specifier.scheme() { @@ -845,7 +839,7 @@ impl SourceMapGetter source_map_from_code(source.code.as_bytes()) } - fn get_source_line( + fn get_source_mapped_source_line( &self, file_name: &str, line_number: usize, diff --git a/cli/standalone/mod.rs b/cli/standalone/mod.rs index e0c8e66ff..8701c0ad5 100644 --- a/cli/standalone/mod.rs +++ b/cli/standalone/mod.rs @@ -385,7 +385,6 @@ impl ModuleLoaderFactory for StandaloneModuleLoaderFactory { root_permissions, dynamic_permissions, }), - source_map_getter: None, } } @@ -400,7 +399,6 @@ impl ModuleLoaderFactory for StandaloneModuleLoaderFactory { root_permissions, dynamic_permissions, }), - source_map_getter: None, } } } diff --git a/cli/worker.rs b/cli/worker.rs index 36435d634..a639dae41 100644 --- a/cli/worker.rs +++ b/cli/worker.rs @@ -18,7 +18,6 @@ use deno_core::ModuleId; use deno_core::ModuleLoader; use deno_core::PollEventLoopOptions; use deno_core::SharedArrayBufferStore; -use deno_core::SourceMapGetter; use deno_runtime::code_cache; use deno_runtime::deno_broadcast_channel::InMemoryBroadcastChannel; use deno_runtime::deno_fs; @@ -55,7 +54,6 @@ use crate::version; pub struct ModuleLoaderAndSourceMapGetter { pub module_loader: Rc, - pub source_map_getter: Option>, } pub trait ModuleLoaderFactory: Send + Sync { @@ -516,10 +514,7 @@ impl CliMainWorkerFactory { (main_module, false) }; - let ModuleLoaderAndSourceMapGetter { - module_loader, - source_map_getter, - } = shared + let ModuleLoaderAndSourceMapGetter { module_loader } = shared .module_loader_factory .create_for_main(PermissionsContainer::allow_all(), permissions.clone()); let maybe_inspector_server = shared.maybe_inspector_server.clone(); @@ -596,7 +591,6 @@ impl CliMainWorkerFactory { .clone(), root_cert_store_provider: Some(shared.root_cert_store_provider.clone()), seed: shared.options.seed, - source_map_getter, format_js_error_fn: Some(Arc::new(format_js_error)), create_web_worker_cb, maybe_inspector_server, @@ -730,13 +724,11 @@ fn create_web_worker_callback( Arc::new(move |args| { let maybe_inspector_server = shared.maybe_inspector_server.clone(); - let ModuleLoaderAndSourceMapGetter { - module_loader, - source_map_getter, - } = shared.module_loader_factory.create_for_worker( - args.parent_permissions.clone(), - args.permissions.clone(), - ); + let ModuleLoaderAndSourceMapGetter { module_loader } = + shared.module_loader_factory.create_for_worker( + args.parent_permissions.clone(), + args.permissions.clone(), + ); let create_web_worker_cb = create_web_worker_callback(mode, shared.clone(), stdio.clone()); @@ -802,7 +794,6 @@ fn create_web_worker_callback( seed: shared.options.seed, create_web_worker_cb, format_js_error_fn: Some(Arc::new(format_js_error)), - source_map_getter, module_loader, fs: shared.fs.clone(), node_resolver: Some(shared.node_resolver.clone()), -- cgit v1.2.3