From fc7f80af2d780a51657777335936b112db46bc28 Mon Sep 17 00:00:00 2001 From: Andrew Golovashevich Date: Sat, 20 Dec 2025 01:04:35 +0300 Subject: [PATCH] Method to check neighbor pages --- .gitmodules | 2 ++ dynamic-memory-api-0 | 2 +- src/reservation.rs | 8 +++++--- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.gitmodules b/.gitmodules index 15b01e7..32846bc 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,5 @@ [submodule "dynamic-memory-api-0"] path = dynamic-memory-api-0 url = https://git.landgrafhomyak.ru/MemoryManagement/dynamic-memory-api-0.git +[submodule ".\\dynamic-memory-api-0\\"] + url = https://git.landgrafhomyak.ru/MemoryManagement/dynamic-memory-api-0.rs diff --git a/dynamic-memory-api-0 b/dynamic-memory-api-0 index c60ffac..d957416 160000 --- a/dynamic-memory-api-0 +++ b/dynamic-memory-api-0 @@ -1 +1 @@ -Subproject commit c60ffac4f647d876144bbd92cbada5fb4b648afa +Subproject commit d9574164f284c3a67a48d0ccbed2f81badb6b906 diff --git a/src/reservation.rs b/src/reservation.rs index fc4803a..5c694be 100644 --- a/src/reservation.rs +++ b/src/reservation.rs @@ -1,7 +1,5 @@ use crate::{WindowsVirtualMemoryApi, winapi_wrappers}; -use dynamic_memory_api_0::virtual_memory::{ - ExtendResult, Reservation, VirtualMemoryApi, -}; +use dynamic_memory_api_0::virtual_memory::{ExtendResult, Reservation, VirtualMemoryApi}; use std::cmp::Ordering; use std::ffi::c_void; use std::mem::ManuallyDrop; @@ -122,6 +120,10 @@ unsafe impl Reservation for WindowsReservation<'_> { self._release(); let _ = ManuallyDrop::new(self); } + + fn isFollowedBy(&self, next: &Self) -> bool { + unsafe { return self._offset(self.pagesCount) == next.start } + } } impl Drop for WindowsReservation<'_> {