==14387== Invalid read of size 4
==14387== at 0x4095D3: check_sockets (curl.c:88)
==14387== by 0x4096B9: timeout_callback (curl.c:201)
==14387== by 0x3993A435EA: g_timeout_dispatch (gmain.c:3585)
==14387== by 0x3993A41E32: g_main_context_dispatch (gmain.c:2149)
==14387== by 0x3993A4260F: g_main_context_iterate.clone.5 (gmain.c:2780)
==14387== by 0x3993A42C81: g_main_loop_run (gmain.c:2988)
==14387== by 0x409BD4: main (main.c:173)
==14387== Address 0x5290680 is 16 bytes inside a block of size 32 free'd
==14387== at 0x4A05187: free (vg_replace_malloc.c:325)
==14387== by 0x39A963630F: curl_multi_remove_handle (in
/usr/lib64/libcurl.so.4.2.0)
==14387== by 0x4095BE: check_sockets (curl.c:84)
==14387== by 0x4096B9: timeout_callback (curl.c:201)
==14387== by 0x3993A435EA: g_timeout_dispatch (gmain.c:3585)
==14387== by 0x3993A41E32: g_main_context_dispatch (gmain.c:2149)
==14387== by 0x3993A4260F: g_main_context_iterate.clone.5 (gmain.c:2780)
==14387== by 0x3993A42C81: g_main_loop_run (gmain.c:2988)
==14387== by 0x409BD4: main (main.c:173)
==14387==
---
plugins/curl.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/plugins/curl.c b/plugins/curl.c
index b8e2ff7..5fcf1c5 100644
--- a/plugins/curl.c
+++ b/plugins/curl.c
@@ -81,9 +81,6 @@ static void check_sockets(CURLM *multi, CURLMcode result, int
handles)
DBG("finished %s result %d", eff_url, msg->data.result);
- curl_multi_remove_handle(multi, easy);
- curl_easy_cleanup(easy);
-
if (download->callback) {
if (msg->data.result == 0) {
str = g_string_free(download->content, FALSE);
@@ -95,6 +92,9 @@ static void check_sockets(CURLM *multi, CURLMcode result, int
handles)
} else
g_string_free(download->content, TRUE);
+ curl_multi_remove_handle(multi, easy);
+ curl_easy_cleanup(easy);
+
g_free(download->url);
g_free(download);
} while (msgs_left > 0);
--
1.7.3.2
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman