On 1/27/2022 12:45 PM, Frank Spano via curl-library wrote: > Our program is sending ~800 requests per minute, and experiencing > crashes every ~5 minutes. We verified that every CurlEasy handle is > allocated/deallocated properly (no nullptr after allocation, no double > frees happening). When encountering the crash while running in a > debugger, we found a nullptr in a linked list - we assume this is > CurlMulti’s linked list of CurlEasy handles. As we checked that no > curl handles were null when allocated, it seems like there’s memory > corruption for that to show up in one of the linked lists. Since > installing and building with curl 7.80.1, we’re experiencing no issues > - the program is no longer crashing. Our issue was resolved, but we > would like to know why this was happening - is this a known bug? We > were unable to find anyone experiencing the issue, but given that this > is the default version on macOS Big Sur currently, it may be affecting > other people as well.
You can bisect the issue. [1] Our bisect instructions are only for the curl tool but you can of course do the same for libcurl. Link to the uninstalled libcurl or install it to a temporary directory, do not use the traditional install directories. Make sure to build a version you know is good and a version you know is bad, to confirm the issue was actually fixed. Check curl_version() to make sure your app is actually using the version built during bisect. You may need rpath or whatever its Mac equivalent. As Daniel mentioned this is going to take you some time considering what you described, likely a lot more than the half hour we ballpark it at in the doc. If you figure it out please let us know, it is always helpful to share the information in case anyone else has the same problem. [1]: https://github.com/curl/curl/wiki/how-to-git-bisect
-- Unsubscribe: https://lists.haxx.se/listinfo/curl-library Etiquette: https://curl.haxx.se/mail/etiquette.html