зеркало из https://github.com/github/ruby.git
* load.c (ruby_init_ext): statically linked extensions have no
real path. [ruby-dev:41526] * vm.c (rb_vm_call_cfunc): add filepath argument. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
140d43a73f
Коммит
7336f32c3b
|
@ -1,3 +1,10 @@
|
|||
Thu Jun 3 18:58:28 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* load.c (ruby_init_ext): statically linked extensions have no
|
||||
real path. [ruby-dev:41526]
|
||||
|
||||
* vm.c (rb_vm_call_cfunc): add filepath argument.
|
||||
|
||||
Thu Jun 3 18:17:45 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* test/rake/test_win32.rb (Rake::TestWin32): update tests.
|
||||
|
|
|
@ -205,7 +205,7 @@ NORETURN(void rb_raise_method_missing(rb_thread_t *th, int argc, VALUE *argv,
|
|||
|
||||
VALUE rb_vm_make_jump_tag_but_local_jump(int state, VALUE val);
|
||||
NODE *rb_vm_cref(void);
|
||||
VALUE rb_vm_call_cfunc(VALUE recv, VALUE (*func)(VALUE), VALUE arg, const rb_block_t *blockptr, VALUE filename);
|
||||
VALUE rb_vm_call_cfunc(VALUE recv, VALUE (*func)(VALUE), VALUE arg, const rb_block_t *blockptr, VALUE filename, VALUE filepath);
|
||||
void rb_vm_set_progname(VALUE filename);
|
||||
void rb_thread_terminate_all(void);
|
||||
VALUE rb_vm_top_self();
|
||||
|
|
4
load.c
4
load.c
|
@ -596,7 +596,7 @@ rb_require_safe(VALUE fname, int safe)
|
|||
|
||||
case 's':
|
||||
handle = (long)rb_vm_call_cfunc(rb_vm_top_self(), load_ext,
|
||||
path, 0, path);
|
||||
path, 0, path, path);
|
||||
rb_ary_push(ruby_dln_librefs, LONG2NUM(handle));
|
||||
break;
|
||||
}
|
||||
|
@ -643,7 +643,7 @@ ruby_init_ext(const char *name, void (*init)(void))
|
|||
{
|
||||
if (load_lock(name)) {
|
||||
rb_vm_call_cfunc(rb_vm_top_self(), init_ext_call, (VALUE)init,
|
||||
0, rb_str_new2(name));
|
||||
0, rb_str_new2(name), Qnil);
|
||||
rb_provide(name);
|
||||
load_unlock(name, 1);
|
||||
}
|
||||
|
|
4
vm.c
4
vm.c
|
@ -1444,11 +1444,11 @@ rb_thread_current_status(const rb_thread_t *th)
|
|||
|
||||
VALUE
|
||||
rb_vm_call_cfunc(VALUE recv, VALUE (*func)(VALUE), VALUE arg,
|
||||
const rb_block_t *blockptr, VALUE filename)
|
||||
const rb_block_t *blockptr, VALUE filename, VALUE filepath)
|
||||
{
|
||||
rb_thread_t *th = GET_THREAD();
|
||||
const rb_control_frame_t *reg_cfp = th->cfp;
|
||||
volatile VALUE iseqval = rb_iseq_new(0, filename, filename, filename, 0, ISEQ_TYPE_TOP);
|
||||
volatile VALUE iseqval = rb_iseq_new(0, filename, filename, filepath, 0, ISEQ_TYPE_TOP);
|
||||
VALUE val;
|
||||
|
||||
vm_push_frame(th, DATA_PTR(iseqval), VM_FRAME_MAGIC_TOP,
|
||||
|
|
Загрузка…
Ссылка в новой задаче