what if we wrote everything which did fit into the `buffer`, should we not just try again?