@@ -89,8 +89,6 @@ mrb_execarg_fill(mrb_state *mrb, mrb_value env, mrb_value *argv, mrb_int argc, m
8989 char buf [160 ];
9090 mrb_value argv0 = mrb_nil_value ();
9191
92-
93-
9492 ai = mrb_gc_arena_save (mrb );
9593
9694 if (mrb_hash_p (opts )) {
@@ -102,7 +100,6 @@ mrb_execarg_fill(mrb_state *mrb, mrb_value env, mrb_value *argv, mrb_int argc, m
102100 }
103101
104102 tCmd = mrb_string_value_ptr (mrb , argv [0 ]);
105-
106103 fCmd = dln_find_exe_r (tCmd , NULL , buf , sizeof (buf ));
107104
108105 do_exit = !fCmd && strncmp ("exit" , tCmd , 4 ) == 0 ;
@@ -114,7 +111,6 @@ mrb_execarg_fill(mrb_state *mrb, mrb_value env, mrb_value *argv, mrb_int argc, m
114111 result = (char * * )mrb_malloc (mrb , sizeof (char * ) * (argc + 1 ));
115112 mrb_execarg_argv_to_strv (mrb , argv , argc , result );
116113 } else {
117-
118114 result = (char * * )mrb_malloc (mrb , sizeof (char * ) * (argc + 3 ));
119115
120116 #if defined(__APPLE__ ) || defined(__linux__ )
@@ -145,7 +141,6 @@ mrb_execarg_fill(mrb_state *mrb, mrb_value env, mrb_value *argv, mrb_int argc, m
145141 result [0 ] = mrb_str_to_cstr (mrb , argv0 );
146142 }
147143
148-
149144 eargp -> envp = NULL ;
150145 eargp -> filename = result [0 ];
151146 eargp -> argv = result ;
@@ -199,10 +194,12 @@ mrb_execarg_argv_to_strv(mrb_state *mrb, mrb_value *argv, mrb_int len, char **re
199194 * result = buf ;
200195 result ++ ;
201196 }
197+
202198 * result = NULL ;
203199 result -= i ;
204200
205201 mrb_gc_arena_restore (mrb , ai );
202+
206203 return 0 ;
207204}
208205
@@ -219,6 +216,7 @@ mrb_build_shell_array(mrb_state *mrb, mrb_value *argv, mrb_int len, char *shell,
219216
220217 * result = shell ;
221218 result ++ ;
219+
222220 * result = shell_mod ;
223221 result ++ ;
224222
@@ -227,9 +225,11 @@ mrb_build_shell_array(mrb_state *mrb, mrb_value *argv, mrb_int len, char *shell,
227225 * result = buf ;
228226 result ++ ;
229227 }
228+
230229 * result = NULL ;
231230 result -= i ;
232231
233232 mrb_gc_arena_restore (mrb , ai );
233+
234234 return 0 ;
235235}
0 commit comments