From abcfe29c640315848f5080f57ec4c7117dc3f988 Mon Sep 17 00:00:00 2001 From: Thomas Gubler Date: Sat, 27 Oct 2012 17:16:10 +0200 Subject: [PATCH] small temporary bugfix/workaround in mavlink uorb listener --- apps/mavlink/orb_listener.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/mavlink/orb_listener.c b/apps/mavlink/orb_listener.c index 90b0073cfc..8a604d6c13 100644 --- a/apps/mavlink/orb_listener.c +++ b/apps/mavlink/orb_listener.c @@ -474,7 +474,6 @@ l_vehicle_attitude_controls(struct listener *l) /* Only send in HIL mode */ if (mavlink_hil_enabled) { - /* translate the current syste state to mavlink state and mode */ uint8_t mavlink_state = 0; uint8_t mavlink_mode = 0; @@ -548,8 +547,12 @@ uorb_receive_thread(void *arg) mavlink_missionlib_send_gcs_string("[mavlink] ERROR reading uORB data"); } else { + static bool updated = false; for (unsigned i = 0; i < n_listeners; i++) { - if (fds[i].revents & POLLIN) + orb_check(*(listeners[i].subp), &updated); +// printf("revents: %d:%d", i, fds[i].revents); +// if (fds[i].revents & POLLIN) + if(updated) listeners[i].callback(&listeners[i]); } }