From f45e6c11264434ef7bace0b6badfd45df8dd874a Mon Sep 17 00:00:00 2001 From: pukkandan Date: Fri, 23 Jul 2021 09:44:28 +0530 Subject: [PATCH] [downloader] Pass same status object to all `progress_hooks` --- yt_dlp/downloader/common.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/yt_dlp/downloader/common.py b/yt_dlp/downloader/common.py index 9f0d3c7bf..038e32f95 100644 --- a/yt_dlp/downloader/common.py +++ b/yt_dlp/downloader/common.py @@ -395,8 +395,12 @@ class FileDownloader(object): info_dict = dict(info_dict) for key in ('__original_infodict', '__postprocessors'): info_dict.pop(key, None) + # youtube-dl passes the same status object to all the hooks. + # Some third party scripts seems to be relying on this. + # So keep this behavior if possible + status['info_dict'] = copy.deepcopy(info_dict) for ph in self._progress_hooks: - ph({**status, 'info_dict': copy.deepcopy(info_dict)}) + ph(status) def add_progress_hook(self, ph): # See YoutubeDl.py (search for progress_hooks) for a description of