From a31c0ca3a0f61a62b41ef7361bbab69bb9861c01 Mon Sep 17 00:00:00 2001 From: cra0zy Date: Thu, 1 Mar 2018 20:11:35 +0100 Subject: [PATCH] Add RTLD_GLOBAL flag --- Source/Libs/Shared/FuncLoader.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Source/Libs/Shared/FuncLoader.cs b/Source/Libs/Shared/FuncLoader.cs index 112027bc2..0a310861f 100644 --- a/Source/Libs/Shared/FuncLoader.cs +++ b/Source/Libs/Shared/FuncLoader.cs @@ -32,6 +32,9 @@ class FuncLoader [DllImport("libc")] private static extern int uname(IntPtr buf); + + private const int RTLD_LAZY = 0x0001; + private const int RTLD_GLOBAL = 0x0100; public static bool IsWindows, IsOSX; @@ -69,9 +72,9 @@ class FuncLoader return Windows.LoadLibraryW(libname); if (IsOSX) - return OSX.dlopen(libname, 1); + return OSX.dlopen(libname, RTLD_GLOBAL | RTLD_LAZY); - return Linux.dlopen(libname, 1); + return Linux.dlopen(libname, RTLD_GLOBAL | RTLD_LAZY); } public static IntPtr GetProcAddress(IntPtr library, string function)