diff --git a/libretro-sdk/file/file_list.c b/libretro-sdk/file/file_list.c index 1e9d9a4779..6642daa91e 100644 --- a/libretro-sdk/file/file_list.c +++ b/libretro-sdk/file/file_list.c @@ -38,11 +38,17 @@ void file_list_push(file_list_t *list, list->capacity * sizeof(struct item_file)); } - list->list[list->size].label = strdup(label); - list->list[list->size].path = strdup(path); - list->list[list->size].alt = NULL; - list->list[list->size].type = type; + list->list[list->size].label = NULL; + list->list[list->size].path = NULL; + list->list[list->size].alt = NULL; + list->list[list->size].type = type; list->list[list->size].directory_ptr = directory_ptr; + + if (label) + list->list[list->size].label = strdup(label); + if (path) + list->list[list->size].path = strdup(path); + list->size++; }