diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | lib/net/telnet.rb | 4 |
2 files changed, 7 insertions, 2 deletions
@@ -1,3 +1,8 @@ +Tue Jun 17 23:04:24 2008 James Edward Gray II <jeg2@ruby-lang.org> + + * lib/net/telnet.rb: Fixing Telnet#wairfor() which was broken by changes to + the Kernel::Integer() method. [ruby-core:17272] + Tue Jun 17 23:02:18 2008 Nobuyoshi Nakada <nobu@ruby-lang.org> * ruby.c (opt_W_getter): made a hooked variable. diff --git a/lib/net/telnet.rb b/lib/net/telnet.rb index d2433554a2..67fd656c63 100644 --- a/lib/net/telnet.rb +++ b/lib/net/telnet.rb @@ -564,8 +564,8 @@ module Net @dumplog.log_dump('<', c) if @options.has_key?("Dump_log") if @options["Telnetmode"] c = rest + c - if Integer(c.rindex(/#{IAC}#{SE}/no)) < - Integer(c.rindex(/#{IAC}#{SB}/no)) + if Integer(c.rindex(/#{IAC}#{SE}/no) || 0) < + Integer(c.rindex(/#{IAC}#{SB}/no) || 0) 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) || |