From e3e29ce7a1601eb14ecf4b1e3cfe5273b8bf482d Mon Sep 17 00:00:00 2001 From: Wayne Meissner Date: Thu, 18 Feb 2010 18:24:13 +1000 Subject: Open libraries with RTLD_LOCAL by default --- lib/ffi/library.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/ffi/library.rb b/lib/ffi/library.rb index 1ba8475..4aefd46 100644 --- a/lib/ffi/library.rb +++ b/lib/ffi/library.rb @@ -42,7 +42,7 @@ module FFI ffi_libs = names.map do |name| if name == FFI::CURRENT_PROCESS - FFI::DynamicLibrary.open(nil, FFI::DynamicLibrary::RTLD_LAZY | FFI::DynamicLibrary::RTLD_GLOBAL) + FFI::DynamicLibrary.open(nil, FFI::DynamicLibrary::RTLD_LAZY | FFI::DynamicLibrary::RTLD_LOCAL) else libnames = (name.is_a?(::Array) ? name : [ name ]).map { |n| [ n, FFI.map_library_name(n) ].uniq }.flatten.compact lib = nil @@ -50,7 +50,7 @@ module FFI libnames.each do |libname| begin - lib = FFI::DynamicLibrary.open(libname, FFI::DynamicLibrary::RTLD_LAZY | FFI::DynamicLibrary::RTLD_GLOBAL) + lib = FFI::DynamicLibrary.open(libname, FFI::DynamicLibrary::RTLD_LAZY | FFI::DynamicLibrary::RTLD_LOCAL) break if lib rescue Exception => ex errors[libname] = ex -- cgit v1.2.1