# HG changeset patch # User Sebastien Jodogne # Date 1584704280 -3600 # Node ID 3ba143353f95653382370490b8952dc26b30c48f # Parent b07fc9ed0dc5bde69b10ce37915a53981772700f# Parent 626d5f4a5afb66c7ccf634f5443321af601592cc integration mainline->transcoding diff -r b07fc9ed0dc5 -r 3ba143353f95 Core/SharedLibrary.cpp --- a/Core/SharedLibrary.cpp Thu Mar 19 11:58:32 2020 +0100 +++ b/Core/SharedLibrary.cpp Fri Mar 20 12:38:00 2020 +0100 @@ -62,14 +62,19 @@ } #elif defined(__linux__) || (defined(__APPLE__) && defined(__MACH__)) || defined(__FreeBSD_kernel__) || defined(__FreeBSD__) || defined(__OpenBSD__) - + /** * "RTLD_LOCAL" is the default, and is only present to be * explicit. "RTLD_DEEPBIND" was added in Orthanc 1.6.0, in order * to avoid crashes while loading plugins from the LSB binaries of * the Orthanc core. + * + * BUT this had no effect, and this results in a crash if loading + * the Python 2.7 plugin => We disabled it again in Orthanc 1.6.1. **/ -#if defined(RTLD_DEEPBIND) // This is a GNU extension + +#if 0 // && defined(RTLD_DEEPBIND) // This is a GNU extension + // Disabled in Orthanc 1.6.1 handle_ = ::dlopen(path_.c_str(), RTLD_NOW | RTLD_LOCAL | RTLD_DEEPBIND); #else handle_ = ::dlopen(path_.c_str(), RTLD_NOW | RTLD_LOCAL);