Make automaic retry on EINTR actually work

I have tested that before, but apparently when I was testing this code I
hit one of those random cases where EINTR is not triggered despite me
actively resizing the window on the loading screen. I hate signals.
Merge branch 'master' into debian