don't fall over in the charshunt if we get an EAGAIN or EINTR