:crlf currently doesn't fall back on :pending the way :perlio
does when the unread data doesn't fit into its own buffer. Instead it
just rejects them. This patch resolves that. Tests are coming in a
future commit
The committer added a cast to get it to compile on Win32, and silence a
gcc warning on Linux