From 07e5bf905400a40823b95c027b8924c7cd503862 Mon Sep 17 00:00:00 2001 From: Gary Talent Date: Wed, 30 Jul 2025 00:36:56 -0500 Subject: [PATCH] [keel] Make keel attempt to delete all existing assets when FS is changed --- src/olympic/keel/include/keel/asset.hpp | 5 ++--- src/olympic/keel/src/media.cpp | 3 +++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/olympic/keel/include/keel/asset.hpp b/src/olympic/keel/include/keel/asset.hpp index ce0272e3..1dd05489 100644 --- a/src/olympic/keel/include/keel/asset.hpp +++ b/src/olympic/keel/include/keel/asset.hpp @@ -25,12 +25,11 @@ ox::Error writeUuidHeader(ox::Writer_c auto &writer, ox::UUID const&uuid) noexce template ox::Result readAsset(ox::BufferView buff) noexcept { - std::size_t offset = 0; auto const err = readUuidHeader(buff).error; if (!err) { - offset = K1HdrSz; // the size of K1 headers + buff += K1HdrSz; // the size of K1 headers } - auto out = ox::readClaw(buff + offset); + auto out = ox::readClaw(buff); OX_RETURN_ERROR(out); OX_RETURN_ERROR(ensureValid(out.value)); return out; diff --git a/src/olympic/keel/src/media.cpp b/src/olympic/keel/src/media.cpp index 8dba38f4..24c2ccb5 100644 --- a/src/olympic/keel/src/media.cpp +++ b/src/olympic/keel/src/media.cpp @@ -261,6 +261,9 @@ namespace keel { ox::Error setRomFs(Context &ctx, ox::UPtr &&fs, DuplicateSet &duplicateSet) noexcept { ctx.rom = std::move(fs); clearUuidMap(ctx); +#ifndef OX_BARE_METAL + ctx.assetManager.gc(); +#endif return buildUuidMap(ctx, &duplicateSet); }