diff --git a/tasks/task_netplay_crc.c b/tasks/task_netplay_crc.c index 7e49775768..22ae3484b6 100644 --- a/tasks/task_netplay_crc.c +++ b/tasks/task_netplay_crc.c @@ -50,14 +50,15 @@ static void task_netplay_crc_scan_handler(retro_task_t *task) size_t i, j; task_set_progress(task, 0); - task_set_title(task, "Checking for ROM presence."); + task_set_title(task, strdup("Checking for ROM presence.")); task_set_finished(task, false); if (!state->lpl_list) { task_set_progress(task, 100); - task_set_title(task, "Playlist directory not found."); + task_set_title(task, strdup("Playlist directory not found.")); task_set_finished(task, true); + free(state); return; } @@ -81,9 +82,10 @@ static void task_netplay_crc_scan_handler(retro_task_t *task) if (string_is_equal(playlist->entries[j].crc32, "6BE4CA95|crc")) { task_set_progress(task, 100); - task_set_title(task, "Game found."); + task_set_title(task, strdup("Game found.")); task_set_finished(task, true); string_list_free(state->lpl_list); + free(state); return; } @@ -94,8 +96,9 @@ static void task_netplay_crc_scan_handler(retro_task_t *task) no_playlists: string_list_free(state->lpl_list); task_set_progress(task, 100); - task_set_title(task, "No game found."); + task_set_title(task, strdup("No game found.")); task_set_finished(task, true); + free(state); return; }