From d78f1d48cff45f6bd223febd10db98ff7294f0d7 Mon Sep 17 00:00:00 2001 From: Cedric BAIL Date: Thu, 19 Nov 2009 18:45:51 +0000 Subject: [PATCH] * ecore_con_url: When download was broken in the middle, you could have a status of 200 without all data being downloaded. This should fix this case. SVN revision: 43805 --- legacy/ecore/src/lib/ecore_con/ecore_con_url.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/legacy/ecore/src/lib/ecore_con/ecore_con_url.c b/legacy/ecore/src/lib/ecore_con/ecore_con_url.c index 38c25bdc01..ccfb9801e9 100644 --- a/legacy/ecore/src/lib/ecore_con/ecore_con_url.c +++ b/legacy/ecore/src/lib/ecore_con/ecore_con_url.c @@ -1186,12 +1186,17 @@ _ecore_con_url_process_completed_jobs(Ecore_Con_Url *url_con_to_match) e = calloc(1, sizeof(Ecore_Con_Event_Url_Complete)); if (e) { - long status; /* curl API uses long, not int */ - e->url_con = url_con; e->status = 0; - curl_easy_getinfo(curlmsg->easy_handle, CURLINFO_RESPONSE_CODE, &status); - e->status = status; + if (curlmsg->data.result == CURLE_OK) + { + long status; /* curl API uses long, not int */ + + status = 0; + curl_easy_getinfo(curlmsg->easy_handle, CURLINFO_RESPONSE_CODE, &status); + e->status = status; + } + _url_complete_push_event(ECORE_CON_EVENT_URL_COMPLETE, e); } curl_multi_remove_handle(curlm, url_con->curl_easy);