From 1a4bf59430667c73e3b0330882ee17a28cc943c4 Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 10 Dec 2010 09:29:22 +0000 Subject: [PATCH] * ruby.c (ruby_init_loadpath_safe): relatively called non-shared binary cannot be found in PATH, so use given pathname. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30164 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ ruby.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 14a597f32a..5d2ead7391 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Fri Dec 10 18:29:20 2010 Nobuyoshi Nakada + + * ruby.c (ruby_init_loadpath_safe): relatively called non-shared + binary cannot be found in PATH, so use given pathname. + Fri Dec 10 18:28:40 2010 Nobuyoshi Nakada * cygwin/GNUmakefile.in (SCRIPTPROGRAMS): ignore backup files and etc. diff --git a/ruby.c b/ruby.c index d09c32e99c..ef5223da42 100644 --- a/ruby.c +++ b/ruby.c @@ -380,7 +380,7 @@ ruby_init_loadpath_safe(int safe_level) VALUE rb_realpath_internal(VALUE basedir, VALUE path, int strict); char fbuf[MAXPATHLEN]; char *f = dln_find_file_r(dli.dli_fname, getenv(PATH_ENV), fbuf, sizeof(fbuf)); - VALUE fname = rb_str_new_cstr(f); + VALUE fname = rb_str_new_cstr(f ? f : dli.dli_fname); rb_str_freeze(fname); sopath = rb_realpath_internal(Qnil, fname, 1); }