AK+Kernel+Userland: Don't allow Vector::append() in the kernel

This makes it not as easy to forgot to handle OOMs in the kernel.

This commit replaces most usages of this function with
`try_append(...).release_value_but_fixme_should_propagate_errors()`.
But in some cases, using the `TRY` macro or `unchecked_append()` is
already possible.

In places where allocations should not fail or an OOM would be fatal
anyways, `MUST(try_append(...))` should be used explicitly.
This commit is contained in:
Sönke Holz
2025-11-15 21:31:53 +01:00
committed by Sönke Holz
parent 84e02b71fa
commit e8d9734a9c
41 changed files with 102 additions and 104 deletions

View File

@@ -71,7 +71,7 @@ ErrorOr<void> SharedInodeVMObject::sync_impl(off_t offset_in_pages, size_t pages
for (size_t page_index = offset_in_pages; page_index < highest_page_to_flush; ++page_index) {
auto& physical_page = m_physical_pages[page_index];
if (physical_page && is_page_dirty(page_index))
pages_to_flush.append(page_index);
TRY(pages_to_flush.try_append(page_index));
}
if (pages_to_flush.size() == 0)