コード例 #1
0
static bool do_free(void *address, int size)
{
#ifdef TRACK_ALLOCATIONS
	uae_u32 allocated_size = remove_allocation(address);
	assert(allocated_size == size);
#endif
#ifdef _WIN32
	return VirtualFree(address, 0, MEM_RELEASE) != 0;
#else
	if (munmap(address, size) != 0) {
		uae_log("VM: uae_vm_free(%p, %d) munmap failed (%d)\n",
				address, size, errno);
		return false;
	}
#endif
	return true;
}
コード例 #2
0
static void free_area(struct area *area)
{
    fill(area->area, area->area_size, FREE_AREA_PATTERN);
    put_on_free_ring(area);
    remove_allocation(area);
}