projects
/
youtube-dl
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
69fcdb8
)
[downloader/dash] Improve error handling (#16927)
author
Sergey M․
<dstftw@gmail.com>
Sun, 8 Jul 2018 01:22:56 +0000
(08:22 +0700)
committer
Sergey M․
<dstftw@gmail.com>
Sun, 8 Jul 2018 01:22:56 +0000
(08:22 +0700)
youtube_dl/downloader/dash.py
patch
|
blob
|
history
diff --git
a/youtube_dl/downloader/dash.py
b/youtube_dl/downloader/dash.py
index 576ece6db369254bf491cac972dc845ef1ac2653..eaa7adf7c4f2fc39d84984642a1ef17c014d089f 100644
(file)
--- a/
youtube_dl/downloader/dash.py
+++ b/
youtube_dl/downloader/dash.py
@@
-2,7
+2,10
@@
from __future__ import unicode_literals
from .fragment import FragmentFD
from ..compat import compat_urllib_error
from .fragment import FragmentFD
from ..compat import compat_urllib_error
-from ..utils import urljoin
+from ..utils import (
+ DownloadError,
+ urljoin,
+)
class DashSegmentsFD(FragmentFD):
class DashSegmentsFD(FragmentFD):
@@
-57,6
+60,14
@@
class DashSegmentsFD(FragmentFD):
count += 1
if count <= fragment_retries:
self.report_retry_fragment(err, frag_index, count, fragment_retries)
count += 1
if count <= fragment_retries:
self.report_retry_fragment(err, frag_index, count, fragment_retries)
+ except DownloadError:
+ # Don't retry fragment if error occurred during HTTP downloading
+ # itself since it has own retry settings
+ if not fatal:
+ self.report_skip_fragment(frag_index)
+ break
+ raise
+
if count > fragment_retries:
if not fatal:
self.report_skip_fragment(frag_index)
if count > fragment_retries:
if not fatal:
self.report_skip_fragment(frag_index)