summaryrefslogtreecommitdiff
path: root/Lib
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>1997-12-29 20:05:45 +0000
committerGuido van Rossum <guido@python.org>1997-12-29 20:05:45 +0000
commitf5027c2b4f510cf6c7526f71b0320dc154ec3844 (patch)
tree65c805132443ee1f7c6e0a05480f17f6a9534912 /Lib
parent379730e263b45e80efdd96370e31e22c50a9084f (diff)
downloadcpython-f5027c2b4f510cf6c7526f71b0320dc154ec3844.tar.gz
Moved things around a bit in interact(), so outout is processed before
input. When an EOF is read, break out of the loop instead of (by default) writing an empty line (which doesn't do much good). Don't close self when falling through the loop.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/telnetlib.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/Lib/telnetlib.py b/Lib/telnetlib.py
index 1a1c75edfd..4784a6988e 100644
--- a/Lib/telnetlib.py
+++ b/Lib/telnetlib.py
@@ -376,9 +376,6 @@ class Telnet:
"""Interaction function, emulates a very dumb telnet client."""
while 1:
rfd, wfd, xfd = select.select([self, sys.stdin], [], [])
- if sys.stdin in rfd:
- line = sys.stdin.readline()
- self.write(line)
if self in rfd:
try:
text = self.read_eager()
@@ -388,7 +385,11 @@ class Telnet:
if text:
sys.stdout.write(text)
sys.stdout.flush()
- self.close()
+ if sys.stdin in rfd:
+ line = sys.stdin.readline()
+ if not line:
+ break
+ self.write(line)
def expect(self, list, timeout=None):
"""Read until one from a list of a regular expressions matches.