On 11/11/2011 03:09 AM, Bluezery wrote:
> Dear all,
>
> I have modified the way curl used in ecore_con_url.c
>
> 1) A file descriptor of libcurl is not matched to any easy handles.
> We can get a file descriptor from curl_multi_fdset(), we do not
> guarantee that it is a socket of easy handle just performed.
> If libcurl multi handle uses pipeline, the number of file descriptors
> is just 1 or 2 even though the number of easy handles is numerous.
> So, I removed the fd, fd_handler, flags from _Ecore_Con_Url structure.
>
> 2) There are no routines when return value is CURLM_CALL_MULTI_PERFORM
> or still_running is above 1.
> When return value is CURLM_CALL_MULTI_PERFORM, we just do
> curl_multi_perform() again. (do not curl_multi_fdset() or
> curl_multi_info_read() )
> In addition, there are case that curl_multi_perform() returns CURLM_OK
> but we cannot get fd and read any information.  (e.g., libcurl
> threaded resolver enabled)
> In such a case, current _ecore_con_url_perform() returns
> EINA_FALSE~~!!!. This is a problem.
> So, I added routines for each case.
>
>
> 3) Error control should be added.
> It is not controlled when curl_multi_perform() returns error.
>
> Please review a attached patch.

You should read waht EINA_LIST_FREE does, and clean up list free'ing. 
Else the patch seems good.

S.

------------------------------------------------------------------------------
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to