diff options
| author | 2020-01-12 16:51:07 +0100 | |
|---|---|---|
| committer | 2020-01-18 08:29:19 +0100 | |
| commit | 7e94e544f40ee8fc58fdea7c71fe48d8edd6fcb6 (patch) | |
| tree | d98500be6d85b3b32653180ba9021464403e400f /src/core/loader/kip.cpp | |
| parent | Merge pull request #3305 from ReinUsesLisp/point-size-program (diff) | |
| download | yuzu-7e94e544f40ee8fc58fdea7c71fe48d8edd6fcb6.tar.gz yuzu-7e94e544f40ee8fc58fdea7c71fe48d8edd6fcb6.tar.xz yuzu-7e94e544f40ee8fc58fdea7c71fe48d8edd6fcb6.zip | |
core/loaders: Simplify PhysicalMemory usage.
It is currently a std::vector, however we might want to replace it with a more fancy allocator.
So we can't use the C++ iterators any more.
Diffstat (limited to 'src/core/loader/kip.cpp')
| -rw-r--r-- | src/core/loader/kip.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/core/loader/kip.cpp b/src/core/loader/kip.cpp index 474b55cb1..092103abe 100644 --- a/src/core/loader/kip.cpp +++ b/src/core/loader/kip.cpp | |||
| @@ -2,6 +2,7 @@ | |||
| 2 | // Licensed under GPLv2 or any later version | 2 | // Licensed under GPLv2 or any later version |
| 3 | // Refer to the license.txt file included. | 3 | // Refer to the license.txt file included. |
| 4 | 4 | ||
| 5 | #include <cstring> | ||
| 5 | #include "core/file_sys/kernel_executable.h" | 6 | #include "core/file_sys/kernel_executable.h" |
| 6 | #include "core/file_sys/program_metadata.h" | 7 | #include "core/file_sys/program_metadata.h" |
| 7 | #include "core/gdbstub/gdbstub.h" | 8 | #include "core/gdbstub/gdbstub.h" |
| @@ -76,8 +77,8 @@ AppLoader::LoadResult AppLoader_KIP::Load(Kernel::Process& process) { | |||
| 76 | segment.addr = offset; | 77 | segment.addr = offset; |
| 77 | segment.offset = offset; | 78 | segment.offset = offset; |
| 78 | segment.size = PageAlignSize(static_cast<u32>(data.size())); | 79 | segment.size = PageAlignSize(static_cast<u32>(data.size())); |
| 79 | program_image.resize(offset); | 80 | program_image.resize(offset + data.size()); |
| 80 | program_image.insert(program_image.end(), data.begin(), data.end()); | 81 | std::memcpy(program_image.data() + offset, data.data(), data.size()); |
| 81 | }; | 82 | }; |
| 82 | 83 | ||
| 83 | load_segment(codeset.CodeSegment(), kip->GetTextSection(), kip->GetTextOffset()); | 84 | load_segment(codeset.CodeSegment(), kip->GetTextSection(), kip->GetTextOffset()); |