From 757f7a7279e97e80ccb4defa986c174daaf9449e Mon Sep 17 00:00:00 2001 From: "Carsten Haitzler (Rasterman)" Date: Tue, 15 May 2018 15:28:53 +0900 Subject: [PATCH] module loading - use local symbols to avoid symbol table clashes the mod init/shutdown syms already are bad infesting the global sym table. keep modules local/isolated and we'll be better off. --- src/bin/e_module.c | 2 +- src/modules/wizard/e_mod_main.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bin/e_module.c b/src/bin/e_module.c index 8c65f1185..4cda9e0a8 100644 --- a/src/bin/e_module.c +++ b/src/bin/e_module.c @@ -392,7 +392,7 @@ e_module_new(const char *name) m->error = 1; goto init_done; } - m->handle = dlopen(modpath, (RTLD_NOW | RTLD_GLOBAL)); + m->handle = dlopen(modpath, (RTLD_NOW | RTLD_LOCAL)); if (!m->handle) { snprintf(body, sizeof(body), diff --git a/src/modules/wizard/e_mod_main.c b/src/modules/wizard/e_mod_main.c index 37a108924..69b997a5e 100644 --- a/src/modules/wizard/e_mod_main.c +++ b/src/modules/wizard/e_mod_main.c @@ -71,7 +71,7 @@ e_modapi_init(E_Module *m) else snprintf(buf, sizeof(buf), "%s/%s/%s", e_module_dir_get(m), MODULE_ARCH, file); - handle = dlopen(buf, RTLD_NOW | RTLD_GLOBAL); + handle = dlopen(buf, RTLD_NOW | RTLD_LOCAL); if (handle) e_wizard_page_add(handle, file, dlsym(handle, "wizard_page_init"),