Would you prefer I fread() CF_EXPANDSIZE here, or keep the current loop and add a limit on CF_EXPANDSIZE ? This way, once the hard-coded limit lifted, just a test to remove, and not a whole loop to code. But at the cost of several CF_BUFSIZE fread() instead of one.