Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
wmliterator: fix unterminated loop in lua-strip
An old add-on triggered a wmliterator crash with this comment: #>>>> !!!!! REMOVE THIS AFTER TEST !!!!! <<<<# The traceback showed that the crash came from the lua-stripping code, which interprets "<<" as the start of a lua string. But below it is code to remove quoted strings, and it doesn't crash, even though there are cases where authors forgot to close a quote. Two key differences stood out in the otherwise similar second code: only looking for the endquote string in the text after beginquote, and testing that endquote was less than 0, not -1. Changing both gets the loop to terminate. Making it search the text only after "beginquote+2" means that ">>" will no longer be found, giving endquote a value of -1. But -1 is not less than -1, so that must be changed to " < 0" to close the loop.
- Loading branch information