diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | signal.c | 4 |
2 files changed, 8 insertions, 0 deletions
@@ -1,3 +1,7 @@ +Fri Jan 23 13:26:45 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * signal.c (trap_handler): also accepts symbols. [ruby-dev:37823] + Thu Jan 22 18:14:04 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> * lib/mkmf.rb (create_makefile): removes installed files under @@ -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; |