It's a bug in reading from files (refilling the buffers in the middle of a multibyte character) I believe since it does not show up if you read the file as a bytevector and decode the bytevector as in:
(let ([r (call-with-port (transcoded-port (open-bytevector-input-port (call-with-port (open-file-input-port tmp-file (file-options) (buffer-mode block) #f) get-bytevector-all)) transcoder) get-string-all)])
It's a bug in reading from files (refilling the buffers in the middle of a multibyte character) I believe since it does not show up if you read the file as a bytevector and decode the bytevector as in:
(let ([r (call-with-port
(transcoded- port
(open- bytevector- input-port
(call-with- port
(open- file-input- port tmp-file (file-options)
(buffer- mode block)
#f)
get-bytevecto r-all))
transcoder )
get- string- all)])