Merged revisions 33753 via svnmerge from
authorRussell Bryant <russell@russellbryant.com>
Tue, 13 Jun 2006 03:56:09 +0000 (03:56 +0000)
committerRussell Bryant <russell@russellbryant.com>
Tue, 13 Jun 2006 03:56:09 +0000 (03:56 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r33753 | russell | 2006-06-12 23:55:11 -0400 (Mon, 12 Jun 2006) | 5 lines

revert a change that caused more problems than it fixed and fix the real
problem in this code.  fds was declared as an array of zero size which caused
some weird problems, some of which would only be seen when compiling without
optimizations.  (fixes issues #7071, #7326, and #7305)

........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@33754 65c4cc65-6c06-0410-ace0-fbb531ad65f3

asterisk.c

index 819d998..1b899ea 100644 (file)
@@ -2088,17 +2088,12 @@ static void ast_remotecontrol(char * data)
 
        if (ast_opt_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) {
+               struct pollfd fds;
+               fds.fd = ast_consock;
+               fds.events = POLLIN;
+               fds.revents = 0;
+               while (poll(&fds, 1, 100) > 0)
                        ast_el_read_char(el, &tempchar);
-               }
-#else
-               while (!ast_el_read_char(el, &tempchar));
-#endif
                return;
        }
        for (;;) {