From e987a0eeeede296658f7c4b82bc184077be305c6 Mon Sep 17 00:00:00 2001 From: ttate Date: Sun, 12 Jan 2003 13:11:32 +0000 Subject: Check the return value of dlopen(). git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@3334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/dl/handle.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ext/dl/handle.c b/ext/dl/handle.c index b38cecb98..689ce4e3a 100644 --- a/ext/dl/handle.c +++ b/ext/dl/handle.c @@ -65,7 +65,7 @@ rb_dlhandle_initialize(int argc, VALUE argv[], VALUE self) ptr = dlopen(clib, cflag); #if defined(HAVE_DLERROR) - if( (err = dlerror()) ){ + if( !ptr && (err = dlerror()) ){ rb_raise(rb_eRuntimeError, err); } #else @@ -168,7 +168,7 @@ rb_dlhandle_sym(int argc, VALUE argv[], VALUE self) func = dlsym(handle, name); #if defined(HAVE_DLERROR) - if( (err = dlerror()) && (!func) ) + if( !func && (err = dlerror()) ) #else if( !func ) #endif @@ -183,7 +183,7 @@ rb_dlhandle_sym(int argc, VALUE argv[], VALUE self) func = dlsym(handle, name_a); dlfree(name_a); #if defined(HAVE_DLERROR) - if( (err = dlerror()) && (!func) ) + if( !func && (err = dlerror()) ) #else if( !func ) #endif -- cgit