The issue with my refactored linesPS has been cleared up thanks to
Betram Felgenhauer who showed that betweenLinesPS (which calls linesPS)
makes invalid assumptions about the way the ForeignPtrs inside a
ByteString are allocated. In particular, empty ByteString can be
represented as a NULL pointer. I have a fix for this particular abuse of
ByteString internals in petto.
We still have to see to the other places where we access ByteString
internals. This should be a priority before we make a new release.
|