fix panic caused by remove_dir_all_recursive

Smit Barmase created

Change summary

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(-)

Detailed changes

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) {

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) {

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) {

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) {

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) {