From 3148e70723c981a279ab078bd4d2035a3d030cd6 Mon Sep 17 00:00:00 2001 From: The Stranjer <791672+TheStranjer@users.noreply.github.com> Date: Sun, 31 May 2020 13:41:21 -0400 Subject: [PATCH 1/2] Truncate filenames that are too long --- youtube_dl/downloader/common.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/youtube_dl/downloader/common.py b/youtube_dl/downloader/common.py index 1cdba89cd..2dc645a2f 100644 --- a/youtube_dl/downloader/common.py +++ b/youtube_dl/downloader/common.py @@ -363,6 +363,15 @@ class FileDownloader(object): else '%.2f' % sleep_interval)) time.sleep(sleep_interval) + # truncate the filename if it's too long + # deducting 5 from the name max to accommodate + # the ".part" thing at the end + max_filelen = os.statvfs('./').f_namemax - 5 + if len(filename) > max_filelen: + self.to_screen("[filename] Too long, truncating") + start_char = len(filename) - max_filelen + 1 + filename = filename[start_char:] + return self.real_download(filename, info_dict) def real_download(self, filename, info_dict): From 39a4144527666a6642713be600281e40bf196195 Mon Sep 17 00:00:00 2001 From: The Stranjer <791672+TheStranjer@users.noreply.github.com> Date: Sun, 31 May 2020 14:03:46 -0400 Subject: [PATCH 2/2] Strip the filename of beginning and end whitespace --- youtube_dl/downloader/common.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/youtube_dl/downloader/common.py b/youtube_dl/downloader/common.py index 2dc645a2f..e583de635 100644 --- a/youtube_dl/downloader/common.py +++ b/youtube_dl/downloader/common.py @@ -370,7 +370,7 @@ class FileDownloader(object): if len(filename) > max_filelen: self.to_screen("[filename] Too long, truncating") start_char = len(filename) - max_filelen + 1 - filename = filename[start_char:] + filename = filename[start_char:].strip() return self.real_download(filename, info_dict)