diff --git a/src/search.h b/src/search.h
index a9a4194b8650f19286f5537f940a0d49339c5bd6..b02f2a7bde9cc98c1f58542840b57229af200080 100644
--- a/src/search.h
+++ b/src/search.h
@@ -616,7 +616,7 @@ struct Dht::Search {
     unsigned getNumberOfConsecutiveBadNodes() const {
         unsigned count = 0;
         std::find_if(nodes.begin(), nodes.end(), [&count](const std::unique_ptr<SearchNode>& sn) {
-            if (not sn->isBad())
+            if (not sn->node->isExpired())
                 return true;
             ++count;
             return false;