[前][次][番号順一覧][スレッド一覧]

ruby-changes:16184

From: nobu <ko1@a...>
Date: Thu, 3 Jun 2010 19:02:39 +0900 (JST)
Subject: [ruby-changes:16184] Ruby:r28147 (trunk, ruby_1_9_2): * load.c (ruby_init_ext): statically linked extensions have no

nobu	2010-06-03 18:58:32 +0900 (Thu, 03 Jun 2010)

  New Revision: 28147

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=28147

  Log:
    * load.c (ruby_init_ext): statically linked extensions have no
      real path.  [ruby-dev:41526]
    
    * vm.c (rb_vm_call_cfunc): add filepath argument.

  Modified files:
    branches/ruby_1_9_2/ChangeLog
    branches/ruby_1_9_2/eval_intern.h
    branches/ruby_1_9_2/load.c
    branches/ruby_1_9_2/vm.c
    trunk/ChangeLog
    trunk/eval_intern.h
    trunk/load.c
    trunk/vm.c

Index: eval_intern.h
===================================================================
--- eval_intern.h	(revision 28146)
+++ eval_intern.h	(revision 28147)
@@ -205,7 +205,7 @@
 
 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();
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 28146)
+++ ChangeLog	(revision 28147)
@@ -1,3 +1,10 @@
+Thu Jun  3 18:58:28 2010  Nobuyoshi Nakada  <nobu@r...>
+
+	* 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@r...>
 
 	* test/rake/test_win32.rb (Rake::TestWin32): update tests.
Index: load.c
===================================================================
--- load.c	(revision 28146)
+++ load.c	(revision 28147)
@@ -596,7 +596,7 @@
 
 		  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 @@
 {
     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);
     }
Index: vm.c
===================================================================
--- vm.c	(revision 28146)
+++ vm.c	(revision 28147)
@@ -1444,11 +1444,11 @@
 
 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,
Index: ruby_1_9_2/eval_intern.h
===================================================================
--- ruby_1_9_2/eval_intern.h	(revision 28146)
+++ ruby_1_9_2/eval_intern.h	(revision 28147)
@@ -205,7 +205,7 @@
 
 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();
Index: ruby_1_9_2/ChangeLog
===================================================================
--- ruby_1_9_2/ChangeLog	(revision 28146)
+++ ruby_1_9_2/ChangeLog	(revision 28147)
@@ -1,3 +1,10 @@
+Thu Jun  3 18:58:28 2010  Nobuyoshi Nakada  <nobu@r...>
+
+	* 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@r...>
 
 	* test/rake/test_win32.rb (Rake::TestWin32): update tests.
Index: ruby_1_9_2/load.c
===================================================================
--- ruby_1_9_2/load.c	(revision 28146)
+++ ruby_1_9_2/load.c	(revision 28147)
@@ -596,7 +596,7 @@
 
 		  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 @@
 {
     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);
     }
Index: ruby_1_9_2/vm.c
===================================================================
--- ruby_1_9_2/vm.c	(revision 28146)
+++ ruby_1_9_2/vm.c	(revision 28147)
@@ -1444,11 +1444,11 @@
 
 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,

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]