diff options
| author | 2019-04-10 12:35:42 -0400 | |
|---|---|---|
| committer | 2019-09-21 16:43:10 -0400 | |
| commit | 0a8e54068191c911806c7b825e4050afd65a794c (patch) | |
| tree | 01a03fc4c1d010d18f45b31aa5e2e3a5f4a520f8 /src/core/file_sys | |
| parent | sdmc_factory: Add accessor for SDMC Album directory (diff) | |
| download | yuzu-0a8e54068191c911806c7b825e4050afd65a794c.tar.gz yuzu-0a8e54068191c911806c7b825e4050afd65a794c.tar.xz yuzu-0a8e54068191c911806c7b825e4050afd65a794c.zip | |
submisson_package: Fix edge case with improperly sized filenames
Prevents a crash if the filename is less than 9 characters long.
Diffstat (limited to 'src/core/file_sys')
| -rw-r--r-- | src/core/file_sys/submission_package.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/core/file_sys/submission_package.cpp b/src/core/file_sys/submission_package.cpp index 730221fd6..ef3084681 100644 --- a/src/core/file_sys/submission_package.cpp +++ b/src/core/file_sys/submission_package.cpp | |||
| @@ -248,7 +248,8 @@ void NSP::InitializeExeFSAndRomFS(const std::vector<VirtualFile>& files) { | |||
| 248 | 248 | ||
| 249 | void NSP::ReadNCAs(const std::vector<VirtualFile>& files) { | 249 | void NSP::ReadNCAs(const std::vector<VirtualFile>& files) { |
| 250 | for (const auto& outer_file : files) { | 250 | for (const auto& outer_file : files) { |
| 251 | if (outer_file->GetName().substr(outer_file->GetName().size() - 9) != ".cnmt.nca") { | 251 | if (outer_file->GetName().size() < 9 || |
| 252 | outer_file->GetName().substr(outer_file->GetName().size() - 9) != ".cnmt.nca") { | ||
| 252 | continue; | 253 | continue; |
| 253 | } | 254 | } |
| 254 | 255 | ||