stream: if we expected POLLIN and got a read of zero, assume EOF.