Fix --force-overwrites when using -k

For formats that need merge, the `.fxxx` files are not removed before
downloading the corresponding `.part` files. This causes the rename to fail
This commit is contained in:
pukkandan 2021-08-14 21:13:02 +05:30
parent b714b41f81
commit f775c83110
No known key found for this signature in database
GPG key ID: 0F00D95A001F4698

View file

@ -204,9 +204,12 @@ class FileDownloader(object):
return filename + '.ytdl' return filename + '.ytdl'
def try_rename(self, old_filename, new_filename): def try_rename(self, old_filename, new_filename):
if old_filename == new_filename:
return
try: try:
if old_filename == new_filename: if self.params.get('overwrites', False):
return if os.path.isfile(encodeFilename(new_filename)):
os.remove(encodeFilename(new_filename))
os.rename(encodeFilename(old_filename), encodeFilename(new_filename)) os.rename(encodeFilename(old_filename), encodeFilename(new_filename))
except (IOError, OSError) as err: except (IOError, OSError) as err:
self.report_error('unable to rename file: %s' % error_to_compat_str(err)) self.report_error('unable to rename file: %s' % error_to_compat_str(err))