From f775c83110ac9e9166e080b58a08ccc680c41338 Mon Sep 17 00:00:00 2001 From: pukkandan Date: Sat, 14 Aug 2021 21:13:02 +0530 Subject: [PATCH] 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 --- yt_dlp/downloader/common.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/yt_dlp/downloader/common.py b/yt_dlp/downloader/common.py index 3846a7ee5..f5f6393a6 100644 --- a/yt_dlp/downloader/common.py +++ b/yt_dlp/downloader/common.py @@ -204,9 +204,12 @@ class FileDownloader(object): return filename + '.ytdl' def try_rename(self, old_filename, new_filename): + if old_filename == new_filename: + return try: - if old_filename == new_filename: - return + if self.params.get('overwrites', False): + if os.path.isfile(encodeFilename(new_filename)): + os.remove(encodeFilename(new_filename)) os.rename(encodeFilename(old_filename), encodeFilename(new_filename)) except (IOError, OSError) as err: self.report_error('unable to rename file: %s' % error_to_compat_str(err))