Skip to content

CI: DF crashes with 'free(): invalid pointer' at quit after test suite passes #5947

Description

@Alistair-Afton

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.

Observed on two unrelated branches:

Tail of stderr.log from both runs is identical:

Tests completed in 10920 ms:
  27/27 tests passed
  185/185 checks passed
Invoking: lua scr.breakdown_level=df.interface_breakdown_types.QUIT
free(): invalid pointer

and on add-tests:

Tests completed in 17338 ms:
  374/377 tests passed
  5581/5583 checks passed
Invoking: lua scr.breakdown_level=df.interface_breakdown_types.QUIT
free(): invalid pointer

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.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions