From 66e74c58a724d05d6bd61672e0fc9bde3f636063 Mon Sep 17 00:00:00 2001 From: Kiyooru Date: Sat, 15 Aug 2026 16:28:18 +0200 Subject: [PATCH] Accept extended GC 4.75 stage catalogs --- src/StageCatalog.cpp | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/src/StageCatalog.cpp b/src/StageCatalog.cpp index 0637c21..fad0033 100644 --- a/src/StageCatalog.cpp +++ b/src/StageCatalog.cpp @@ -115,16 +115,9 @@ bool ParseStageCatalog(const std::vector& bytes, entries->push_back(std::move(entry)); } - if (r.tell() != bytes.size()) { - if (error) { - std::ostringstream message; - message << "stage_param.dat has " << (bytes.size() - r.tell()) - << " trailing bytes after " << count << " records"; - *error = message.str(); - } - entries->clear(); - return false; - } + // game471's loader trusts the leading count and stops after that many + // records. GC 4.75 appends a version-specific metadata block, so requiring + // EOF here rejects a catalog whose complete declared record array is valid. return true; }