summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWayne Meissner <wmeissner@gmail.com>2010-02-18 18:24:13 +1000
committerWayne Meissner <wmeissner@gmail.com>2010-02-18 18:24:13 +1000
commite3e29ce7a1601eb14ecf4b1e3cfe5273b8bf482d (patch)
tree991a6715911e725788a9cf86b082d718b7e5b0cd
parent980ec93b6cfb49d4ce57dec55de8ea773ae9436d (diff)
downloadffi-e3e29ce7a1601eb14ecf4b1e3cfe5273b8bf482d.tar.gz
Open libraries with RTLD_LOCAL by default
-rw-r--r--lib/ffi/library.rb4
1 files 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