From 8506e078c5619a8b5a66437d33355919e6122250 Mon Sep 17 00:00:00 2001 From: Russell Bryant Date: Fri, 19 May 2006 19:01:17 +0000 Subject: [PATCH] This explicit poll is only needed on mac. In fact, it breaks some systems such as some versions of Fedora, causing 'asterisk -rx' to never exit. This has been tested on systems showing the asterisk -rx problem, as well as other unaffected versions of linux, mac osx 10.4, and FreeBSD 6. (issue #7071) git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2@28754 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- asterisk.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/asterisk.c b/asterisk.c index 334d322df4..c0605f036c 100644 --- a/asterisk.c +++ b/asterisk.c @@ -1803,13 +1803,17 @@ static void ast_remotecontrol(char * data) if (option_exec && data) { /* hack to print output then exit if asterisk -rx is used */ char tempchar; +#ifdef __Darwin__ struct pollfd fds[0]; fds[0].fd = ast_consock; fds[0].events = POLLIN; fds[0].revents = 0; - while(poll(fds, 1, 100) > 0) { + while (poll(fds, 1, 100) > 0) { ast_el_read_char(el, &tempchar); } +#else + while (!ast_el_read_char(el, &tempchar)); +#endif return; } for(;;) {