[CID-119737] Fix NULL pointer dereferences 09/183609/1 accepted/tizen_4.0_unified accepted/tizen/4.0/unified/20180709.132359 submit/tizen_4.0/20180709.042912
authorSeonah Moon <seonah1.moon@samsung.com>
Mon, 9 Jul 2018 04:16:50 +0000 (13:16 +0900)
committerSeonah Moon <seonah1.moon@samsung.com>
Mon, 9 Jul 2018 04:16:54 +0000 (13:16 +0900)
Change-Id: Ic1a3140674f155bb225abe40442598d297fddff7

packaging/capi-network-http.spec
src/http_session.c

index ecc64c04edefc10432b91b967ae20bd3b653c80f..d2fa6592f5303704aee68a32304a8932aee38fb0 100644 (file)
@@ -1,6 +1,6 @@
 Name:          capi-network-http
 Summary:       Http Framework
-Version:       0.0.32
+Version:       0.0.33
 Release:       0
 Group:         System/Network
 License:       Apache-2.0
index 39b55e54e052718e034e06cd955adb81ac61db43..ab6cdd3abc4e74b58b98c5915f1e8ca1f2182c27 100644 (file)
@@ -30,14 +30,21 @@ static void _handle_completed_transaction(__http_session_h *user_data)
        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);