Remove erroneous vm deallocation

This commit is contained in:
Derek Parker
2015-03-21 17:05:13 -05:00
parent 7ec9240d16
commit 530f66dcf6

View File

@ -12,11 +12,11 @@ write_memory(mach_port_name_t task, mach_vm_address_t addr, void *d, mach_msg_ty
mach_port_t objname;
if (len == 1) l = 2;
kret = mach_vm_region((vm_map_t)task, &(mach_vm_address_t){ addr }, (mach_vm_size_t*)&l, VM_REGION_BASIC_INFO_64, (vm_region_info_t)&info, &count, &objname);
kret = mach_vm_region((vm_map_t)task, &(mach_vm_address_t){addr}, (mach_vm_size_t*)&l, VM_REGION_BASIC_INFO_64, (vm_region_info_t)&info, &count, &objname);
if (kret != KERN_SUCCESS) return -1;
// Set permissions to enable writting to this memory location
kret = mach_vm_protect(task, addr, len, FALSE, VM_PROT_ALL);
kret = mach_vm_protect(task, addr, len, FALSE, VM_PROT_WRITE|VM_PROT_COPY|VM_PROT_READ);
if (kret != KERN_SUCCESS) return -1;
kret = mach_vm_write((vm_map_t)task, addr, (vm_offset_t)&data, len);
@ -26,9 +26,6 @@ write_memory(mach_port_name_t task, mach_vm_address_t addr, void *d, mach_msg_ty
kret = mach_vm_protect(task, addr, len, FALSE, info.protection);
if (kret != KERN_SUCCESS) return -1;
kret = vm_deallocate(task, (vm_address_t)&info, count);
if (kret != KERN_SUCCESS) return -1;
return 0;
}