Handling null ptr in NtFreeVirtualMemory.
This commit is contained in:
@@ -121,6 +121,11 @@ SHIM_CALL NtFreeVirtualMemory_shim(
|
||||
region_size_ptr, region_size_value,
|
||||
free_type, unknown);
|
||||
|
||||
if (!base_addr_value) {
|
||||
SHIM_SET_RETURN(X_STATUS_MEMORY_NOT_ALLOCATED);
|
||||
return;
|
||||
}
|
||||
|
||||
// Free.
|
||||
uint32_t flags = 0;
|
||||
uint32_t freed_size = xe_memory_heap_free(state->memory(), base_addr_value,
|
||||
|
||||
@@ -41,6 +41,7 @@ typedef uint32_t X_STATUS;
|
||||
#define X_STATUS_BUFFER_TOO_SMALL ((uint32_t)0xC0000023L)
|
||||
#define X_STATUS_OBJECT_TYPE_MISMATCH ((uint32_t)0xC0000024L)
|
||||
#define X_STATUS_INVALID_PAGE_PROTECTION ((uint32_t)0xC0000045L)
|
||||
#define X_STATUS_MEMORY_NOT_ALLOCATED ((uint32_t)0xC00000A0L)
|
||||
|
||||
|
||||
// MEM_*, used by NtAllocateVirtualMemory
|
||||
|
||||
Reference in New Issue
Block a user