From 5d4f2e2d9eb0548d880b130cc15733662fc57158 Mon Sep 17 00:00:00 2001 From: cnlohr Date: Wed, 25 Apr 2018 23:40:13 -0400 Subject: remove printf, process multiple UDP packets per slice. --- src/survive_driver_udp.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/survive_driver_udp.c') diff --git a/src/survive_driver_udp.c b/src/survive_driver_udp.c index 9c0904a..8000749 100644 --- a/src/survive_driver_udp.c +++ b/src/survive_driver_udp.c @@ -37,6 +37,8 @@ typedef struct SurviveDriverUDP SurviveDriverUDP; static int UDP_poll(struct SurviveContext *ctx, void *_driver) { SurviveDriverUDP *driver = _driver; int cnt; + for( ;; ) + { cnt = recvfrom(driver->sock, (char *) &sendbuf, sizeof(sendbuf), MSG_DONTWAIT | MSG_NOSIGNAL , (struct sockaddr *) &driver->addr, &driver->addrlen); if (cnt < 0) { // perror("recvfrom"); @@ -53,8 +55,7 @@ static int UDP_poll(struct SurviveContext *ctx, void *_driver) { le.length = sendbuf.length_event * 48 / 160; //16 bits le.timestamp = sendbuf.ccount_struc * 48 / 160; //32 bits handle_lightcap(driver->so, &le); - - + } /* To emit an IMU event, send this: -- cgit v1.2.3