Fix "Missing param name: "q" (KeyError)"
https://github.com/iv-org/invidious/issues/2682
This commit is contained in:
Samantaz Fox 2021-11-29 14:53:27 +01:00 committed by GitHub
parent c6e086c6ff
commit 342fc202a7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -575,7 +575,9 @@ def content_to_comment_html(content)
url = "/watch?v=#{url.request_target.lstrip('/')}" url = "/watch?v=#{url.request_target.lstrip('/')}"
elsif url.host.nil? || url.host.not_nil!.ends_with?("youtube.com") elsif url.host.nil? || url.host.not_nil!.ends_with?("youtube.com")
if url.path == "/redirect" if url.path == "/redirect"
url = HTTP::Params.parse(url.query.not_nil!)["q"] # Sometimes, links can be corrupted (why?) so make sure to fallback
# nicely. See https://github.com/iv-org/invidious/issues/2682
url = HTTP::Params.parse(url.query.not_nil!)["q"]? || ""
else else
url = url.request_target url = url.request_target
end end