From 8d2e2fa0aad3bf0884a89e58c667aa2d3191f2ec Mon Sep 17 00:00:00 2001 From: Zaldaryon <273555259+Zaldaryon@users.noreply.github.com> Date: Thu, 17 Sep 2026 13:55:07 -0300 Subject: [PATCH] fix: create runtime-donor snapshot whenever manifest is missing When the installer reused an existing vanilla directory (the common case on reinstall and upgrade), freshExtract was false and skipDownload was false, so the snapshot-creation branch was never entered. Only a warning was emitted. prepare-runtime-donors.ps1 then threw 'Required runtime-donor input not found: runtime-donor-manifest.sha256' because the snapshot had never been written. Remove the skipDownload guard so the snapshot is created whenever the manifest is absent, regardless of how the vanilla directory was obtained. --- scripts/bootstrap.ps1 | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/scripts/bootstrap.ps1 b/scripts/bootstrap.ps1 index 46c0797..9d46187 100644 --- a/scripts/bootstrap.ps1 +++ b/scripts/bootstrap.ps1 @@ -750,10 +750,8 @@ try { throw "Vanilla client files are corrupt ($($corrupt.Count) empty/truncated file(s)):`n $names`nIf $winVanillaDir is Optimum's own cache, delete it and retry; if it points at your Vintage Story install, repair or reinstall Vintage Story $Version first." } - if ($freshExtract -or ($skipDownload -and -not (Test-Path (Join-Path $runtimeDonorDir 'runtime-donor-manifest.sha256')))) { + if ($freshExtract -or -not (Test-Path (Join-Path $runtimeDonorDir 'runtime-donor-manifest.sha256'))) { New-RuntimeDonorSnapshot $winVanillaDir $runtimeDonorDir - } elseif (-not (Test-Path (Join-Path $runtimeDonorDir 'runtime-donor-manifest.sha256'))) { - Write-Warning 'Protected runtime-donor snapshot is missing. Run bootstrap.ps1 -Refresh before check-patches.ps1.' } # --- 2. Decompile closed-source DLLs ---