Open unhyperbolic opened 4 years ago
Comment originally from Marc Culler on bitbucket:
I think the real problem here is that the manifold in question is S^3. The crash occurs when SnapPea is trying to cancel segments of the peripheral curve which look like
--o--->---o---<---o--.
In this case, the entire curve collapses to a point. The crash occurs when the last two edges of the curve are cancelled.
I think the thing to do here might be for SnapPy to call fill_peripheral_curves_as_needed, instead of fill_peripheral_curves but the current version of fill_peripheral_curves_as_needed does not do the right thing for this example. And the function is called other places (e.g. when splitting along an incompressible surface) so some care is needed.
Confirming that this issue persists in SnapPy 3.1.1.
Originally reported by Robert Haraway at https://bitbucket.org/t3m/snappy/issues/25/filling-a-closed-triangulation-aborts.
This is for SnapPy version 2.7, running on Python version 3.7.3 compiled with GCC 8.3.0. The bug is present without IPython. My operating system is Linux 4.19.0-6-amd64, running on Debian 10.
Filling a closed Triangulation crashes Python with an unhandled SIGABRT. Here is a code snippet illustrating the issue.
The output from GDB is as follows.