зеркало из https://github.com/github/ruby.git
* load.c (rb_feature_provided): fixed for autoloading extension
library without suffix. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
bc664b878c
Коммит
31a6d50863
|
@ -1,6 +1,12 @@
|
|||
Wed Sep 9 15:46:28 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* load.c (rb_feature_provided): fixed for autoloading extension
|
||||
library without suffix.
|
||||
|
||||
Wed Sep 9 15:24:32 2009 TAKANO Mitsuhiro (takano32) <tak@no32.tk>
|
||||
|
||||
* include/ruby/st.h : revert previous commit.
|
||||
|
||||
* ext/objspace/objspace.c : remove st_memsize declare.
|
||||
|
||||
Wed Sep 9 14:07:19 2009 TAKANO Mitsuhiro (takano32) <tak@no32.tk>
|
||||
|
|
4
load.c
4
load.c
|
@ -233,7 +233,7 @@ rb_feature_provided(const char *feature, const char **loading)
|
|||
return FALSE;
|
||||
}
|
||||
}
|
||||
if (rb_feature_p(feature, feature + strlen(feature), TRUE, FALSE, loading))
|
||||
if (rb_feature_p(feature, 0, TRUE, FALSE, loading))
|
||||
return TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
|
@ -473,7 +473,7 @@ search_required(VALUE fname, volatile VALUE *path, int safe_level)
|
|||
OBJ_FREEZE(tmp);
|
||||
if (rb_find_file_ext_safe(&tmp, loadable_ext + 1, safe_level)) {
|
||||
ext = strrchr(ftptr = RSTRING_PTR(tmp), '.');
|
||||
if (!rb_feature_p(ftptr, ext, Qfalse, Qtrue, &loading) || loading)
|
||||
if (!rb_feature_p(ftptr, ext, FALSE, TRUE, &loading) || loading)
|
||||
*path = tmp;
|
||||
return 's';
|
||||
}
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
require 'test/unit'
|
||||
require_relative 'envutil'
|
||||
|
||||
class TestAutoload < Test::Unit::TestCase
|
||||
def test_autoload_so
|
||||
# Continuation is always available, unless excluded intentionally.
|
||||
assert_in_out_err([], <<-INPUT, [], [])
|
||||
autoload :Continuation, "continuation"
|
||||
begin Continuation; rescue LoadError; end
|
||||
INPUT
|
||||
end
|
||||
end
|
Загрузка…
Ссылка в новой задаче