for (auto it = begin(); it != end(); it = it->next) {
if (count == it->size) {
erase(it);
+ for (std::size_t i = 0; i < count * 0x1000; i++) {
+ phys_ptr<char>(it.get_phys_addr())[i] = 0;
+ }
return {
.ptr = phys_ptr<paging::page>(it.get_phys_addr()),
.size = count,
};
} else if (count < it->size) {
erase(split_at_offset(it, count));
+ for (std::size_t i = 0; i < count * 0x1000; i++) {
+ phys_ptr<char>(it.get_phys_addr())[i] = 0;
+ }
return {
.ptr = phys_ptr<paging::page>(it.get_phys_addr()),
.size = count,