Source
62
62
char *argv_str;
63
63
bool was_space;
64
64
char **argv, **argv_ret;
65
65
int argc;
66
66
67
67
argv_str = kstrndup(str, KMALLOC_MAX_SIZE - 1, gfp);
68
68
if (!argv_str)
69
69
return NULL;
70
70
71
71
argc = count_argc(argv_str);
72
-
argv = kmalloc(sizeof(*argv) * (argc + 2), gfp);
72
+
argv = kmalloc_array(argc + 2, sizeof(*argv), gfp);
73
73
if (!argv) {
74
74
kfree(argv_str);
75
75
return NULL;
76
76
}
77
77
78
78
*argv = argv_str;
79
79
argv_ret = ++argv;
80
80
for (was_space = true; *argv_str; argv_str++) {
81
81
if (isspace(*argv_str)) {
82
82
was_space = true;