From: Russell Bryant Date: Wed, 3 Sep 2008 13:26:43 +0000 (+0000) Subject: Merged revisions 140816 via svnmerge from X-Git-Tag: 1.6.2.0-beta1~1332 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=655b8f09a76f65f1bb21efa11f76fb84fd8f9467;p=thirdparty%2Fasterisk.git Merged revisions 140816 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r140816 | russell | 2008-09-03 08:24:35 -0500 (Wed, 03 Sep 2008) | 4 lines Don't freak out if the poll emulation receives NULL for the pollfds array (closes issue #13307) Reported by: jcovert ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@140817 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/poll.c b/main/poll.c index 731dbcefba..823d0cbd43 100644 --- a/main/poll.c +++ b/main/poll.c @@ -268,19 +268,19 @@ int poll fd_set except_descs; /* exception descs */ struct timeval stime; /* select() timeout value */ int ready_descriptors; /* function result */ - int max_fd; /* maximum fd value */ + int max_fd = 0; /* maximum fd value */ struct timeval *pTimeout; /* actually passed */ FD_ZERO (&read_descs); FD_ZERO (&write_descs); FD_ZERO (&except_descs); - assert(pArray != (struct pollfd *) NULL); - /* Map the poll() file descriptor list in the select() data structures. */ - max_fd = map_poll_spec(pArray, n_fds, - &read_descs, &write_descs, &except_descs); + if (pArray) { + max_fd = map_poll_spec (pArray, n_fds, + &read_descs, &write_descs, &except_descs); + } /* Map the poll() timeout value in the select() timeout structure. */ pTimeout = map_timeout(timeout, &stime);