lib/httpx/resolver/https.rb in httpx-0.22.2 vs lib/httpx/resolver/https.rb in httpx-0.22.3

- old
+ new

@@ -134,12 +134,25 @@ host, connection = @queries.first @queries.delete(host) emit_resolve_error(connection, connection.origin.host, e) return end - if answers.nil? || answers.empty? + + if answers.nil? + # Indicates no such domain was found. + host = @requests.delete(request) connection = @queries.delete(host) + + emit_resolve_error(connection) unless @queries.value?(connection) + elsif answers.empty? + # no address found, eliminate candidates + host = @requests.delete(request) + connection = @queries.delete(host) + + # eliminate other candidates + @queries.delete_if { |_, conn| connection == conn } + emit_resolve_error(connection) return else answers = answers.group_by { |answer| answer["name"] }