diff --git a/dylib/src/test.c b/dylib/src/test.c index ea277392..39614781 100644 --- a/dylib/src/test.c +++ b/dylib/src/test.c @@ -15,7 +15,7 @@ const char* pkpy_module__init__(pkpy_vm* vm, const char* version){ pkpy_setattr(vm, pkpy_name("hello")); if(pkpy_check_error(vm)){ pkpy_clear_error(vm, NULL); - exit(1); + return NULL; } return "test"; } \ No newline at end of file diff --git a/src/pocketpy.cpp b/src/pocketpy.cpp index 4a180cf3..fb4f066a 100644 --- a/src/pocketpy.cpp +++ b/src/pocketpy.cpp @@ -174,6 +174,9 @@ void init_builtins(VM* _vm) { vm->_error("ImportError", "cannot load dynamic library: " + name.escape()); } const char* name = entry(vm, PK_VERSION); + if(name == nullptr){ + vm->_error("ImportError", "module initialization failed: " + Str(name).escape()); + } return vm->_modules[name]; } }