brendan-duncan/archive

ArchiveFile.string incorrect encodes non-ASCII data (causes dataloss)

Opened this issue · 1 comments

The code currently says:

  _content = Uint8List.fromList(content.codeUnits);

This causes Unicode characters above U+00FE to all get turned into U+00FF and then causes the data to be encoded using ISO-8859-1, which is rather archaic.

I think that line should probably be this instead:

  _content = utf8.encode(content.codeUnits);

Looks like the main constructor has a similar behaviour.