From 812f7e1f916051ca19db0708c85ab1ccf34791f7 Mon Sep 17 00:00:00 2001 From: GoastcraftHD Date: Fri, 11 Apr 2025 22:57:09 +0200 Subject: [PATCH] Fixed Precision Issue --- src/ObjWriting/XModel/Export/XModelBinWriter.cpp | 6 +++--- src/Utils/Utils/MemoryWriter.cpp | 8 ++++---- src/Utils/Utils/MemoryWriter.h | 12 ++++++------ 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/ObjWriting/XModel/Export/XModelBinWriter.cpp b/src/ObjWriting/XModel/Export/XModelBinWriter.cpp index d9a7ea0a..6bb87ea3 100644 --- a/src/ObjWriting/XModel/Export/XModelBinWriter.cpp +++ b/src/ObjWriting/XModel/Export/XModelBinWriter.cpp @@ -445,11 +445,11 @@ public: uint64_t uncompressedSize = m_writer.GetPosition(); char uncompressedSizeChar[4]; - std::memcpy(uncompressedSizeChar, &uncompressedSize, 4); + std::memcpy(uncompressedSizeChar, &uncompressedSize, sizeof(uncompressedSizeChar)); const char magic[5] = {0x2A, 0x4C, 0x5A, 0x34, 0x2A}; - m_stream.write(magic, 5); - m_stream.write(uncompressedSizeChar, 4); + m_stream.write(magic, sizeof(magic)); + m_stream.write(uncompressedSizeChar, sizeof(uncompressedSizeChar)); m_stream.write(compressedBuffer, actualCompressedFileSize); } }; diff --git a/src/Utils/Utils/MemoryWriter.cpp b/src/Utils/Utils/MemoryWriter.cpp index 68b2e326..efdb833a 100644 --- a/src/Utils/Utils/MemoryWriter.cpp +++ b/src/Utils/Utils/MemoryWriter.cpp @@ -15,12 +15,12 @@ MemoryWriter::~MemoryWriter() Close(); } -uint64_t MemoryWriter::GetLength() const +size_t MemoryWriter::GetLength() const { return m_dataLength; } -uint64_t MemoryWriter::GetPosition() const +size_t MemoryWriter::GetPosition() const { return m_currentPosition; } @@ -52,7 +52,7 @@ void MemoryWriter::WriteNullTerminatedString(const std::string& string) Write(reinterpret_cast(string.c_str()), string.size() + 1); } -void MemoryWriter::Reallocate(uint64_t capacity) +void MemoryWriter::Reallocate(size_t capacity) { auto tempPtr = static_cast(std::realloc(m_dataPointer, capacity)); @@ -63,7 +63,7 @@ void MemoryWriter::Reallocate(uint64_t capacity) } } -void MemoryWriter::ValidateCapacity(uint64_t newSize) +void MemoryWriter::ValidateCapacity(size_t newSize) { if (newSize > m_dataLength) { diff --git a/src/Utils/Utils/MemoryWriter.h b/src/Utils/Utils/MemoryWriter.h index 960bbdd4..979c6920 100644 --- a/src/Utils/Utils/MemoryWriter.h +++ b/src/Utils/Utils/MemoryWriter.h @@ -9,8 +9,8 @@ public: MemoryWriter(uint32_t capacity); ~MemoryWriter(); - uint64_t GetLength() const; - uint64_t GetPosition() const; + size_t GetLength() const; + size_t GetPosition() const; int8_t* Data() const; void Close(); @@ -23,11 +23,11 @@ public: } private: - void Reallocate(uint64_t capacity); - void ValidateCapacity(uint64_t size); + void Reallocate(size_t capacity); + void ValidateCapacity(size_t size); private: int8_t* m_dataPointer; - uint64_t m_dataLength; - uint64_t m_currentPosition; + size_t m_dataLength; + size_t m_currentPosition; };