replace EWOULDBLOCK with EAGAIN default tip

add extra nullptr check in the event loop to handle the case when the finish ptr is set to NULL after it was already scheduled

(0) -300 -100 -30 -10 -2 tip

mercurial