From 5dfde44c56e8fc833ea08a246b49076256819ba0 Mon Sep 17 00:00:00 2001 From: Lorenz Meier Date: Tue, 21 May 2013 09:12:54 +0200 Subject: [PATCH] Fixed va args in MAVLink, tested with RC config, correct output --- src/modules/mavlink/mavlink_log.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/modules/mavlink/mavlink_log.c b/src/modules/mavlink/mavlink_log.c index 6395ab214a..1cf073fc8b 100644 --- a/src/modules/mavlink/mavlink_log.c +++ b/src/modules/mavlink/mavlink_log.c @@ -103,13 +103,12 @@ __EXPORT void mavlink_vasprintf(int _fd, int severity, const char *fmt, ...) { va_list ap; va_start(ap, fmt); - struct mavlink_logmessage msg; - msg.severity = severity; - vsnprintf(msg.text, sizeof(msg.text), fmt, ap); + char text[MAVLINK_LOG_MAXLEN + 1]; + vsnprintf(text, sizeof(text), fmt, ap); va_end(ap); #ifdef __cplusplus - ::ioctl(_fd, msg.severity, (unsigned long)msg.text); + ::ioctl(_fd, severity, (unsigned long)&text[0]); #else - ioctl(_fd, msg.severity, (unsigned long)msg.text); + ioctl(_fd, severity, (unsigned long)&text[0]); #endif }