]> Nishi Git Mirror - gwion.git/commitdiff
:art: Use gwion for clean2
authorJérémie Astor <astor.jeremie@wanadoo.fr>
Mon, 2 Dec 2019 22:24:25 +0000 (23:24 +0100)
committerJérémie Astor <astor.jeremie@wanadoo.fr>
Mon, 2 Dec 2019 22:24:25 +0000 (23:24 +0100)
src/gwion.c
src/lib/shred.c
tests/import/test.log [new file with mode: 0644]

index 4bb4c9dbdcfea61076572003d5926ff95b6bf427..8589d67657077393bda80ed4beea0eec399e57a1 100644 (file)
@@ -113,8 +113,8 @@ ANN static inline void free_gwion_cpy(const Gwion gwion, const VM_Shred shred) {
 
 ANN static void fork_clean2(const VM_Shred shred, const Vector v) {
   for(m_uint i = 0; i < vector_size(v); ++i) {
-    VM* vm = (VM*)vector_at(v, i);
-    free_gwion_cpy(vm->gwion, shred);
+    const Gwion gwion = (Gwion)vector_at(v, i);
+    free_gwion_cpy(gwion, shred);
   }
   vector_release(v);
 }
index fd430fbac93067488711ff5a2de9e05f30ce0092..f25f028f4ff6b617ace92e946e4afee3355d61cd 100644 (file)
@@ -154,7 +154,7 @@ static DTOR(fork_dtor) {
     vector_rem2(&vm->gwion->data->child, (vtype)o);
     if(!vm->gwion->data->child2.ptr)
       vector_init(&vm->gwion->data->child2);
-    vector_add(&vm->gwion->data->child2, (vtype)ME(o)->info->vm);
+    vector_add(&vm->gwion->data->child2, (vtype)ME(o)->info->vm->gwion);
   }
 }
 
diff --git a/tests/import/test.log b/tests/import/test.log
new file mode 100644 (file)
index 0000000..23d7fa2
--- /dev/null
@@ -0,0 +1,15 @@
+op_already_imported.gw ==964533== Memcheck, a memory error detector
+==964533== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
+==964533== Using Valgrind-3.15.0 and LibVEX; rerun with -h for copyright info
+==964533== Command: ./../../gwion -p. -m dummy -d dummy op_already_imported.gw
+==964533== Parent PID: 963027
+==964533== 
+==964533== 
+==964533== HEAP SUMMARY:
+==964533==     in use at exit: 0 bytes in 0 blocks
+==964533==   total heap usage: 869 allocs, 869 frees, 17,602,040 bytes allocated
+==964533== 
+==964533== All heap blocks were freed -- no leaks are possible
+==964533== 
+==964533== For lists of detected and suppressed errors, rerun with: -s
+==964533== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)