diff --git a/system/uorb/sensor/topics.c b/system/uorb/sensor/topics.c index 80af39c1b6..d7e5523f44 100644 --- a/system/uorb/sensor/topics.c +++ b/system/uorb/sensor/topics.c @@ -170,5 +170,5 @@ FAR const struct orb_metadata *orb_get_meta(FAR const char *name) return NULL; } - return state.priv; + return (FAR const struct orb_metadata *)(uintptr_t)state.priv; } diff --git a/system/uorb/uORB/uORB.c b/system/uorb/uORB/uORB.c index a84bd1cf79..45f2d469dc 100644 --- a/system/uorb/uORB/uORB.c +++ b/system/uorb/uORB/uORB.c @@ -70,7 +70,7 @@ static int orb_advsub_open(FAR const struct orb_metadata *meta, int flags, if (fd < 0) { struct sensor_reginfo_s reginfo; - reginfo.path = path; + strlcpy(reginfo.path, path, NAME_MAX); reginfo.esize = meta->o_size; reginfo.nbuffer = queue_size; reginfo.persist = !!(flags & SENSOR_PERSIST);