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
{{ message }}
Repository navigation
CI: DF crashes with 'free(): invalid pointer' at quit after test suite passes #5947
The Linux gcc-11 test leg is intermittently failing with a heap-corruption crash at DF shutdown, after the test suite reports all tests passed. The subsequent DF launch in the same attempt then aborts at startup.
So the heap is already corrupted (or the teardown path frees a bad pointer) before DF exits; the test suite itself is green. Retries in the same attempt then fail earlier with Aborted (core dumped) right after dfhack: redirecting stderr to stderr.log, suggesting the first crash leaves the DF directory or process state in a way that breaks the follow-up launch.
This is separate from the Windows 60s-retry timeout that #5943 addresses, and it is currently masking otherwise-green runs.
As far as we can tell this is a DF bug. It's been doing this since the very first Linux builds of DF. We had to remove testing the exit status of DF because it always did this and we could never figure out why.
Thanks, good to know it is a longstanding DF-side bug. Closing since there is nothing actionable on the DFHack side. For anyone landing here from a red CI leg: if the log shows all tests passing and then free(): invalid pointer at quit, that is this issue, not the PR under test.
Activity
ab9rf commentedon Sep 17, 2026
As far as we can tell this is a DF bug. It's been doing this since the very first Linux builds of DF. We had to remove testing the exit status of DF because it always did this and we could never figure out why.
Alistair-Afton commentedon Sep 17, 2026
Thanks, good to know it is a longstanding DF-side bug. Closing since there is nothing actionable on the DFHack side. For anyone landing here from a red CI leg: if the log shows all tests passing and then
free(): invalid pointerat quit, that is this issue, not the PR under test.