diff --git a/tiny_gltf.h b/tiny_gltf.h index 2c5b98c..b68890b 100644 --- a/tiny_gltf.h +++ b/tiny_gltf.h @@ -6733,10 +6733,17 @@ bool TinyGLTF::LoadBinaryFromMemory(Model *model, std::string *err, } if ((chunk1_length % 4) != 0) { - if (err) { - (*err) = "BIN Chunk end does not aligned to a 4-byte boundary."; + if (strictness_==ParseStrictness::Permissive) { + if (warn) { + (*warn) += "BIN Chunk end is not aligned to a 4-byte boundary.\n"; + } + } + else { + if (err) { + (*err) = "BIN Chunk end is not aligned to a 4-byte boundary."; + } + return false; } - return false; } if (uint64_t(chunk1_length) + header_and_json_size > uint64_t(length)) {