mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-05-24 07:09:48 +08:00
uORB: fix segfault in unit test
The unit test was not passing a null pointer terminated argv. The posix port depends on argv being null terminated to determine how may args were passed since PX4 API doesn't pass argc when spawning a new task. Signed-off-by: Mark Charlebois <charlebm@gmail.com>
This commit is contained in:
@@ -35,6 +35,7 @@
|
||||
#define _uORBTest_UnitTest_hpp_
|
||||
#include "uORBCommon.hpp"
|
||||
#include "uORB.h"
|
||||
#include <px4_time.h>
|
||||
|
||||
struct orb_test {
|
||||
int val;
|
||||
@@ -92,6 +93,8 @@ int uORBTest::UnitTest::latency_test(orb_id_t T, bool print)
|
||||
|
||||
int pfd0 = orb_advertise(T, &t);
|
||||
|
||||
char * const args[2] = { (char* const) this, 0 };
|
||||
|
||||
pubsubtest_print = print;
|
||||
|
||||
pubsubtest_passed = false;
|
||||
@@ -103,7 +106,7 @@ int uORBTest::UnitTest::latency_test(orb_id_t T, bool print)
|
||||
SCHED_PRIORITY_MAX - 5,
|
||||
1500,
|
||||
(px4_main_t)&uORBTest::UnitTest::pubsubtest_threadEntry,
|
||||
(char* const*) this);
|
||||
args);
|
||||
|
||||
/* give the test task some data */
|
||||
while (!pubsubtest_passed) {
|
||||
|
||||
Reference in New Issue
Block a user