Fix bad new bug in ftp code -- the test for existing file using NLST

would set the transfer to text mode instead of the specified mode.
This commit is contained in:
Guido van Rossum 1998-01-19 22:26:54 +00:00
parent ca99c2ce75
commit e7579624ef

View file

@ -521,6 +521,8 @@ def retrfile(self, file, type):
except ftplib.error_perm, reason:
raise IOError, ('ftp error', reason), \
sys.exc_info()[2]
# Restore the transfer mode!
self.ftp.voidcmd(cmd)
# Try to retrieve as a file
try:
cmd = 'RETR ' + file
@ -530,6 +532,8 @@ def retrfile(self, file, type):
raise IOError, ('ftp error', reason), \
sys.exc_info()[2]
if not conn:
# Set transfer mode to ASCII!
self.ftp.voidcmd('TYPE A')
# Try a directory listing
if file: cmd = 'LIST ' + file
else: cmd = 'LIST'