fix: stringify chunk before merging chunks breaks character at the end #4433
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.
Hi there,
I like this extension and has long been using it. This extension is really awesome!
Recently I find formatting tex files introduces random characters. An example is:
after formatting ===>
The
stdoutBuffer: string[]
was:i.e.,
不等于语言
at the end of line 3 turns to不等于���言
. This error frequently occurs with Chinese characters as they are more than 8 bits each.After some investigation I find possible cause was, the chunks of stdout pipe were first
chunk.toString()
and then joined later. This breaks some characters at the end of the chunk if they were more than 8 bits, and turns in to 3 unknown characters.However please be noted that this type of behaviours were not consistent (sometimes error happens and sometimes stdout is not chunked), and might behave differently on different platforms.
So I think it may be safer to first merge the chunk in Buffer type, and then turn them into strings after concatenation.
Thanks again for your contribution on this extension.