diff options
author | trizen <trizen@protonmail.com> | 2020-11-19 16:09:17 +0200 |
---|---|---|
committer | Jesús <heckyel@hyperbola.info> | 2020-12-02 13:03:23 -0500 |
commit | 0693c19bacf8a314d621b5aaea498a20627b8d56 (patch) | |
tree | e9b824713f8883d6e2cf06cc08c8bd38bcf4bcae /lib/WWW | |
parent | 31d3064c72d1e6c5e2ed97a517a421e4c1d6dbd8 (diff) | |
download | fair-viewer-0693c19bacf8a314d621b5aaea498a20627b8d56.tar.lz fair-viewer-0693c19bacf8a314d621b5aaea498a20627b8d56.tar.xz fair-viewer-0693c19bacf8a314d621b5aaea498a20627b8d56.zip |
When all the good invidious instances with `statusClass == "success"` fail, try instances without a status class.
Signed-off-by: Jesús <heckyel@hyperbola.info>
Diffstat (limited to 'lib/WWW')
-rw-r--r-- | lib/WWW/FairViewer.pm | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/lib/WWW/FairViewer.pm b/lib/WWW/FairViewer.pm index 422a2a9..41a5033 100644 --- a/lib/WWW/FairViewer.pm +++ b/lib/WWW/FairViewer.pm @@ -589,18 +589,16 @@ sub select_good_invidious_instances { sub pick_good_random_instance { my ($self) = @_; - my @candidates = $self->select_good_invidious_instances(); - if (not @candidates) { - @candidates = $self->select_good_invidious_instances(lax => 1); - } + my @candidates = $self->select_good_invidious_instances(); + my @extra_candidates = $self->select_good_invidious_instances(lax => 1); require List::Util; require WWW::FairViewer::Utils; state $yv_utils = WWW::FairViewer::Utils->new(); - foreach my $instance (List::Util::shuffle(@candidates)) { + foreach my $instance (List::Util::shuffle(@candidates), List::Util::shuffle(@extra_candidates)) { ref($instance) eq 'ARRAY' or next; |