From 2d02e2afee94990611ef592a4cbda8eb5f1453b5 Mon Sep 17 00:00:00 2001 From: shenmo Date: Sun, 29 Mar 2026 15:23:24 +0800 Subject: [PATCH] =?UTF-8?q?fix(install-manager):=20=E5=8F=96=E6=B6=88?= =?UTF-8?q?=E5=AE=89=E8=A3=85=E6=97=B6=E5=88=A0=E9=99=A4=E4=B8=8B=E8=BD=BD?= =?UTF-8?q?=E7=9B=AE=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在取消安装任务时,增加删除下载目录的逻辑以避免残留文件 --- electron/main/backend/install-manager.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/electron/main/backend/install-manager.ts b/electron/main/backend/install-manager.ts index ddb5d7a3..e0fcc8a3 100644 --- a/electron/main/backend/install-manager.ts +++ b/electron/main/backend/install-manager.ts @@ -309,6 +309,16 @@ ipcMain.on("cancel-install", (event, id) => { task.install_process?.kill(); logger.info(`已取消任务: ${id}`); + // 删除下载目录 + if (task.downloadDir && fs.existsSync(task.downloadDir)) { + try { + fs.rmSync(task.downloadDir, { recursive: true, force: true }); + logger.info(`已删除下载目录: ${task.downloadDir}`); + } catch (err) { + logger.error(`删除下载目录失败 ${task.downloadDir}: ${err}`); + } + } + // 主动发送完成(失败)事件,close 回调会因 cancelled 标志跳过 task.webContents?.send("install-complete", { id,