diff --git a/README.md b/README.md
index 7721f28..6ed9510 100644
--- a/README.md
+++ b/README.md
@@ -93,7 +93,7 @@ All character types are stored in ASCII where the smallest byte corresponds to t
| `0...3` | *signature*
`PODX` |
| `4...7` | *endianness*
`LITE` little endian
`BIGE` big endian |
| `8...11` | *checksum*
`NONE` no checksum
`AD32` adler32
`CR32` crc32 |
-| `12...15` | *reserved* |
+| `12...15` | *reserved*
`NONE` |
#### BODY
| byte(s) | value(s)
diff --git a/src/PxLoadFile.cpp b/src/PxLoadFile.cpp
index 7e91c65..f60c040 100644
--- a/src/PxLoadFile.cpp
+++ b/src/PxLoadFile.cpp
@@ -299,6 +299,13 @@ PxResult pxLoadFile(PxContainer* container, const char* fileName, PxChecksum che
{
return PS_FILE_CORRUPT;
}
+
+ // Reserved
+ if (memcmp(header + 12, cNONE, 4) != 0)
+ {
+ return PS_FILE_CORRUPT;
+ }
+
// Calculate checksum
diff --git a/src/PxSaveFile.cpp b/src/PxSaveFile.cpp
index 1baf679..f7cca4e 100644
--- a/src/PxSaveFile.cpp
+++ b/src/PxSaveFile.cpp
@@ -177,8 +177,8 @@ PxResult pxSaveFile(PxContainer* container, const char* fileName, PxCompression
return PS_ARGUMENT_ERROR;
}
- // Padding
- memset(header + 12, 0, 4);
+ // Reserved Bytes
+ memcpy(header + 12, cNONE, 4);
file.write(header, 16);