mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2025-02-21 18:54:02 +00:00

When a contiguous range of a cooked character stream is being mapped to a range of source provenance, the code was assuming that the "end()" position of the input range -- being the character immediately after the range -- would also follow the range's source provenance. This isn't always the case. Modify the code to work with the true last character of the input range (at end()-1) and to also cope with cases when that last position truly maps to an earlier provenance, which can happen when the prescanner has inserted a space into the cooked character stream. Differential Revision: https://reviews.llvm.org/D121124