]> Nishi Git Mirror - gwion.git/commitdiff
:Fix module behavior
authorJérémie Astor <astor.jeremie@wanadoo.fr>
Sun, 23 Feb 2020 22:08:59 +0000 (23:08 +0100)
committerJérémie Astor <astor.jeremie@wanadoo.fr>
Sun, 23 Feb 2020 22:08:59 +0000 (23:08 +0100)
src/gwion.c
tests/import/get_module.c

index 1b816c773c368fbaa52941a553ce385ba7d0178b..df61ac104066d0ee028df960d33100bbafdbf618 100644 (file)
@@ -74,11 +74,13 @@ ANN static void gwion_core(const Gwion gwion) {
 ANN static m_bool gwion_ok(const Gwion gwion, Arg* arg) {
   gwion->data->plug = new_pluginfo(gwion->mp, &arg->lib);
   shreduler_set_loop(gwion->vm->shreduler, arg->loop);
-  if(gwion_audio(gwion) > 0 && gwion_engine(gwion)) {
-    gwion_cleaner(gwion);
+  if(gwion_audio(gwion) > 0) {
     plug_run(gwion, &arg->mod);
-    gwion_compile(gwion, &arg->add);
-    return GW_OK;
+    if(gwion_engine(gwion)) {
+      gwion_cleaner(gwion);
+      gwion_compile(gwion, &arg->add);
+      return GW_OK;
+    }
   }
   return GW_ERROR;
 }
index d0ecf040fa659134ad8ba3c8be3d73716273b1d7..d4d11e622d27ecc819a31cda23c5d7bf5984f10e 100644 (file)
@@ -17,15 +17,15 @@ GWMODSTR(dummy_module);
 
 GWMODINI(dummy_module) {
   puts(__func__);
-  return NULL;
+  return (void*)2; // we need to return something
 }
 GWMODEND(dummy_module) {
   puts(__func__);
 }
 
 GWION_IMPORT(dummy_module) {
-  GWI_OB(get_module(gwi->gwion, "dummy_module"))
-  puts("test passed!");
+  CHECK_OB(get_module(gwi->gwion, "dummy_module"))
+  puts("test passed");
   get_module(gwi->gwion, "non_existant_module");
   return GW_OK;
 }