Hello libcurl Devs/Users, Following the multi-uv.c example, I use multi socket interface to implement a multithreading like DM by setting range for each easy handle in a multi handle. I first add a single easy handle to the multi-handle in the polling loop. Then I try adding second one in the multi-handle with range request set to determine if the server supports range. I retrieve the response code in the write function callback specific to the test handle, with write data pointer set to the handle itself. This function returns 0 to abort this transfer. After that I remove this handle from the multi-handle. But sometimes my program crashes because of double freeing the uv_poll_t on stopping polling a socket. I'm not very experienced or sure if it's something of my code goes wrong. But my question is: will aborting a transfer by returning 0 from the write callback and removing a handle from a multi-handle both cause CURL_POLL_REMOVE passed to the socket function for the same socket? Or how to safely abort a transfer in a multi-socket?
regards Wang Ming Heng ------------------------------------------------------------------- List admin: https://cool.haxx.se/list/listinfo/curl-library Etiquette: https://curl.haxx.se/mail/etiquette.html
