diff --git a/src/drivers/navio_sysfs_rc_in/navio_sysfs_rc_in.cpp b/src/drivers/navio_sysfs_rc_in/navio_sysfs_rc_in.cpp index 07818f5e88..4094d758e4 100644 --- a/src/drivers/navio_sysfs_rc_in/navio_sysfs_rc_in.cpp +++ b/src/drivers/navio_sysfs_rc_in/navio_sysfs_rc_in.cpp @@ -107,12 +107,11 @@ private: int RcInput::navio_rc_init() { int i; - char *buf; + char buf[64]; for (i = 0; i < _channels; ++i) { - ::asprintf(&buf, "%s/ch%d", RCINPUT_DEVICE_PATH_BASE, i); + ::snprintf(buf, sizeof(buf), "%s/ch%d", RCINPUT_DEVICE_PATH_BASE, i); int fd = ::open(buf, O_RDONLY); - ::free(buf); if (fd < 0) { PX4_WARN("error: open %d failed", i);