From 6ad71bd7a93aa7c2a3b6493d780e9eee67025dc6 Mon Sep 17 00:00:00 2001 From: Jan Laupetin Date: Fri, 9 Jan 2026 21:02:24 +0000 Subject: [PATCH] fix: writing bad zone sizes with x64 hosts --- src/ZoneLoading/Loading/Steps/StepAllocXBlocks.cpp | 4 ++-- src/ZoneWriting/Writing/Steps/StepWriteZoneSizes.cpp | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/ZoneLoading/Loading/Steps/StepAllocXBlocks.cpp b/src/ZoneLoading/Loading/Steps/StepAllocXBlocks.cpp index 7e75ceca..d2111d04 100644 --- a/src/ZoneLoading/Loading/Steps/StepAllocXBlocks.cpp +++ b/src/ZoneLoading/Loading/Steps/StepAllocXBlocks.cpp @@ -13,8 +13,8 @@ namespace { const auto blockCount = static_cast(zoneLoader.m_blocks.size()); - const auto blockSizes = std::make_unique(blockCount); - stream.Load(blockSizes.get(), sizeof(xblock_size_t) * blockCount); + std::vector blockSizes(blockCount); + stream.Load(blockSizes.data(), sizeof(xblock_size_t) * blockCount); uint64_t totalMemory = 0; for (unsigned int block = 0; block < blockCount; block++) diff --git a/src/ZoneWriting/Writing/Steps/StepWriteZoneSizes.cpp b/src/ZoneWriting/Writing/Steps/StepWriteZoneSizes.cpp index 282159a8..349be0e7 100644 --- a/src/ZoneWriting/Writing/Steps/StepWriteZoneSizes.cpp +++ b/src/ZoneWriting/Writing/Steps/StepWriteZoneSizes.cpp @@ -1,5 +1,7 @@ #include "StepWriteZoneSizes.h" +#include + StepWriteZoneSizes::StepWriteZoneSizes(StepWriteZoneContentToMemory* memory) : m_memory(memory) { @@ -7,8 +9,8 @@ StepWriteZoneSizes::StepWriteZoneSizes(StepWriteZoneContentToMemory* memory) void StepWriteZoneSizes::PerformStep(ZoneWriter* zoneWriter, IWritingStream* stream) { - auto totalSize = static_cast(m_memory->GetData()->m_total_size); - size_t externalSize = 0; + const auto totalSize = static_cast(m_memory->GetData()->m_total_size); + constexpr uint32_t externalSize = 0; stream->Write(&totalSize, sizeof(totalSize)); stream->Write(&externalSize, sizeof(externalSize));