From 985243c932220338f3366650daf562a96fdca7a8 Mon Sep 17 00:00:00 2001 From: Lorenz Meier Date: Sun, 20 Sep 2015 15:06:27 +0200 Subject: [PATCH] Merged --- src/modules/simulator/simulator_mavlink.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/modules/simulator/simulator_mavlink.cpp b/src/modules/simulator/simulator_mavlink.cpp index 7f55db47bb..cc4ef2bdaa 100644 --- a/src/modules/simulator/simulator_mavlink.cpp +++ b/src/modules/simulator/simulator_mavlink.cpp @@ -458,10 +458,15 @@ void Simulator::pollForMAVLinkMessages(bool publish) char serial_buf[1024]; struct pollfd fds[2]; + unsigned fd_count = 1; fds[0].fd = _fd; fds[0].events = POLLIN; - fds[1].fd = serial_fd; - fds[1].events = POLLIN; + + if (serial_fd >= 0) { + fds[1].fd = serial_fd; + fds[1].events = POLLIN; + fd_count++; + } int len = 0; @@ -496,7 +501,7 @@ void Simulator::pollForMAVLinkMessages(bool publish) // wait for new mavlink messages to arrive while (true) { - pret = ::poll(&fds[0], (sizeof(fds) / sizeof(fds[0])), 100); + pret = ::poll(&fds[0], fd_count, 100); //timed out if (pret == 0) {