From 3031bf6bd46c56f90f1944e41dcb4a5fb9948e40 Mon Sep 17 00:00:00 2001 From: Samuel Williams Date: Wed, 9 Oct 2024 21:50:16 +1300 Subject: Update `UDPSocket#send` to use `rb_io_blocking_region`. --- ext/socket/udpsocket.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'ext/socket/udpsocket.c') diff --git a/ext/socket/udpsocket.c b/ext/socket/udpsocket.c index 5224e48a96..8aada76b26 100644 --- a/ext/socket/udpsocket.c +++ b/ext/socket/udpsocket.c @@ -156,6 +156,7 @@ udp_send_internal(VALUE v) struct addrinfo *res; rb_io_check_closed(fptr = arg->fptr); + for (res = arg->res->ai; res; res = res->ai_next) { retry: arg->sarg.fd = fptr->fd; @@ -166,7 +167,7 @@ udp_send_internal(VALUE v) rb_io_wait(fptr->self, RB_INT2NUM(RUBY_IO_WRITABLE), Qnil); #endif - ssize_t n = (ssize_t)BLOCKING_REGION_FD(rsock_sendto_blocking, &arg->sarg); + ssize_t n = (ssize_t)rb_io_blocking_region(fptr, rsock_sendto_blocking, &arg->sarg); if (n >= 0) return RB_SSIZE2NUM(n); -- cgit v1.2.3