Fix aligned memory read of unanligend memory

This commit is contained in:
Björn Gaier
2023-02-03 18:10:57 +01:00
parent 5756a60eed
commit b7eb02ce8e
2 changed files with 13 additions and 1 deletions

View File

@@ -1,4 +1,5 @@
#include <PSX/Auxiliary/lz4_decompressor.hpp>
#include <PSX/Auxiliary/unaligned_read.hpp>
namespace JabyEngine {
static void memcpy(uint8_t* &dst, ArrayRange<const uint8_t> &src, size_t size) {
@@ -94,7 +95,7 @@ namespace JabyEngine {
// We are unused and invalid
if(data.size >= sizeof(uint16_t)) {
// We can read all
this->state.match_offset = *reinterpret_cast<const uint16_t*>(data.start);
this->state.match_offset = unaligned_lhu(data.start);
data.skip(sizeof(uint16_t));
if(!state_complete(this->state)) {