Skip to content

Commit

Permalink
Fix regression where Range header is accidentally kept and re-used
Browse files Browse the repository at this point in the history
  • Loading branch information
rlaphoenix committed May 18, 2023
1 parent 8e7a63f commit 3e0b7ef
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions devine/core/manifests/dash.py
Original file line number Diff line number Diff line change
Expand Up @@ -357,11 +357,11 @@ def download_track(
source_url = rep_base_url

if initialization.get("range"):
headers = {"Range": f"bytes={initialization.get('range')}"}
init_range_header = {"Range": f"bytes={initialization.get('range')}"}
else:
headers = None
init_range_header = None

res = session.get(url=source_url, headers=headers)
res = session.get(url=source_url, headers=init_range_header)
res.raise_for_status()
init_data = res.content
track_kid = track.get_key_id(init_data)
Expand Down Expand Up @@ -511,13 +511,13 @@ def download_segment(
attempts = 1
while True:
try:
headers_ = headers or {}
if bytes_range:
# aria2(c) doesn't support byte ranges, use python-requests
downloader_ = requests_downloader
headers_["Range"] = f"bytes={bytes_range}"
headers_ = dict(**headers, Range=f"bytes={bytes_range}")
else:
downloader_ = downloader
headers_ = headers
downloader_(
uri=url,
out=out_path,
Expand Down

0 comments on commit 3e0b7ef

Please sign in to comment.