mirror of
https://github.com/atom/atom.git
synced 2026-01-23 05:48:10 -05:00
Previously on zero length matches the last two rules were compared and if they had the same scope name then the last rule was popped and the remaining line was tokenized using the current scope stack to prevent infinite parsing loops. This caused nested method calls in Java to not tokenize correctly since method rules were sequential in the stack but did not constitute an infinite loop of zero matches since the stack was currently decreasing. Now the last two rules are only compared when the stack size is increasing to prevent this false positive. Closes #587