[asterisk-commits] mmichelson: branch 1.6.0 r122715 - in /branches/1.6.0: ./ main/autoservice.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Fri Jun 13 16:47:53 CDT 2008


Author: mmichelson
Date: Fri Jun 13 16:47:53 2008
New Revision: 122715

URL: http://svn.digium.com/view/asterisk?view=rev&rev=122715
Log:
Merged revisions 122714 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/trunk

................
r122714 | mmichelson | 2008-06-13 16:45:21 -0500 (Fri, 13 Jun 2008) | 17 lines

Merged revisions 122713 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r122713 | mmichelson | 2008-06-13 16:44:53 -0500 (Fri, 13 Jun 2008) | 9 lines

Short circuit the loop in autoservice_run if there are no channels to poll.
If we continued, then the result would be calling poll() with a NULL
pollfd array. While this is fine with POSIX's poll(2) system call, those
who use Asterisk's internal poll mechanism (Darwin systems) would have
a failed assertion occur when poll is called.

(related to issue #10342)


........

................

Modified:
    branches/1.6.0/   (props changed)
    branches/1.6.0/main/autoservice.c

Propchange: branches/1.6.0/
------------------------------------------------------------------------------
Binary property 'trunk-merged' - no diff available.

Modified: branches/1.6.0/main/autoservice.c
URL: http://svn.digium.com/view/asterisk/branches/1.6.0/main/autoservice.c?view=diff&rev=122715&r1=122714&r2=122715
==============================================================================
--- branches/1.6.0/main/autoservice.c (original)
+++ branches/1.6.0/main/autoservice.c Fri Jun 13 16:47:53 2008
@@ -100,6 +100,10 @@
 		}
 
 		AST_LIST_UNLOCK(&aslist);
+
+		if (!x) {
+			continue;
+		}
 
 		chan = ast_waitfor_n(mons, x, &ms);
 		if (!chan) {




More information about the asterisk-commits mailing list