Not surprisingly, ZnUTF8Encoder>>brokenReadInto:startingAt:count:fromStream: is the culprit