From c94ca6179f780ce2a022f8eee2c9342e25665113 Mon Sep 17 00:00:00 2001 From: Corey Minyard Date: Wed, 29 May 2024 18:28:58 -0500 Subject: [PATCH] plugin: Always dlclose() a module with a handle Even if it doesn't have a ca_exit function. Otherwise it will leave modules lying around. Signed-off-by: Corey Minyard --- lib/src/clixon_plugin.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/src/clixon_plugin.c b/lib/src/clixon_plugin.c index a7101234..fe2b00fa 100644 --- a/lib/src/clixon_plugin.c +++ b/lib/src/clixon_plugin.c @@ -582,10 +582,10 @@ clixon_plugin_exit_one(clixon_plugin_t *cp, } if (clixon_resource_check(h, &wh, cp->cp_name, __FUNCTION__) < 0) goto done; - if (dlclose(cp->cp_handle) != 0) { - error = (char*)dlerror(); - clixon_err(OE_PLUGIN, errno, "dlclose: %s", error ? error : "Unknown error"); - } + } + if (cp->cp_handle && dlclose(cp->cp_handle) != 0) { + error = (char*)dlerror(); + clixon_err(OE_PLUGIN, errno, "dlclose: %s", error ? error : "Unknown error"); } retval = 0; done: