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

* lib/net/telnet.rb: waitfor(): bug fix.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_6@1743 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
wakou 2001-09-07 00:56:10 +00:00
parent af7fdcf59e
commit f7df392eba
2 changed files with 7 additions and 2 deletions

View file

@ -467,13 +467,14 @@ module Net
begin
c = @sock.sysread(1024 * 1024)
@dumplog.log_dump('<', c) if @options.has_key?("Dump_log")
c = rest + c
if @options["Telnetmode"]
if Integer(c.rindex(/#{IAC}#{SE}/no)) <
Integer(c.rindex(/#{IAC}#{SB}/no))
buf = preprocess(rest + c[0 ... c.rindex(/#{IAC}#{SB}/no)])
buf = preprocess(c[0 ... c.rindex(/#{IAC}#{SB}/no)])
rest = c[c.rindex(/#{IAC}#{SB}/no) .. -1]
elsif pt = c.rindex(/#{IAC}[^#{IAC}#{AO}#{AYT}#{DM}#{IP}#{NOP}]?\z/no)
buf = preprocess(rest + c[0 ... pt])
buf = preprocess(c[0 ... pt])
rest = c[pt .. -1]
else
buf = preprocess(c)