diff options
author | Ali Mohammad Pur <ali.mpfard@gmail.com> | 2021-09-06 03:29:52 +0430 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2021-09-06 01:53:26 +0200 |
commit | 97e97bccab085823d1365cb54142fd8c41dbcd8c (patch) | |
tree | 9008687dbcdfb6f36f6dc6372aa382b15b9d36c8 /Userland/DevTools/UserspaceEmulator/SoftMMU.cpp | |
parent | 3a9f00c59bad7735970c72cb940d08161fda09b0 (diff) | |
download | serenity-97e97bccab085823d1365cb54142fd8c41dbcd8c.zip |
Everywhere: Make ByteBuffer::{create_*,copy}() OOM-safe
Diffstat (limited to 'Userland/DevTools/UserspaceEmulator/SoftMMU.cpp')
-rw-r--r-- | Userland/DevTools/UserspaceEmulator/SoftMMU.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/Userland/DevTools/UserspaceEmulator/SoftMMU.cpp b/Userland/DevTools/UserspaceEmulator/SoftMMU.cpp index c2442028ac..62009396d4 100644 --- a/Userland/DevTools/UserspaceEmulator/SoftMMU.cpp +++ b/Userland/DevTools/UserspaceEmulator/SoftMMU.cpp @@ -63,17 +63,17 @@ void SoftMMU::ensure_split_at(X86::LogicalAddress address) // a previous page, and that it belongs to the same region. auto* old_region = verify_cast<MmapRegion>(m_page_to_region_map[page_index]); - //dbgln("splitting at {:p}", address.offset()); - //dbgln(" old region: {:p}-{:p}", old_region->base(), old_region->end() - 1); + // dbgln("splitting at {:p}", address.offset()); + // dbgln(" old region: {:p}-{:p}", old_region->base(), old_region->end() - 1); NonnullOwnPtr<MmapRegion> new_region = old_region->split_at(VirtualAddress(offset)); - //dbgln(" new region: {:p}-{:p}", new_region->base(), new_region->end() - 1); - //dbgln(" up old region: {:p}-{:p}", old_region->base(), old_region->end() - 1); + // dbgln(" new region: {:p}-{:p}", new_region->base(), new_region->end() - 1); + // dbgln(" up old region: {:p}-{:p}", old_region->base(), old_region->end() - 1); size_t first_page_in_region = new_region->base() / PAGE_SIZE; size_t last_page_in_region = (new_region->base() + new_region->size() - 1) / PAGE_SIZE; - //dbgln(" @ remapping pages {} thru {}", first_page_in_region, last_page_in_region); + // dbgln(" @ remapping pages {} thru {}", first_page_in_region, last_page_in_region); for (size_t page = first_page_in_region; page <= last_page_in_region; ++page) { VERIFY(m_page_to_region_map[page] == old_region); @@ -321,7 +321,7 @@ void SoftMMU::copy_from_vm(void* destination, const FlatPtr source, size_t size) ByteBuffer SoftMMU::copy_buffer_from_vm(const FlatPtr source, size_t size) { - auto buffer = ByteBuffer::create_uninitialized(size); + auto buffer = ByteBuffer::create_uninitialized(size).release_value(); // FIXME: Handle possible OOM situation. copy_from_vm(buffer.data(), source, size); return buffer; } |