What actually goes wrong is that the show implementation for ProcessExitException breaks, despite the fact that the logic therein works if taken in isolation and dropped into a test case. Some further investigation into the runtime characteristics is probably worthwhile, but fairly low priority. I've reverted the changes to d-process for the time being.