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

ruby-changes:8345

From: matz <ko1@a...>
Date: Tue, 21 Oct 2008 22:57:42 +0900 (JST)
Subject: [ruby-changes:8345] Ruby:r19873 (trunk): * io.c (open_key_args): should adjust argc, argv in struct

matz	2008-10-21 22:57:16 +0900 (Tue, 21 Oct 2008)

  New Revision: 19873

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

  Log:
    * io.c (open_key_args): should adjust argc, argv in struct
      foreach_arg.

  Modified files:
    trunk/ChangeLog
    trunk/hash.c
    trunk/io.c

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 19872)
+++ ChangeLog	(revision 19873)
@@ -1,3 +1,8 @@
+Tue Oct 21 22:38:58 2008  Yukihiro Matsumoto  <matz@r...>
+
+	* io.c (open_key_args): should adjust argc, argv in struct
+	  foreach_arg.
+
 Tue Oct 21 21:52:00 2008  Yukihiro Matsumoto  <matz@r...>
 
 	* ext/zlib/zlib.c (rb_gzwriter_write): conversion should be done
Index: io.c
===================================================================
--- io.c	(revision 19872)
+++ io.c	(revision 19873)
@@ -4597,12 +4597,12 @@
 }
 
 static VALUE
-pop_last_hash(int *argc_p, VALUE **argv_p)
+pop_last_hash(int *argc_p, VALUE *argv)
 {
     VALUE last, tmp;
     if (*argc_p == 0)
         return Qnil;
-    last = (*argv_p)[*argc_p-1];
+    last = argv[*argc_p-1];
     tmp = rb_check_convert_type(last, T_HASH, "Hash", "to_hash");
     if (NIL_P(tmp))
         return Qnil;
@@ -4673,7 +4673,7 @@
     int oflags, fmode;
     convconfig_t convconfig;
 
-    opt = pop_last_hash(&argc, &argv);
+    opt = pop_last_hash(&argc, argv);
     rb_scan_args(argc, argv, "11", &pname, &pmode);
 
     rb_io_extract_modeenc(&pmode, 0, opt, &oflags, &fmode, &convconfig);
@@ -4716,7 +4716,7 @@
     int oflags, fmode;
     mode_t perm;
 
-    opt = pop_last_hash(&argc, &argv);
+    opt = pop_last_hash(&argc, argv);
     rb_scan_args(argc, argv, "12", &fname, &vmode, &vperm);
     FilePathValue(fname);
 #if defined _WIN32 || defined __APPLE__
@@ -5688,7 +5688,7 @@
 
     rb_secure(4);
 
-    opt = pop_last_hash(&argc, &argv);
+    opt = pop_last_hash(&argc, argv);
     rb_scan_args(argc, argv, "11", &fnum, &vmode);
     rb_io_extract_modeenc(&vmode, 0, opt, &oflags, &fmode, &convconfig);
 
@@ -6828,7 +6828,7 @@
     VALUE opt;
     rb_io_t *fptr;
 
-    opt = pop_last_hash(&argc, &argv);
+    opt = pop_last_hash(&argc, argv);
     rb_scan_args(argc, argv, "02", &v1, &v2);
     if (rb_pipe(pipes) == -1)
         rb_sys_fail(0);
@@ -6877,7 +6877,7 @@
 	arg->io = rb_io_open(argv[0], INT2NUM(O_RDONLY), INT2FIX(0666), Qnil);
 	return;
     }
-    opt = pop_last_hash(&argc, &argv);
+    opt = pop_last_hash(&arg->argc, arg->argv);
     if (NIL_P(opt)) goto no_key;
 
     v = rb_hash_aref(opt, sym_open_args);
@@ -7684,7 +7684,7 @@
     rb_io_t *fptr;
     VALUE v1, v2, opt;
 
-    opt = pop_last_hash(&argc, &argv);
+    opt = pop_last_hash(&argc, argv);
     rb_scan_args(argc, argv, "11", &v1, &v2);
     GetOpenFile(io, fptr);
     io_encoding_set(fptr, v1, v2, opt);
Index: hash.c
===================================================================
--- hash.c	(revision 19872)
+++ hash.c	(revision 19873)
@@ -79,7 +79,7 @@
       default:
 	hval = rb_funcall(a, id_hash, 0);
 	if (!FIXNUM_P(hval)) {
-	    hval = rb_funcall(hval, '%', 1, INT2FIX(536870923));
+	    hval = rb_funcall(hval, '%', 1, INT2FIX(5368709231));
 	}
 	hnum = (int)FIX2LONG(hval);
     }

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

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