Make it more robust against a spoofed filename #12
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.
Currently, RubyVM::AST.of attempts to reopen a file based on iseq's file
path. However, it opens a wrong file if the iseq's file path is spoofed.
Found by @kateinoigakukun
Though this is a fundamental design issue of RubyVM::AST.of,
in any way it would be good to make error_highlight robust for
unexpected exception.
In a long term, this particular issue would be fixed by adding to irb an
option
RubyVM::ISeq.keep_script_lines = true(which is not implementedyet).