From c5c2bdbf507779dd782742c1abde12a0b53d0f49 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Mon, 17 Aug 2026 17:54:27 +0200 Subject: [PATCH] fix cleaning up worktree if there are no worktrees --- src/cloud.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/cloud.rs b/src/cloud.rs index 131c93d..9fdd5b2 100644 --- a/src/cloud.rs +++ b/src/cloud.rs @@ -105,7 +105,11 @@ async fn creates_worktrees_for_instance( async fn remove_worktrees_for_instance(config: &HazeConfig, id: &str) -> Result<()> { let worktree_dir = config.worktree_dir.join(id); - remove_worktree(&worktree_dir)?; + if !worktree_dir.exists() { + return Ok(()); + } + + remove_worktree(&worktree_dir).wrap_err("Failed to remove worktree for server")?; for app_dir in &config.app_directories { let Some(dir_name) = app_dir.file_name() else { @@ -115,7 +119,8 @@ async fn remove_worktrees_for_instance(config: &HazeConfig, id: &str) -> Result< continue; }; for app_worktree in app_worktrees.flatten() { - remove_worktree(app_worktree.path())?; + remove_worktree(app_worktree.path()) + .wrap_err_with(|| format!("Failed to remove worktree for {dir_name}"))?; } }