commit 0ff2c1ecb67b61e1410e1d0fe1966a7680e18947
parent 16132cff7231d591bc4e6e3a12c02f9110d54e11
Author: Sergey M․ <dstftw@gmail.com>
Date: Sat, 24 Mar 2018 15:59:48 +0700
[downloader/fragment] Fix download finalization when writing file to stdout (closes #15799)
Diffstat:
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/youtube_dl/downloader/fragment.py b/youtube_dl/downloader/fragment.py
@@ -241,12 +241,16 @@ class FragmentFD(FileDownloader):
if os.path.isfile(ytdl_filename):
os.remove(ytdl_filename)
elapsed = time.time() - ctx['started']
- self.try_rename(ctx['tmpfilename'], ctx['filename'])
- fsize = os.path.getsize(encodeFilename(ctx['filename']))
+
+ if ctx['tmpfilename'] == '-':
+ downloaded_bytes = ctx['complete_frags_downloaded_bytes']
+ else:
+ self.try_rename(ctx['tmpfilename'], ctx['filename'])
+ downloaded_bytes = os.path.getsize(encodeFilename(ctx['filename']))
self._hook_progress({
- 'downloaded_bytes': fsize,
- 'total_bytes': fsize,
+ 'downloaded_bytes': downloaded_bytes,
+ 'total_bytes': downloaded_bytes,
'filename': ctx['filename'],
'status': 'finished',
'elapsed': elapsed,