From ee750a8a8b469f6c022d5096ab287d51a8c1b3de Mon Sep 17 00:00:00 2001 From: nobu Date: Wed, 8 Jul 2015 05:05:12 +0000 Subject: pass saved errno * ext/socket/socket.c (socket_s_ip_address_list): pass saved errno to rb_syserr_fail. * ext/readline/readline.c (readline_getc, readline_s_set_input), (readline_s_set_output): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/readline/readline.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'ext/readline') diff --git a/ext/readline/readline.c b/ext/readline/readline.c index 140bd7f578..754f981c1a 100644 --- a/ext/readline/readline.c +++ b/ext/readline/readline.c @@ -229,8 +229,7 @@ readline_getc(FILE *input) goto again; rb_sys_fail("rb_wait_for_single_fd"); } - errno = data.err; - rb_sys_fail("read"); + rb_syserr_fail(data.err, "read"); } return data.ret; } @@ -557,8 +556,7 @@ readline_s_set_input(VALUE self, VALUE input) if (f == NULL) { int save_errno = errno; close(fd); - errno = save_errno; - rb_sys_fail("fdopen"); + rb_syserr_fail(save_errno, "fdopen"); } rl_instream = readline_rl_instream = f; readline_instream = input; @@ -594,8 +592,7 @@ readline_s_set_output(VALUE self, VALUE output) if (f == NULL) { int save_errno = errno; close(fd); - errno = save_errno; - rb_sys_fail("fdopen"); + rb_syserr_fail(save_errno, "fdopen"); } rl_outstream = readline_rl_outstream = f; readline_outstream = output; -- cgit v1.2.3