diff --git a/Userland/Services/LookupServer/LookupServer.cpp b/Userland/Services/LookupServer/LookupServer.cpp index 5cea3bf57b..8421faad8b 100644 --- a/Userland/Services/LookupServer/LookupServer.cpp +++ b/Userland/Services/LookupServer/LookupServer.cpp @@ -196,7 +196,10 @@ ErrorOr> LookupServer::lookup(Name const& name, RecordType record int retries = 3; Vector upstream_answers; do { - upstream_answers = TRY(lookup(name, nameserver, did_get_response, record_type)); + auto upstream_answers_or_error = lookup(name, nameserver, did_get_response, record_type); + if (upstream_answers_or_error.is_error()) + continue; + upstream_answers = upstream_answers_or_error.release_value(); if (did_get_response) break; } while (--retries);