diff options
Diffstat (limited to 'pjlib/src/pj/ioqueue_epoll.c')
-rw-r--r-- | pjlib/src/pj/ioqueue_epoll.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/pjlib/src/pj/ioqueue_epoll.c b/pjlib/src/pj/ioqueue_epoll.c index 780ea37b..72e354d3 100644 --- a/pjlib/src/pj/ioqueue_epoll.c +++ b/pjlib/src/pj/ioqueue_epoll.c @@ -400,8 +400,10 @@ PJ_DEF(int) pj_ioqueue_poll( pj_ioqueue_t *ioqueue, const pj_time_val *timeout) msec = timeout ? PJ_TIME_VAL_MSEC(*timeout) : 9000; count = os_epoll_wait( ioqueue->epfd, events, PJ_ARRAY_SIZE(events), msec); - if (count <= 0) + if (count == 0) return count; + else if (count < 0) + return -pj_get_netos_error(); /* Lock ioqueue. */ pj_lock_acquire(ioqueue->lock); |