Opened 4 months ago
Closed 4 months ago
#1841 closed defect (fixed)
HTTP-retrieval of eggs fails when egg-data contains unicode characters
Reported by: | felix winkelmann | Owned by: | felix winkelmann |
---|---|---|---|
Priority: | major | Milestone: | 6.0.0 |
Component: | core tools | Version: | 6.0.0 |
Keywords: | chicken-install | Cc: | |
Estimated difficulty: | medium |
Description
The retrieval of eggs gets confused when unicode characters are contained in the downloaded data (I believe). Chunked server data and the file chunks inside the transmitted content assume binary character counts and the download code then gets confused while parsing HTTP chunks and also the file blocks.
Even though the TCP connection is opened in binary mode, some incorrect code in the bytevector-read code still does check for incomplete UTF sequences. Then when the chunks from the server are concatenated again, extracting the files once more extracts each file using a binary count while reading from an UTF string port.
I'm currently correcting the utf-sequence completion in the bytevector reading (still incomplete, as this must be encoding specific and parameterizable). The retrieval via TCP and the extraction of files needs to use bytevector I/O.
Change History (2)
comment:1 Changed 4 months ago by
comment:2 Changed 4 months ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Fixed in d8df8615945de6205f940e4c379b4d6eb4bd1a87