From 9e22c8390c0ff2e925762c636969e5a584c0b8a7 Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 23 Jan 2009 04:25:29 +0000 Subject: [PATCH] * signal.c (trap_handler): also accepts symbols. [ruby-dev:37823] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21746 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 4 ++++ signal.c | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/ChangeLog b/ChangeLog index 43c2848fce..3486ba9250 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Fri Jan 23 13:26:45 2009 Nobuyoshi Nakada + + * signal.c (trap_handler): also accepts symbols. [ruby-dev:37823] + Thu Jan 22 18:14:04 2009 Nobuyoshi Nakada * lib/mkmf.rb (create_makefile): removes installed files under diff --git a/signal.c b/signal.c index 85f4c90b70..f3cfbc84d6 100644 --- a/signal.c +++ b/signal.c @@ -753,6 +753,10 @@ trap_handler(VALUE *cmd, int sig) } else { command = rb_check_string_type(*cmd); + if (NIL_P(command) && SYMBOL_P(*cmd)) { + command = rb_id2str(SYM2ID(*cmd)); + if (!command) rb_raise(rb_eArgError, "bad handler"); + } if (!NIL_P(command)) { SafeStringValue(command); /* taint check */ *cmd = command;