char* url = NULL;
CURLcode curl_code = CURLE_OK;
+ if (!session) return;
+
message = curl_multi_info_read(session->multi_handle, &count);
while (message != NULL) {
if (message->msg == CURLMSG_DONE) {
curl_easy = message->easy_handle;
curl_code = message->data.result;
- curl_easy_getinfo(curl_easy, CURLINFO_PRIVATE, &transaction);
- curl_easy_getinfo(curl_easy, CURLINFO_EFFECTIVE_URL, &url);
+
+ if (curl_easy) {
+ curl_easy_getinfo(curl_easy, CURLINFO_PRIVATE, &transaction);
+ curl_easy_getinfo(curl_easy, CURLINFO_EFFECTIVE_URL, &url);
+ }
+
+ if (!transaction) break;
if (transaction->upload_event)
_close_upload_file(transaction);