diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-02-04 10:48:15 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-02-04 10:48:15 +0000 |
commit | 4bf8a036efe3ec4c30dc3e74c12fe9c04533511f (patch) | |
tree | 2479d7e8a39e9087fe78bb1022fc2c7b04092f2f | |
parent | 9b0f1a6912a84b14ce6d2131765cd5c0069d4df6 (diff) | |
download | ruby-4bf8a036efe3ec4c30dc3e74c12fe9c04533511f.tar.gz |
pty/shl.rb: update [ci skip]
* sample/pty/shl.rb: do not manage array length separately.
[ruby-dev:49974] [Bug #13191]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57533 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | sample/pty/shl.rb | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/sample/pty/shl.rb b/sample/pty/shl.rb index b5cc55fa83..2360d8dc4c 100644 --- a/sample/pty/shl.rb +++ b/sample/pty/shl.rb @@ -14,7 +14,6 @@ require 'pty' require 'io/console' $shells = [] -$n_shells = 0 $r_pty = nil $w_pty = nil @@ -64,17 +63,15 @@ while true STDOUT.flush case gets when /^c/i - $shells[$n_shells] = PTY.spawn("/bin/csh") - $r_pty,$w_pty = $shells[$n_shells] - $n_shells += 1 + $shells << PTY.spawn("/bin/csh") + $r_pty,$w_pty = $shells[-1] $reader.run if writer == 'Exit' - $n_shells -= 1 - $shells[$n_shells] = nil + $shells.pop end when /^p/i - for i in 0..$n_shells - unless $shells[i].nil? + $shells.each_with_index do |s, i| + if s print i,"\n" end end @@ -87,6 +84,7 @@ while true $reader.run if writer == 'Exit' then $shells[n] = nil + $shells.pop until $shells.empty? or $shells[-1] end end when /^q/i |