From c8d1733d12ac6cb283f21f3f647c522aabeb2744 Mon Sep 17 00:00:00 2001 From: Steve Holme Date: Mon, 10 Feb 2014 23:01:03 +0000 Subject: tool_cfgable: Moved easy handle cleanup to fix pingpong logout issues Commmit c5f8e2f5f4 removed the easy handle clean-up from tool_operate, letting the code that was already present in free_config_fields() perform the task. Unfortunately, this wasn't the correct place to do this as it broke protocols, that would perform a logout, as the main clean-up in tool_main had already been called. --- src/tool_cfgable.c | 5 ----- src/tool_operate.c | 5 +++++ 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/tool_cfgable.c b/src/tool_cfgable.c index 3ea73dabd..818d7f4d4 100644 --- a/src/tool_cfgable.c +++ b/src/tool_cfgable.c @@ -47,11 +47,6 @@ static void free_config_fields(struct Configurable *config) { struct getout *urlnode; - if(config->easy) { - curl_easy_cleanup(config->easy); - config->easy = NULL; - } - Curl_safefree(config->random_file); Curl_safefree(config->egd_file); Curl_safefree(config->useragent); diff --git a/src/tool_operate.c b/src/tool_operate.c index b28321043..9c61623fe 100644 --- a/src/tool_operate.c +++ b/src/tool_operate.c @@ -1806,6 +1806,11 @@ static int operate_do(struct Configurable *config) static void operate_free(struct Configurable *config) { + if(config->easy) { + curl_easy_cleanup(config->easy); + config->easy = NULL; + } + /* Release metalink related resources here */ clean_metalink(config); } -- cgit v1.2.3