If you encounter a write error (for example, you fill up your disk) DIRSIG will issue an error, but the program doesn't exit. It just keeps issuing the error over and over.
In the unroll to handle the low level write() failure, the focal plane object was ignoring the error status. So it would print the error but not issue the fatal error to stop DIRSIG.
This will be fixed in the 4.5.3 releases.