From 7f8746fcd481a3f75f6a30658e3bfeeff0eb3fbd Mon Sep 17 00:00:00 2001 From: Omar Roth Date: Fri, 25 Oct 2019 22:40:20 -0400 Subject: [PATCH] Remove invalid connections from pool --- src/invidious/helpers/utils.cr | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/invidious/helpers/utils.cr b/src/invidious/helpers/utils.cr index d0076024..2e802051 100644 --- a/src/invidious/helpers/utils.cr +++ b/src/invidious/helpers/utils.cr @@ -1607,9 +1607,17 @@ struct HTTPPool end end - response = yield conn - conn.unset_proxy - response + begin + response = yield conn + conn.unset_proxy + response + rescue ex + conn = HTTPClient.new(url) + conn.family = (url.host == "www.youtube.com") ? CONFIG.force_resolve : Socket::Family::UNSPEC + conn.read_timeout = 5.seconds + conn.connect_timeout = 5.seconds + yield conn + end end end