commit - 2ad902c0cee1b56de28385c8f1cd6c2d70131a82
commit + fdcb7dafaba4486c7faede6ba199e2024b269b1f
blob - dfe5cb16a9227740ff262c42a6f06f174256bc7a
blob + a8f682710c80855da6d8bcaa9a34b34ede492b9f
--- lib/worktree.c
+++ lib/worktree.c
if (rename(merged_path, ondisk_path) != 0) {
err = got_error_from_errno3("rename", merged_path,
ondisk_path);
- unlink(merged_path);
goto done;
}
-
done:
+ if (err) {
+ if (merged_path)
+ unlink(merged_path);
+ }
if (merged_fd != -1 && close(merged_fd) != 0 && err == NULL)
err = got_error_from_errno("close");
if (f_orig && fclose(f_orig) != 0 && err == NULL)