modules: loop_add_io with close=true owns the fd

We should not close the fd when loop_add_io with close=true fails
because the fd is already closed.
This commit is contained in:
Wim Taymans 2026-05-05 18:38:21 +02:00
parent eec372ba9d
commit 8907d0860b
6 changed files with 9 additions and 20 deletions

View file

@ -1197,10 +1197,8 @@ static int setup_apple_session(struct impl *impl)
impl->ctrl_source = pw_loop_add_io(impl->loop, fd,
SPA_IO_IN, true, on_ctrl_io, impl);
if (impl->ctrl_source == NULL) {
close(fd);
if (impl->ctrl_source == NULL)
return -errno;
}
if ((fd = make_socket(&impl->data_addr, impl->data_len,
impl->mcast_loop, impl->ttl, impl->ifname)) < 0)
@ -1208,10 +1206,8 @@ static int setup_apple_session(struct impl *impl)
impl->data_source = pw_loop_add_io(impl->data_loop, fd,
SPA_IO_IN, true, on_data_io, impl);
if (impl->data_source == NULL) {
close(fd);
if (impl->data_source == NULL)
return -errno;
}
return 0;
}