I assumed that empty data means that the user exited. Throwing SIGKILL now results again in an exception thrown and empty `data`, so even if not handling the signal explicitly, it behaves as expected. I can not figure out of any "sane" case of a completely empty input right now.