Ver Fonte

[kernel] 修正复制name字段时潜在的内存踩踏问题

Meco Man há 2 anos atrás
pai
commit
2d17fe736f
1 ficheiros alterados com 2 adições e 1 exclusões
  1. 2 1
      src/object.c

+ 2 - 1
src/object.c

@@ -366,7 +366,8 @@ void rt_object_init(struct rt_object         *object,
     /* set object type to static */
     object->type = type | RT_Object_Class_Static;
     /* copy name */
-    rt_strncpy(object->name, name, RT_NAME_MAX);
+    rt_strncpy(object->name, name, RT_NAME_MAX - 1);
+    object->name[RT_NAME_MAX - 1] = '\0';
 
     RT_OBJECT_HOOK_CALL(rt_object_attach_hook, (object));