commit: 45495228b7a6728b7e764bbcf1f38490cd3d8697
parent 6fece0a96b3cd8677f5c1185a57c6e21403fcb44
Author: dirkf <fieldhouse@gmx.net>
Date: Sun, 19 Mar 2023 00:51:44 +0000
[downloader/http] Only check for resumability when actually resuming
Diffstat:
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/test/test_downloader_http.py b/test/test_downloader_http.py
@@ -88,7 +88,7 @@ class TestHttpFD(unittest.TestCase):
self.assertTrue(downloader.real_download(filename, {
'url': 'http://127.0.0.1:%d/%s' % (self.port, ep),
}))
- self.assertEqual(os.path.getsize(encodeFilename(filename)), TEST_SIZE)
+ self.assertEqual(os.path.getsize(encodeFilename(filename)), TEST_SIZE, ep)
try_rm(encodeFilename(filename))
def download_all(self, params):
diff --git a/youtube_dl/downloader/http.py b/youtube_dl/downloader/http.py
@@ -141,7 +141,8 @@ class HttpFD(FileDownloader):
# Content-Range is either not present or invalid. Assuming remote webserver is
# trying to send the whole file, resume is not possible, so wiping the local file
# and performing entire redownload
- self.report_unable_to_resume()
+ if range_start > 0:
+ self.report_unable_to_resume()
ctx.resume_len = 0
ctx.open_mode = 'wb'
ctx.data_len = int_or_none(ctx.data.info().get('Content-length', None))