diff --git a/src/include/switch_dso.h b/src/include/switch_dso.h index 28908e5332..83498ff87b 100644 --- a/src/include/switch_dso.h +++ b/src/include/switch_dso.h @@ -30,10 +30,10 @@ typedef void * switch_dso_lib_t; typedef void * switch_dso_data_t; -void switch_dso_destroy(switch_dso_lib_t *lib); -switch_dso_lib_t switch_dso_open(const char *path, int global, char **err); -switch_dso_func_t switch_dso_func_sym(switch_dso_lib_t lib, const char *sym, char **err); -void *switch_dso_data_sym(switch_dso_lib_t lib, const char *sym, char **err); +SWITCH_DECLARE(void) switch_dso_destroy(switch_dso_lib_t *lib); +SWITCH_DECLARE(switch_dso_lib_t) switch_dso_open(const char *path, int global, char **err); +SWITCH_DECLARE(switch_dso_func_t) switch_dso_func_sym(switch_dso_lib_t lib, const char *sym, char **err); +SWITCH_DECLARE(void *) switch_dso_data_sym(switch_dso_lib_t lib, const char *sym, char **err); #endif diff --git a/src/mod/languages/mod_spidermonkey/mod_spidermonkey.c b/src/mod/languages/mod_spidermonkey/mod_spidermonkey.c index 90e164e14b..9912ead2e2 100644 --- a/src/mod/languages/mod_spidermonkey/mod_spidermonkey.c +++ b/src/mod/languages/mod_spidermonkey/mod_spidermonkey.c @@ -927,8 +927,8 @@ static switch_status_t sm_load_file(char *filename) err: - if (err) { - switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Error Loading module %s\n**%s**\n", filename, err); + if (err || !module) { + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Error Loading module %s\n**%s**\n", filename, switch_str_nil(err)); switch_safe_free(derr); return SWITCH_STATUS_GENERR; } diff --git a/src/switch_dso.c b/src/switch_dso.c index 2dc2910dbc..8d5b965419 100644 --- a/src/switch_dso.c +++ b/src/switch_dso.c @@ -24,14 +24,14 @@ #ifdef WIN32 -void switch_dso_destroy(switch_dso_lib_t *lib) { +SWITCH_DECLARE(void) switch_dso_destroy(switch_dso_lib_t *lib) { if (lib && *lib) { FreeLibrary(*lib); *lib = NULL; } } -switch_dso_lib_t switch_dso_open(const char *path, int global, char **err) { +SWITCH_DECLARE(switch_dso_lib_t) switch_dso_open(const char *path, int global, char **err) { HINSTANCE lib; lib = LoadLibraryEx(path, NULL, 0); @@ -48,7 +48,7 @@ switch_dso_lib_t switch_dso_open(const char *path, int global, char **err) { return lib; } -switch_dso_func_t switch_dso_func_sym(switch_dso_lib_t lib, const char *sym, char **err) { +SWITCH_DECLARE(switch_dso_func_t) switch_dso_func_sym(switch_dso_lib_t lib, const char *sym, char **err) { FARPROC func = GetProcAddress(lib, sym); if (!func) { DWORD error = GetLastError(); @@ -57,7 +57,7 @@ switch_dso_func_t switch_dso_func_sym(switch_dso_lib_t lib, const char *sym, cha return (switch_dso_func_t)func; } -void *switch_dso_data_sym(switch_dso_lib_t lib, const char *sym, char **err) { +SWITCH_DECLARE(void *) switch_dso_data_sym(switch_dso_lib_t lib, const char *sym, char **err) { FARPROC addr = GetProcAddress(lib, sym); if (!addr) { DWORD error = GetLastError();