diff --git a/lib/kobject_uevent.c b/lib/kobject_uevent.c index ddbc4d7482d2..25c89a36fb39 100644 --- a/lib/kobject_uevent.c +++ b/lib/kobject_uevent.c @@ -83,7 +83,8 @@ static int kobject_action_type(const char *buf, size_t count, for (action = 0; action < ARRAY_SIZE(kobject_actions); action++) { if (strncmp(kobject_actions[action], buf, count_first) != 0) continue; - if (kobject_actions[action][count_first] != '\0') + if (count_first <= strlen(kobject_actions[action]) && + kobject_actions[action][count_first] != '\0') continue; if (args) *args = args_start;