aboutsummaryrefslogtreecommitdiffstats
path: root/lib/WWW
diff options
context:
space:
mode:
authortrizen <trizen@protonmail.com>2020-11-19 16:09:17 +0200
committerJesús <heckyel@hyperbola.info>2020-12-02 13:03:23 -0500
commit0693c19bacf8a314d621b5aaea498a20627b8d56 (patch)
treee9b824713f8883d6e2cf06cc08c8bd38bcf4bcae /lib/WWW
parent31d3064c72d1e6c5e2ed97a517a421e4c1d6dbd8 (diff)
downloadfair-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.pm8
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;