From 93435b50961018c1710f4ce1acb715dc2b1a6dcb Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Tue, 30 Nov 2004 01:01:43 +0000 Subject: r4009: Fix from Timur Bakeyev for bugid #2100, change the way we check for errors after a dlopen (which may set internal warnings which get picked up by mistake in dlsym). Jeremy (This used to be commit 6711cb8b02f96d04af82d30b1274f76dc5461dc2) --- source3/lib/module.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/source3/lib/module.c b/source3/lib/module.c index 2abe918ef4..e469b1da42 100644 --- a/source3/lib/module.c +++ b/source3/lib/module.c @@ -40,9 +40,12 @@ static NTSTATUS do_smb_load_module(const char *module_name, BOOL is_probe) */ handle = sys_dlopen(module_name, RTLD_LAZY); + /* This call should reset any possible non-fatal errors that + occured since last call to dl* functions */ + error = sys_dlerror(); + if(!handle) { int level = is_probe ? 3 : 0; - error = sys_dlerror(); DEBUG(level, ("Error loading module '%s': %s\n", module_name, error ? error : "")); return NT_STATUS_UNSUCCESSFUL; } -- cgit