You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
CURLMcode result = curl_multi_perform ((CURLM*)val_data (multi_handle), &runningHandles);
in this line, curl_multi_perform some times takes too many times due to curl_getaddrinfo.
If you resize the window (or collect gc) while the application is in mutex lock, the application freezes until curl_multi_perform is completed!
Reproduce:
Change this class like this.
Make http request from OpenFL (or Lime?) with HxCPP target.
Resize window (or collect GC).
See result, in this example the app will freeze forever, normally the app freezes until getaddr happens.
Here is real world callstack grabbed from testflight user:
Main Thread:
Curl Thread:
Another example of main thread for garbage collection problem:
I also tried on Windows, iOS and confirmed the problem.
The text was updated successfully, but these errors were encountered:
barisyild
changed the title
Curl's application freezing problem
CURL is freezing the application
Apr 20, 2024
I found a bug that froze the application.
lime/project/src/net/curl/CURLBindings.cpp
Line 2506 in 1c8ecd3
in this line, curl_multi_perform some times takes too many times due to curl_getaddrinfo.
If you resize the window (or collect gc) while the application is in mutex lock, the application freezes until curl_multi_perform is completed!
Reproduce:
Here is real world callstack grabbed from testflight user:
Main Thread:
Curl Thread:
Another example of main thread for garbage collection problem:
I also tried on Windows, iOS and confirmed the problem.
The text was updated successfully, but these errors were encountered: