ecore ecore_con_url.c: Applied ui interactoin bug fix patch from Kim
Yunhan <spbear@gmail.com>
On Wed, Sep 21, 2011 at 10:51 PM, Kim Yunhan <spbear@gmail.com> wrote:
> Hello!
>
> elm_map uses Ecore Con with CURL.
> I tested elm_map many times on my device.
> But sometimes UI interaction is held when data connection is poor.
> So I tried to debug and I found that this code lead to hold an Ecore
main
> loop.
>
> ----------------------------------------------
> In ecore_con_url.c
>
> while (curl_multi_perform(_curlm, &still_running) ==
> CURLM_CALL_MULTI_PERFORM) ;
> ----------------------------------------------
>
> curl_multi_perform() is CURL's asynchronous API.
> But above code hold an Ecore main loop.
> When it takes long time in libcurl, UI interaction is delayed.
>
> For example, If you have poor data connection.
> libcurl is trying to resolve DNS in this step.
> But it have to wait until timeout.
> At that time it looks like being locked.
>
> So I write a patch for fixing it.
git-svn-id: http://svn.enlightenment.org/svn/e/trunk/ecore@63636
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33