1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

[ruby/reline] Handle Errno::ENOTTY correctly

8daa392ba6
This commit is contained in:
aycabta 2021-05-16 22:50:59 +09:00
parent 242bad9a87
commit 1b543dc226
2 changed files with 13 additions and 0 deletions

View file

@ -91,6 +91,8 @@ class Reline::ANSI
rescue Errno::EIO
# Maybe the I/O has been closed.
nil
rescue Errno::ENOTTY
nil
end
@@in_bracketed_paste_mode = false

View file

@ -775,6 +775,17 @@ begin
EOC
end
def test_with_newline
omit if Reline::IOGate.win?
cmd = %Q{ruby -e 'print(%Q{abc def \\e\\r})' | ruby -I#{@pwd}/lib -rreline -e 'p Reline.readline(%{> })'}
start_terminal(50, 50, ['bash', '-c', cmd])
close
assert_screen(<<~'EOC')
> abc def
"abc def "
EOC
end
private def write_inputrc(content)
File.open(@inputrc_file, 'w') do |f|
f.write content