You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Thanks for the clear root-cause write-up and the blocker notes on #667/#731. The three landing blockers — lexical-only path containment, incomplete child-process cleanup, and concurrent launches racing on the fixed extraction dir — are exactly what make pinning an SFX extraction path hard.
Before attempting anything: would a fresh PR addressing these be welcome, or is the #731 author still iterating? If that attempt is still active I'd rather help by reviewing/testing than open a competing one.
If a new attempt is welcome, my approach would be: containment via resolved real-path checks (not lexical), a per-user lock so concurrent launches serialize on the fixed extraction dir, and child-process tree tracking so the previous extraction is fully reaped before cleanup — with the SFX config left unchanged for existing installs.
Activity
yg2224 commentedon Sep 20, 2026
我来处理这个问题。我会先在最新代码上验证 Windows 便携版的打包与任务栏图标路径行为,然后提交修复并补充验证。
yg2224 commentedon Sep 20, 2026
修复已提交 PR:#667。
变更将 Windows portable 的
unpackDirName固定为PI-Desktop-Portable,让任务栏分组和固定项使用稳定的解压路径;同时补充打包契约测试与发布文档。vastsa commentedon Sep 21, 2026
复核确认根因真实存在,当前仍未安全修复。原 PR #667 已关闭未合并;后续 PR #731 虽固定了 unpackDirName 方向,但 Windows portable/taskbar smoke 失败,且 review 已指出路径 containment 为词法检查、子进程清理不完整、固定解压目录并发冲突等 landing blockers。issue 保持开放,不合并 #731。
louisss1016 commentedon Sep 21, 2026
Thanks for the clear root-cause write-up and the blocker notes on #667/#731. The three landing blockers — lexical-only path containment, incomplete child-process cleanup, and concurrent launches racing on the fixed extraction dir — are exactly what make pinning an SFX extraction path hard.
Before attempting anything: would a fresh PR addressing these be welcome, or is the #731 author still iterating? If that attempt is still active I'd rather help by reviewing/testing than open a competing one.
If a new attempt is welcome, my approach would be: containment via resolved real-path checks (not lexical), a per-user lock so concurrent launches serialize on the fixed extraction dir, and child-process tree tracking so the previous extraction is fully reaped before cleanup — with the SFX config left unchanged for existing installs.
vastsa commentedon Sep 26, 2026
已把 #839 合并进本 issue。补充症状:部分版本需以管理员身份运行,以及任务栏显示为默认图标。根因方向一致:SFX 自解压到 %TEMP% 随机目录导致图标/固定项失效。