Wednesday, 2 July 2014

Re: Object fetchers moved to scheduled operation

>
> Seems to work on Haiku.

good to hear

>
> Btw, straight from select(2) manpage:
> "nfds is the highest-numbered file descriptor in any of the three sets,
> plus 1."
> So the @todo is solved :D
>

I fear one of us is misunderstanding.

The fetcher_fdset() api will return an fd set and the number of the
highest used fd in that set for example if the returned set has
4,5,7,8,9 in it the max_fd variable will be 9.

if your sEventPipe[0] is (as an example) fd 6 then the select in this
case wants to see an fdset with 4,5,6,7,8,9 in it and nfds as 10
(i.e. 9 + 1)

Surely that means the todo was asking if the max_fd needed 1 adding to
it inside the MAX statement? a sit stands in my example nfds will be
passed to select as 9 not 10? and actually it would better read as:

max_fd = MAX(max_fd, sEventPipe[0]) + 1;

though that would mean we are reusing max_fd instead of having a
separate nfds which is a bit dirty but understandable.

Perhaps I have misunderstood though. this is why it was left as a todo
for the maintainer, though even if it is wrong at worst the browser
waits a second for the polling to resume so its not a big deal.

--
Regards Vincent
http://www.kyllikki.org/

No comments:

Post a Comment