From d6b9c4f17a7bc2768dcc591ab75d003f7402cd28 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Thu, 29 Sep 2016 19:24:18 +0200 Subject: [PATCH] Prevent some Coverity warnings --- tasks/task_content.c | 18 ++++++++++++------ tasks/task_decompress.c | 5 ++--- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/tasks/task_content.c b/tasks/task_content.c index 9fee1d04ce..b8da40945d 100644 --- a/tasks/task_content.c +++ b/tasks/task_content.c @@ -711,13 +711,17 @@ static bool init_content_file_set_attribs( **/ static bool content_file_init(struct string_list *temporary_content) { - unsigned i; struct retro_game_info *info = NULL; + struct string_list *content = NULL; bool ret = false; const struct retro_subsystem_info *special = init_content_file_subsystem(&ret); - struct string_list *content = string_list_new(); - if (!ret || !content) + if (!ret) + goto error; + + content = string_list_new(); + + if (!content) goto error; if (!init_content_file_set_attribs(temporary_content, @@ -728,13 +732,15 @@ static bool content_file_init(struct string_list *temporary_content) calloc(content->size, sizeof(*info)); if (info) + { + unsigned i; ret = load_content(temporary_content, info, content, special); - for (i = 0; i < content->size; i++) - free((void*)info[i].data); + for (i = 0; i < content->size; i++) + free((void*)info[i].data); - if (info) free(info); + } error: if (content) diff --git a/tasks/task_decompress.c b/tasks/task_decompress.c index e9787abfb6..ccc9b3c546 100644 --- a/tasks/task_decompress.c +++ b/tasks/task_decompress.c @@ -147,7 +147,7 @@ static void task_decompress_handler(retro_task_t *task) int ret; bool retdec = false; struct archive_extract_userdata userdata = {{0}}; - decompress_state_t *dec = task ? (decompress_state_t*)task->state : NULL; + decompress_state_t *dec = (decompress_state_t*)task->state; userdata.dec = dec; strlcpy(userdata.archive_path, dec->source_file, sizeof(userdata.archive_path)); @@ -172,8 +172,7 @@ static void task_decompress_handler_target_file(retro_task_t *task) bool retdec; int ret; struct archive_extract_userdata userdata = {{0}}; - decompress_state_t *dec = task ? - (decompress_state_t*)task->state : NULL; + decompress_state_t *dec = (decompress_state_t*)task->state; strlcpy(userdata.archive_path, dec->source_file, sizeof(userdata.archive_path));