fix #285434 : Certain 2.x frame texts imported with no style #5767
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.
Resolves: https://musescore.org/en/node/285434
The readahead function was not working properly because of the interplay of functions seek() and readline(). When non-single-byte characters were present in at least one of the field, when using seek function inside a QIODevice, the readline function was starting reading at the wrong position: Some two-byte characters were counted as two single-byte characters and thus the reading was starting at an earlier position than expected. The presence of two consecutive Text elements could cause an early return because of the end tag of the first Text element, since the reading action for the second Text could start just before this end tag. By using a parallel XmlReader on the same QIODevice and retrieving with that the full xml content of the Text tag, the text style is now correctly retrieved.