summaryrefslogtreecommitdiff
path: root/signal.c
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-09-23 11:37:23 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-09-23 11:37:23 +0000
commit445e26fb00e8ce7e9f1785579abfd5662880f3f1 (patch)
treec4204055f5018d0fc1bec425d7520dc008ddea61 /signal.c
parent83abcf5a2c174bb76f258384d3a8f90cc5014928 (diff)
* signal.c (signal_exec): fix to use rb_proc_call().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'signal.c')
-rw-r--r--signal.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/signal.c b/signal.c
index 728fd2d65d..34a8175a9d 100644
--- a/signal.c
+++ b/signal.c
@@ -565,15 +565,13 @@ sigpipe(int sig)
static void
signal_exec(VALUE cmd, int safe, int sig)
{
- rb_proc_t *proc;
- VALUE signum = INT2FIX(sig);
+ VALUE signumary = rb_ary_new3(1, INT2FIX(sig));
if (TYPE(cmd) == T_STRING) {
- rb_eval_cmd(cmd, rb_ary_new3(1, signum), safe);
+ rb_eval_cmd(cmd, signumary, safe);
return;
}
- GetProcPtr(cmd, proc);
- vm_invoke_proc(GET_THREAD(), proc, proc->block.self, 1, &signum, 0);
+ rb_proc_call(cmd, signumary);
}
void