[Kernel][Object] Remove object name assertions, use rt_strncpy for safe truncation #10943

This commit is contained in:
Copilot
2025-11-19 14:10:43 +08:00
committed by GitHub
parent 75f1d8d0dc
commit 45f2246f73

View File

@@ -399,10 +399,9 @@ void rt_object_init(struct rt_object *object,
if(obj_name_len > RT_NAME_MAX - 1)
{
LOG_E("Object name %s exceeds RT_NAME_MAX=%d, consider increasing RT_NAME_MAX.", name, RT_NAME_MAX);
RT_ASSERT(obj_name_len <= RT_NAME_MAX - 1);
}
rt_memcpy(object->name, name, obj_name_len);
object->name[obj_name_len] = '\0';
rt_strncpy(object->name, name, RT_NAME_MAX - 1);
object->name[RT_NAME_MAX - 1] = '\0';
}
else
{
@@ -515,10 +514,9 @@ rt_object_t rt_object_allocate(enum rt_object_class_type type, const char *name)
if(obj_name_len > RT_NAME_MAX - 1)
{
LOG_E("Object name %s exceeds RT_NAME_MAX=%d, consider increasing RT_NAME_MAX.", name, RT_NAME_MAX);
RT_ASSERT(obj_name_len <= RT_NAME_MAX - 1);
}
rt_memcpy(object->name, name, obj_name_len);
object->name[obj_name_len] = '\0';
rt_strncpy(object->name, name, RT_NAME_MAX - 1);
object->name[RT_NAME_MAX - 1] = '\0';
}
else
{