Fix serialization / deserialization of char array. #21
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This patch fixes the following issues:
char[]which contains bytes in range of 128 to 255.For example using unpack spec
'>hh"on"\xff\xff"results in(-1, -1)and causes ValueError inbytes().Just fixing the above doesn't solve all the problems. Applying
.decode('utf16-be')on a resulting buffer of such two bytes that represent surrogate pairs ends up inUnicodeDecodeError.I don't really think that it is a good idea to manipulate strings for debugging regardless of its being enabled or not.
In py2
bytesis merely an alias ofstr, which doesn't construct a sequence of bytes from a iterator.char[].It's not been implemented at all.