Debian Patches
Status for terraphast/0.1.0+dfsg-2
| Patch | Description | Author | Forwarded | Bugs | Origin | Last update |
|---|---|---|---|---|---|---|
| dynamic_lib.patch | Attempt to create shared library This patch is deactivated since the build fails with it. Thus we simply stick to the existing static library |
Andreas Tille <tille@debian.org>, | no | 2021-10-20 | ||
| fix-memory-limit-corruption.patch | Fix heap corruption when the multitree memory limit is reached In the memory limited multitree callback, begin_iteration() returns an "unexplored" node when the alternative array cannot be allocated (e.g. because the memory limit was reached). The loop in tree_enumerator::iterate() then kept iterating over the bipartitions and called accumulate() on that unexplored node as if it were an alternative array, writing a full multitree_node into the leaf array of the unexplored node. This corrupted the heap and could lead to a "realloc(): invalid pointer" abort inside GMP, making the unittests fail randomly. . Fix this by marking the memory limit as hit whenever begin_iteration() has to fall back to an unexplored node, so that continue_iteration() stops the iteration and accumulate() is never called on an unexplored node. |
Andreas Tille <tille@debian.org> | yes | 2026-10-17 | ||
| fix-c-api-test-corruption.patch | Fix heap corruption in the c_api_error_num_partitions test The test created a missing-data matrix with zero partitions and then called setDataMatrix() on it. initializeMissingData() allocates a zero-sized matrix (new unsigned char[0]) for zero partitions, so the setDataMatrix() calls wrote past the end of the allocation, corrupting the heap. terraceAnalysis() returns TERRACE_NUM_PARTITIONS_ERROR as soon as numberOfPartitions < 2, before it reads the matrix, so the setDataMatrix() calls are not needed at all; drop them. |
Andreas Tille <tille@debian.org> | not-needed | 2026-10-17 | ||
| site-gen-root-species.patch | site_gen: fix root species off-by-one generating invalid data The root species index was drawn from the inclusive range 0..num_species, so it could equal num_species, which is out of range. In that case no species was present in every site and a site column could end up without a single 1. Downstream tools (e.g. validated_run) require every site to have at least one occurrence and abort with "subtree_extraction.cpp:45: induced_lca: Assertion 'present(lca)' failed". Draw the index from 0..num_species-1 so that one species is always present in every site, and reject num_species == 0 to avoid an underflow. |
Andreas Tille <tille@debian.org> | yes | 2026-10-17 |
All known versions for source package 'terraphast'
- 0.1.0+dfsg-2 (forky, sid)
- 0.0+git20200413.8af2e4c+dfsg-3 (trixie)
- 0.0+git20200413.8af2e4c+dfsg-2 (bookworm)
