From 215b44ca3bcd38782f11e0a5c686873404df3a13 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com>
Date: Sun, 17 Mar 2019 17:28:21 -0400
Subject: [PATCH] search: don't store filter in search

Filter is not supported anymore at the search listen stage.
Filters are now stored and called by the op cache.
---
 src/dht.cpp  | 2 +-
 src/search.h | 3 +--
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/dht.cpp b/src/dht.cpp
index 5400828c..aacb235b 100644
--- a/src/dht.cpp
+++ b/src/dht.cpp
@@ -537,7 +537,7 @@ Dht::searchSynchedNodeListen(const Sp<Search>& sr, SearchNode& n)
                     if (auto sr = ws.lock()) {
                         auto l = sr->listeners.find(list_token);
                         if (l != sr->listeners.end()) {
-                            l->second.get_cb(l->second.filter.filter(values), expired);
+                            l->second.get_cb(values, expired);
                         }
                     }
                 }, [ws,list_token] (ListenSyncStatus status) {
diff --git a/src/search.h b/src/search.h
index 80dca94a..ebedcc17 100644
--- a/src/search.h
+++ b/src/search.h
@@ -387,7 +387,6 @@ struct Dht::Search {
     /* listeners */
     struct SearchListener {
         Sp<Query> query;
-        Value::Filter filter;
         ValueCallback get_cb;
         SyncCallback sync_cb;
     };
@@ -504,7 +503,7 @@ struct Dht::Search {
         return cache.listen(cb, q, f, [&](const Sp<Query>& q, ValueCallback vcb, SyncCallback scb){
             done = false;
             auto token = ++listener_token;
-            listeners.emplace(token, SearchListener{q, f, vcb, scb});
+            listeners.emplace(token, SearchListener{q, vcb, scb});
             scheduler.edit(nextSearchStep, scheduler.time());
             return token;
         });
-- 
GitLab