Skip to content

Commit

Permalink
Merge pull request #20 from jandryuk/blocking-select
Browse files Browse the repository at this point in the history
Use 1 select() call and let it block
  • Loading branch information
jean-edouard authored Nov 13, 2018
2 parents c269a8c + d016da7 commit 099ce18
Showing 1 changed file with 5 additions and 11 deletions.
16 changes: 5 additions & 11 deletions src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,6 @@ static void fill_vms()
int
main() {
int ret;
struct timeval tv;
fd_set readfds;
fd_set writefds;
fd_set exceptfds;
Expand Down Expand Up @@ -125,18 +124,13 @@ main() {
FD_ZERO(&readfds);
FD_ZERO(&writefds);
FD_ZERO(&exceptfds);
tv.tv_sec = 0;
tv.tv_usec = 1000;
nfds = xcdbus_pre_select(g_xcbus, 0, &readfds, &writefds, &exceptfds);
select(nfds, &readfds, &writefds, &exceptfds, &tv);
xcdbus_post_select(g_xcbus, 0, &readfds, &writefds, &exceptfds);

/* Check udev */
FD_ZERO(&readfds);
FD_SET(udevfd, &readfds);
tv.tv_sec = 0;
tv.tv_usec = 1000;
ret = select(udevfd + 1, &readfds, NULL, NULL, &tv);
nfds = udevfd + 1;

nfds = xcdbus_pre_select(g_xcbus, nfds, &readfds, &writefds, &exceptfds);
ret = select(nfds, &readfds, &writefds, &exceptfds, NULL);
xcdbus_post_select(g_xcbus, nfds, &readfds, &writefds, &exceptfds);
if (ret > 0 && FD_ISSET(udevfd, &readfds))
udev_event();
}
Expand Down

0 comments on commit 099ce18

Please sign in to comment.