diff options
Diffstat (limited to 'src/core/file_sys')
| -rw-r--r-- | src/core/file_sys/patch_manager.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/core/file_sys/patch_manager.cpp b/src/core/file_sys/patch_manager.cpp index 2b09e5d35..efc572c72 100644 --- a/src/core/file_sys/patch_manager.cpp +++ b/src/core/file_sys/patch_manager.cpp | |||
| @@ -163,8 +163,9 @@ std::vector<VirtualFile> PatchManager::CollectPatches(const std::vector<VirtualD | |||
| 163 | } | 163 | } |
| 164 | 164 | ||
| 165 | std::vector<u8> PatchManager::PatchNSO(const std::vector<u8>& nso) const { | 165 | std::vector<u8> PatchManager::PatchNSO(const std::vector<u8>& nso) const { |
| 166 | if (nso.size() < 0x100) | 166 | if (nso.size() < sizeof(NSOBuildHeader)) { |
| 167 | return nso; | 167 | return nso; |
| 168 | } | ||
| 168 | 169 | ||
| 169 | NSOBuildHeader header; | 170 | NSOBuildHeader header; |
| 170 | std::memcpy(&header, nso.data(), sizeof(NSOBuildHeader)); | 171 | std::memcpy(&header, nso.data(), sizeof(NSOBuildHeader)); |
| @@ -213,8 +214,10 @@ std::vector<u8> PatchManager::PatchNSO(const std::vector<u8>& nso) const { | |||
| 213 | } | 214 | } |
| 214 | } | 215 | } |
| 215 | 216 | ||
| 216 | if (out.size() < 0x100) | 217 | if (out.size() < sizeof(NSOBuildHeader)) { |
| 217 | return nso; | 218 | return nso; |
| 219 | } | ||
| 220 | |||
| 218 | std::memcpy(out.data(), &header, sizeof(NSOBuildHeader)); | 221 | std::memcpy(out.data(), &header, sizeof(NSOBuildHeader)); |
| 219 | return out; | 222 | return out; |
| 220 | } | 223 | } |