about summary refs log tree commit diff stats
path: root/miasm2/jitter/vm_mngr_py.c
diff options
context:
space:
mode:
Diffstat (limited to 'miasm2/jitter/vm_mngr_py.c')
-rw-r--r--miasm2/jitter/vm_mngr_py.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/miasm2/jitter/vm_mngr_py.c b/miasm2/jitter/vm_mngr_py.c
index 881d0c42..8d5faacb 100644
--- a/miasm2/jitter/vm_mngr_py.c
+++ b/miasm2/jitter/vm_mngr_py.c
@@ -271,6 +271,7 @@ PyObject* vm_get_mem(VmMngr* self, PyObject* args)
 	while (my_size){
 		mpn = get_memory_page_from_address(&self->vm_mngr, buf_addr);
 		if (!mpn){
+			free(buf_out);
 			PyErr_SetString(PyExc_RuntimeError, "cannot find address");
 			return 0;
 		}
@@ -725,6 +726,9 @@ PyObject* add_jitbloc(VmMngr* self, PyObject* args)
 static void
 VmMngr_dealloc(VmMngr* self)
 {
+    vm_reset_memory_page_pool(self, NULL);
+    vm_reset_code_bloc_pool(self, NULL);
+    vm_reset_memory_breakpoint(self, NULL);
     self->ob_type->tp_free((PyObject*)self);
 }