mtd: nandsim: Fix kasprintf() usage
kasprintf() used in get_partition_name() does a dynamic memory allocation and can fail. We have to handle that case. Signed-off-by: Richard Weinberger <richard@nod.at> Signed-off-by: Brian Norris <computersforpeace@gmail.com>
This commit is contained in:
Родитель
bc349da0a6
Коммит
641c7925b6
|
@ -743,6 +743,11 @@ static int init_nandsim(struct mtd_info *mtd)
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
ns->partitions[i].name = get_partition_name(i);
|
ns->partitions[i].name = get_partition_name(i);
|
||||||
|
if (!ns->partitions[i].name) {
|
||||||
|
NS_ERR("unable to allocate memory.\n");
|
||||||
|
ret = -ENOMEM;
|
||||||
|
goto error;
|
||||||
|
}
|
||||||
ns->partitions[i].offset = next_offset;
|
ns->partitions[i].offset = next_offset;
|
||||||
ns->partitions[i].size = part_sz;
|
ns->partitions[i].size = part_sz;
|
||||||
next_offset += ns->partitions[i].size;
|
next_offset += ns->partitions[i].size;
|
||||||
|
@ -756,6 +761,11 @@ static int init_nandsim(struct mtd_info *mtd)
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
ns->partitions[i].name = get_partition_name(i);
|
ns->partitions[i].name = get_partition_name(i);
|
||||||
|
if (!ns->partitions[i].name) {
|
||||||
|
NS_ERR("unable to allocate memory.\n");
|
||||||
|
ret = -ENOMEM;
|
||||||
|
goto error;
|
||||||
|
}
|
||||||
ns->partitions[i].offset = next_offset;
|
ns->partitions[i].offset = next_offset;
|
||||||
ns->partitions[i].size = remains;
|
ns->partitions[i].size = remains;
|
||||||
ns->nbparts += 1;
|
ns->nbparts += 1;
|
||||||
|
|
Загрузка…
Ссылка в новой задаче