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
Found the problem: uv_loop.meta is being set on the table returned from require (i.e. getmetatable(require('luv')).__gc), not the loop userdata. Will create a PR with the fix in a second.
Thanks for finding and reporting this @vanc ! If feasible, we should definitely try to include checks like this into our CI.
Compiled luv.so with CLANG's address sanitizer, and run the unit tests, and found lots of leaks.
Troubleshooted a bit and found that the luv.c:loop_gc() was never triggered.
The issue seems started from revision db55f6b.
If remove the pushstring and rawset, loop_gc would be invoked too early, just as the comment says. However, with that, it was never called.
The text was updated successfully, but these errors were encountered: