From 5b11025288e98315d1dc77e2e8cc9b3ee5944876 Mon Sep 17 00:00:00 2001 From: Smit Barmase Date: Mon, 21 Jul 2025 14:07:39 +0530 Subject: [PATCH] fix panic caused by remove_dir_all_recursive --- extensions/glsl/src/glsl.rs | 5 +++-- extensions/ruff/src/ruff.rs | 5 +++-- extensions/snippets/src/snippets.rs | 5 +++-- extensions/test-extension/src/test_extension.rs | 5 +++-- extensions/toml/src/toml.rs | 5 +++-- 5 files changed, 15 insertions(+), 10 deletions(-) diff --git a/extensions/glsl/src/glsl.rs b/extensions/glsl/src/glsl.rs index a42403ebefeff89b749d5091e84ceea2528aba79..15417f7de42f94ac481537eb0cae1596128c7730 100644 --- a/extensions/glsl/src/glsl.rs +++ b/extensions/glsl/src/glsl.rs @@ -78,8 +78,9 @@ impl GlslExtension { zed::make_file_executable(&binary_path)?; - let entries = - fs::read_dir(".").map_err(|e| format!("failed to list working directory {e}"))?; + let entries: Vec<_> = fs::read_dir(".") + .map_err(|e| format!("failed to list working directory {e}"))? + .collect(); for entry in entries { let entry = entry.map_err(|e| format!("failed to load directory entry {e}"))?; if entry.file_name().to_str() != Some(&version_dir) { diff --git a/extensions/ruff/src/ruff.rs b/extensions/ruff/src/ruff.rs index da9b6c0bf1a03cd69f0e29f2a7b2282c30149fe5..5d516a47d973144f353329a0d8aff1c1d41110ed 100644 --- a/extensions/ruff/src/ruff.rs +++ b/extensions/ruff/src/ruff.rs @@ -106,8 +106,9 @@ impl RuffExtension { zed::download_file(&asset.download_url, &version_dir, file_kind) .map_err(|e| format!("failed to download file: {e}"))?; - let entries = - fs::read_dir(".").map_err(|e| format!("failed to list working directory {e}"))?; + let entries: Vec<_> = fs::read_dir(".") + .map_err(|e| format!("failed to list working directory {e}"))? + .collect(); for entry in entries { let entry = entry.map_err(|e| format!("failed to load directory entry {e}"))?; if entry.file_name().to_str() != Some(&version_dir) { diff --git a/extensions/snippets/src/snippets.rs b/extensions/snippets/src/snippets.rs index 46ba7469301699d423ecd5ef35dbf015901b2bfe..3629246bebc60a915ea65ae7534bc6608bdb24b9 100644 --- a/extensions/snippets/src/snippets.rs +++ b/extensions/snippets/src/snippets.rs @@ -72,8 +72,9 @@ impl SnippetExtension { ) .map_err(|e| format!("failed to download file: {e}"))?; - let entries = - fs::read_dir(".").map_err(|e| format!("failed to list working directory {e}"))?; + let entries: Vec<_> = fs::read_dir(".") + .map_err(|e| format!("failed to list working directory {e}"))? + .collect(); for entry in entries { let entry = entry.map_err(|e| format!("failed to load directory entry {e}"))?; if entry.file_name().to_str() != Some(&version_dir) { diff --git a/extensions/test-extension/src/test_extension.rs b/extensions/test-extension/src/test_extension.rs index 5b6a3f920a136362edcfdd5488ae2dc17341aa47..34b34891894d99b06819d84a5bd800084f86c56f 100644 --- a/extensions/test-extension/src/test_extension.rs +++ b/extensions/test-extension/src/test_extension.rs @@ -74,8 +74,9 @@ impl TestExtension { ) .map_err(|e| format!("failed to download file: {e}"))?; - let entries = - fs::read_dir(".").map_err(|e| format!("failed to list working directory {e}"))?; + let entries: Vec<_> = fs::read_dir(".") + .map_err(|e| format!("failed to list working directory {e}"))? + .collect(); for entry in entries { let entry = entry.map_err(|e| format!("failed to load directory entry {e}"))?; if entry.file_name().to_str() != Some(&version_dir) { diff --git a/extensions/toml/src/toml.rs b/extensions/toml/src/toml.rs index 20f27b6d97ee2793d00152aacc37997be6f404a9..2b319c3104c53340cd3ab9e431048bc036cd94f0 100644 --- a/extensions/toml/src/toml.rs +++ b/extensions/toml/src/toml.rs @@ -108,8 +108,9 @@ impl TomlExtension { zed::make_file_executable(&binary_path)?; - let entries = fs::read_dir(".") - .map_err(|err| format!("failed to list working directory {err}"))?; + let entries: Vec<_> = fs::read_dir(".") + .map_err(|err| format!("failed to list working directory {err}"))? + .collect(); for entry in entries { let entry = entry.map_err(|err| format!("failed to load directory entry {err}"))?; if entry.file_name().to_str() != Some(&version_dir) {