Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CURL is freezing the application #1769

Open
barisyild opened this issue Mar 16, 2024 · 0 comments
Open

CURL is freezing the application #1769

barisyild opened this issue Mar 16, 2024 · 0 comments

Comments

@barisyild
Copy link
Contributor

I found a bug that froze the application.

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:

  1. Change this class like this.
    image
  2. Make http request from OpenFL (or Lime?) with HxCPP target.
  3. Resize window (or collect GC).
  4. 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:
image

Curl Thread:
image

Another example of main thread for garbage collection problem:
image

I also tried on Windows, iOS and confirmed the problem.

@barisyild barisyild changed the title Curl's application freezing problem CURL is freezing the application Apr 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant