edge case where nread < 0