From b9e6f50da1fccf908bf486898a1f92b3522bf3a6 Mon Sep 17 00:00:00 2001 From: Taylor R Campbell Date: Thu, 20 Jun 2013 15:18:19 +0000 Subject: [PATCH] Pass RTLD_NOW, not RTLD_LAZY, to dlopen. Let dlopen fail recoverably if there are missing symbols, rather than aborting the hapless process when it tries to use them later. --- src/microcode/pruxdld.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/microcode/pruxdld.c b/src/microcode/pruxdld.c index 11a9615e1..83d301770 100644 --- a/src/microcode/pruxdld.c +++ b/src/microcode/pruxdld.c @@ -117,7 +117,7 @@ dld_load (const char * path) cleanup_registered_p = true; } - handle = (dlopen (path, (RTLD_LAZY | RTLD_GLOBAL))); + handle = (dlopen (path, (RTLD_NOW | RTLD_GLOBAL))); if (handle == 0) { SCHEME_OBJECT v = (allocate_marked_vector (TC_VECTOR, 3, 1)); -- 2.25.1