diff --git a/ChangeLog b/ChangeLog index 98853a4bc2..c8ee94099c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,7 @@ -Thu Feb 26 02:19:11 2004 Nobuyoshi Nakada +Thu Feb 26 02:35:10 2004 Nobuyoshi Nakada - * process.c (rb_f_exec): get rid of SEGV when exec failed. + * process.c (rb_f_exec): get rid of SEGV when exec failed for command + in single string. Wed Feb 25 21:17:33 2004 Nobuyoshi Nakada diff --git a/process.c b/process.c index cb201ebfff..8917d3b01c 100644 --- a/process.c +++ b/process.c @@ -1232,7 +1232,7 @@ rb_f_exec(argc, argv) e.argv = argv; e.prog = prog ? RSTRING(prog)->ptr : 0; rb_exec(&e); - rb_sys_fail(e.prog); + rb_sys_fail(prog ? e.prog : RSTRING(argv[0])->ptr); return Qnil; /* dummy */ }