[eria2c] Fix --skip-unavailable fragment

This commit is contained in:
pukkandan 2021-10-13 04:11:25 +05:30
parent b836dc94f2
commit fc5c8b6492
No known key found for this signature in database
GPG Key ID: 0F00D95A001F4698
1 changed files with 45 additions and 44 deletions

View File

@ -115,7 +115,14 @@ class ExternalFD(FragmentFD):
self._debug_cmd(cmd) self._debug_cmd(cmd)
if 'fragments' in info_dict: if 'fragments' not in info_dict:
p = subprocess.Popen(
cmd, stderr=subprocess.PIPE)
_, stderr = process_communicate_or_kill(p)
if p.returncode != 0:
self.to_stderr(stderr.decode('utf-8', 'replace'))
return p.returncode
fragment_retries = self.params.get('fragment_retries', 0) fragment_retries = self.params.get('fragment_retries', 0)
skip_unavailable_fragments = self.params.get('skip_unavailable_fragments', True) skip_unavailable_fragments = self.params.get('skip_unavailable_fragments', True)
@ -157,13 +164,7 @@ class ExternalFD(FragmentFD):
os.remove(encodeFilename(fragment_filename)) os.remove(encodeFilename(fragment_filename))
dest.close() dest.close()
os.remove(encodeFilename('%s.frag.urls' % tmpfilename)) os.remove(encodeFilename('%s.frag.urls' % tmpfilename))
else: return 0
p = subprocess.Popen(
cmd, stderr=subprocess.PIPE)
_, stderr = process_communicate_or_kill(p)
if p.returncode != 0:
self.to_stderr(stderr.decode('utf-8', 'replace'))
return p.returncode
class CurlFD(ExternalFD): class CurlFD(ExternalFD):