mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2026-01-13 12:11:50 +00:00
fix: writing bad zone sizes with x64 hosts
This commit is contained in:
@@ -13,8 +13,8 @@ namespace
|
|||||||
{
|
{
|
||||||
const auto blockCount = static_cast<unsigned>(zoneLoader.m_blocks.size());
|
const auto blockCount = static_cast<unsigned>(zoneLoader.m_blocks.size());
|
||||||
|
|
||||||
const auto blockSizes = std::make_unique<xblock_size_t[]>(blockCount);
|
std::vector<xblock_size_t> blockSizes(blockCount);
|
||||||
stream.Load(blockSizes.get(), sizeof(xblock_size_t) * blockCount);
|
stream.Load(blockSizes.data(), sizeof(xblock_size_t) * blockCount);
|
||||||
|
|
||||||
uint64_t totalMemory = 0;
|
uint64_t totalMemory = 0;
|
||||||
for (unsigned int block = 0; block < blockCount; block++)
|
for (unsigned int block = 0; block < blockCount; block++)
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
#include "StepWriteZoneSizes.h"
|
#include "StepWriteZoneSizes.h"
|
||||||
|
|
||||||
|
#include <cstdint>
|
||||||
|
|
||||||
StepWriteZoneSizes::StepWriteZoneSizes(StepWriteZoneContentToMemory* memory)
|
StepWriteZoneSizes::StepWriteZoneSizes(StepWriteZoneContentToMemory* memory)
|
||||||
: m_memory(memory)
|
: m_memory(memory)
|
||||||
{
|
{
|
||||||
@@ -7,8 +9,8 @@ StepWriteZoneSizes::StepWriteZoneSizes(StepWriteZoneContentToMemory* memory)
|
|||||||
|
|
||||||
void StepWriteZoneSizes::PerformStep(ZoneWriter* zoneWriter, IWritingStream* stream)
|
void StepWriteZoneSizes::PerformStep(ZoneWriter* zoneWriter, IWritingStream* stream)
|
||||||
{
|
{
|
||||||
auto totalSize = static_cast<size_t>(m_memory->GetData()->m_total_size);
|
const auto totalSize = static_cast<uint32_t>(m_memory->GetData()->m_total_size);
|
||||||
size_t externalSize = 0;
|
constexpr uint32_t externalSize = 0;
|
||||||
|
|
||||||
stream->Write(&totalSize, sizeof(totalSize));
|
stream->Write(&totalSize, sizeof(totalSize));
|
||||||
stream->Write(&externalSize, sizeof(externalSize));
|
stream->Write(&externalSize, sizeof(externalSize));
|
||||||
|
|||||||
Reference in New Issue
Block a user