mirror of
https://github.com/libretro/RetroArch.git
synced 2025-02-26 04:36:56 +00:00
Merge pull request #12157 from Jamiras/task_http_cleanup
have http tasks clean up after themselves
This commit is contained in:
commit
e62aabea95
@ -4408,13 +4408,6 @@ finish:
|
||||
subdir_path, 0, 0, 0, ACTION_OK_DL_CORE_CONTENT_DIRS_SUBDIR_LIST);*/
|
||||
}
|
||||
|
||||
if (data)
|
||||
{
|
||||
if (data->data)
|
||||
free(data->data);
|
||||
free(data);
|
||||
}
|
||||
|
||||
if (user_data)
|
||||
free(user_data);
|
||||
}
|
||||
@ -4453,13 +4446,6 @@ finish:
|
||||
refresh = true;
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_UNSET_REFRESH, &refresh);
|
||||
|
||||
if (data)
|
||||
{
|
||||
if (data->data)
|
||||
free(data->data);
|
||||
free(data);
|
||||
}
|
||||
|
||||
if (!err &&
|
||||
!string_ends_with_size(state->path,
|
||||
FILE_PATH_INDEX_DIRS_URL,
|
||||
@ -4770,13 +4756,6 @@ finish:
|
||||
discord_avatar_set_ready(true);
|
||||
#endif
|
||||
|
||||
if (data)
|
||||
{
|
||||
if (data->data)
|
||||
free(data->data);
|
||||
free(data);
|
||||
}
|
||||
|
||||
if (transf)
|
||||
free(transf);
|
||||
}
|
||||
@ -5903,16 +5882,8 @@ finish:
|
||||
if (err)
|
||||
RARCH_ERR("%s: %s\n", msg_hash_to_str(MSG_DOWNLOAD_FAILED), err);
|
||||
|
||||
if (data)
|
||||
{
|
||||
if (data->data)
|
||||
free(data->data);
|
||||
free(data);
|
||||
}
|
||||
|
||||
if (user_data)
|
||||
free(user_data);
|
||||
|
||||
}
|
||||
|
||||
#ifndef RARCH_CONSOLE
|
||||
|
19
retroarch.c
19
retroarch.c
@ -6386,13 +6386,6 @@ finish:
|
||||
if (err)
|
||||
RARCH_ERR("%s: %s\n", msg_hash_to_str(MSG_DOWNLOAD_FAILED), err);
|
||||
|
||||
if (data)
|
||||
{
|
||||
if (data->data)
|
||||
free(data->data);
|
||||
free(data);
|
||||
}
|
||||
|
||||
if (user_data)
|
||||
free(user_data);
|
||||
}
|
||||
@ -7291,10 +7284,7 @@ static void netplay_announce_cb(retro_task_t *task,
|
||||
char *host_string = NULL;
|
||||
|
||||
if (data->len == 0)
|
||||
{
|
||||
free(task_data);
|
||||
return;
|
||||
}
|
||||
|
||||
buf = (char*)calloc(1, data->len + 1);
|
||||
|
||||
@ -7306,7 +7296,6 @@ static void netplay_announce_cb(retro_task_t *task,
|
||||
{
|
||||
string_list_free(lines);
|
||||
free(buf);
|
||||
free(task_data);
|
||||
return;
|
||||
}
|
||||
|
||||
@ -7433,7 +7422,7 @@ static void netplay_announce_cb(retro_task_t *task,
|
||||
|
||||
string_list_free(lines);
|
||||
free(buf);
|
||||
free(task_data);
|
||||
|
||||
if (mitm_ip)
|
||||
free(mitm_ip);
|
||||
if (mitm_port)
|
||||
@ -11637,12 +11626,6 @@ finish:
|
||||
if (error)
|
||||
RARCH_ERR("%s: %s\n", msg_hash_to_str(MSG_DOWNLOAD_FAILED), error);
|
||||
|
||||
if (data)
|
||||
{
|
||||
if (data->data)
|
||||
free(data->data);
|
||||
free(data);
|
||||
}
|
||||
if (user_data)
|
||||
free(user_data);
|
||||
|
||||
|
@ -234,10 +234,13 @@ static void cb_http_task_core_updater_get_list(
|
||||
if (!list_handle)
|
||||
goto finish;
|
||||
|
||||
task_set_data(task, NULL); /* going to pass ownership to list_handle */
|
||||
|
||||
list_handle->http_data = data;
|
||||
list_handle->http_task_complete = true;
|
||||
list_handle->http_task_success = success;
|
||||
|
||||
|
||||
finish:
|
||||
|
||||
/* Log any error messages */
|
||||
@ -258,6 +261,7 @@ static void free_core_updater_list_handle(
|
||||
|
||||
if (list_handle->http_data)
|
||||
{
|
||||
/* since we took onwership, we have to destroy it ourself */
|
||||
if (list_handle->http_data->data)
|
||||
free(list_handle->http_data->data);
|
||||
|
||||
@ -644,13 +648,6 @@ finish:
|
||||
RARCH_ERR("[core updater] Download of '%s' failed: %s\n",
|
||||
(transf ? transf->path: "unknown"), err);
|
||||
|
||||
if (data)
|
||||
{
|
||||
if (data->data)
|
||||
free(data->data);
|
||||
free(data);
|
||||
}
|
||||
|
||||
if (transf)
|
||||
free(transf);
|
||||
}
|
||||
|
@ -224,6 +224,17 @@ task_finished:
|
||||
free(http);
|
||||
}
|
||||
|
||||
static void task_http_transfer_cleanup(retro_task_t *task)
|
||||
{
|
||||
http_transfer_data_t* data = task_get_data(task);
|
||||
if (data)
|
||||
{
|
||||
if (data->data)
|
||||
free(data->data);
|
||||
free(data);
|
||||
}
|
||||
}
|
||||
|
||||
static bool task_http_finder(retro_task_t *task, void *user_data)
|
||||
{
|
||||
http_handle_t *http = NULL;
|
||||
@ -318,6 +329,7 @@ static void* task_push_http_transfer_generic(
|
||||
t->mute = mute;
|
||||
t->callback = cb;
|
||||
t->progress_cb = http_transfer_progress_cb;
|
||||
t->cleanup = task_http_transfer_cleanup;
|
||||
t->user_data = user_data;
|
||||
t->progress = -1;
|
||||
|
||||
|
@ -227,13 +227,6 @@ finish:
|
||||
(transf ? transf->path: "unknown"), err);
|
||||
}
|
||||
|
||||
if (data)
|
||||
{
|
||||
if (data->data)
|
||||
free(data->data);
|
||||
free(data);
|
||||
}
|
||||
|
||||
if (transf)
|
||||
free(transf);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user