1
0
mirror of https://github.com/libretro/RetroArch synced 2024-07-08 12:15:49 +00:00

Two fixes for copy_load_info.c

* Additional check before copying data in clone_retro_game_info
* Sizes the dest string list in string_list_clone to capacity rather than size
This commit is contained in:
Dwedit 2018-04-24 10:32:31 -05:00
parent 16df2ceb4e
commit dd6eb92352

View File

@ -37,12 +37,15 @@ static struct retro_game_info* clone_retro_game_info(const
dest->data = NULL;
dest->path = strcpy_alloc(src->path);
data = malloc(src->size);
if (data)
if (src->size && src->data)
{
memcpy(data, src->data, src->size);
dest->data = data;
data = malloc(src->size);
if (data)
{
memcpy(data, src->data, src->size);
dest->data = data;
}
}
dest->size = src->size;
@ -77,9 +80,13 @@ static struct string_list *string_list_clone(
dest->size = src->size;
dest->cap = src->cap;
if (dest->cap < dest->size)
{
dest->cap = dest->size;
}
elems = (struct string_list_elem*)
calloc(dest->size, sizeof(struct string_list_elem));
calloc(dest->cap, sizeof(struct string_list_elem));
if (!elems)
{