I think removing the check is fine. If socket=NULL and fd=0 is a valid
combination, the code shouldn't treat it as an error. In any case this
isn't documented behavior in any way, so you are free to change it.

On Thu, Mar 13, 2014 at 9:09 PM, Michael Haberler <[email protected]> wrote:
> trying to use zloop for reading with libreadline on stdin, while handling 
> other events
>
> this doesnt work because fd 0 is considered invalid in zloop.c:328 ; if I 
> disable the check that works just fine
>
> I see two ways to resolve the situation:
>
> - consider a zmq_pollitem with socket=NULL and fd=0 as valid, to mean: poll 
> on fd 0
> - explicitly set an invalid fd to -1, which is an API change
>
> I would prefer the first option - please advise
>
> - Michael
>
>
> int
> zloop_poller (zloop_t *self, zmq_pollitem_t *item, zloop_fn handler, void 
> *arg)
> {
>     assert (self);
>
>     // suggestion: remove this test:
>     if (!item->socket && !item->fd)
>         return -1;
> _______________________________________________
> zeromq-dev mailing list
> [email protected]
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
_______________________________________________
zeromq-dev mailing list
[email protected]
http://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to