I've also made the exit code channel buffered; it seems that this is an easy way to protect against an easily missed memory leak like in this case, and there is no downside, I think?