http_client: Fix GitHub downloads failing if the destination path exists (#51548) (cherry-pick to preview) (#51556)
zed-zippy[bot]
and
Lukas Wirth
created
Cherry-pick of #51548 to preview
----
cc
https://github.com/zed-industries/zed/pull/45428#issuecomment-4060334728
Release Notes:
- N/A *or* Added/Fixed/Improved ...
Co-authored-by: Lukas Wirth <lukas@zed.dev>
Change summary
crates/http_client/src/github_download.rs | 1 +
1 file changed, 1 insertion(+)
Detailed changes
@@ -155,6 +155,7 @@ async fn cleanup_staging_path(staging_path: &Path, asset_kind: AssetKind) {
}
async fn finalize_download(staging_path: &Path, destination_path: &Path) -> Result<()> {
+ _ = async_fs::remove_dir_all(destination_path).await;
async_fs::rename(staging_path, destination_path)
.await
.with_context(|| format!("renaming {staging_path:?} to {destination_path:?}"))?;