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

ruby-changes:24147

From: akr <ko1@a...>
Date: Sat, 23 Jun 2012 17:23:10 +0900 (JST)
Subject: [ruby-changes:24147] akr:r36198 (trunk): * process.c (save_env): don't use EXEC_OPTION_UNSETENV_OTHERS.

akr	2012-06-23 17:22:53 +0900 (Sat, 23 Jun 2012)

  New Revision: 36198

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

  Log:
    * process.c (save_env): don't use EXEC_OPTION_UNSETENV_OTHERS.
      (rb_execarg_run_options): ditto.

  Modified files:
    trunk/ChangeLog
    trunk/process.c

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 36197)
+++ ChangeLog	(revision 36198)
@@ -1,3 +1,8 @@
+Sat Jun 23 17:22:02 2012  Tanaka Akira  <akr@f...>
+
+	* process.c (save_env): don't use EXEC_OPTION_UNSETENV_OTHERS.
+	  (rb_execarg_run_options): ditto.
+
 Sat Jun 23 17:04:08 2012  Tanaka Akira  <akr@f...>
 
 	* internal.h (rb_execarg): add env_modification field.
Index: process.c
===================================================================
--- process.c	(revision 36197)
+++ process.c	(revision 36198)
@@ -2713,7 +2713,8 @@
                           (VALUE)ary);
             sargp->env_modification = ary;
         }
-        rb_ary_store(soptions, EXEC_OPTION_UNSETENV_OTHERS, Qtrue);
+        sargp->unsetenv_others_given = 1;
+        sargp->unsetenv_others_do = 1;
     }
 }
 #endif
@@ -2751,8 +2752,7 @@
 #endif
 
 #if !defined(HAVE_FORK)
-    obj = rb_ary_entry(options, EXEC_OPTION_UNSETENV_OTHERS);
-    if (RTEST(obj)) {
+    if (eargp->unsetenv_others_given && eargp->unsetenv_others_do) {
         save_env(sargp);
         rb_env_clear();
     }

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

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