From 9f503dbb65e335a79605700dab814446036658f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com> Date: Sat, 21 Apr 2018 12:22:58 -0400 Subject: [PATCH] proxy client: loopSignal on put refresh notification --- src/dht_proxy_client.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/dht_proxy_client.cpp b/src/dht_proxy_client.cpp index 200965b8..22aa5e8f 100644 --- a/src/dht_proxy_client.cpp +++ b/src/dht_proxy_client.cpp @@ -91,6 +91,7 @@ DhtProxyClient::startProxy() if (serverHost_.empty()) return; DHT_LOG.w("Staring proxy client to %s", serverHost_.c_str()); nextProxyConfirmation = scheduler.add(scheduler.time(), std::bind(&DhtProxyClient::confirmProxy, this)); + loopSignal_(); } DhtProxyClient::~DhtProxyClient() @@ -647,6 +648,7 @@ DhtProxyClient::cancelListen(const InfoHash& key, size_t gtoken) { }); } scheduler.edit(it->second.opExpirationJob, ops.getExpiration()); + loopSignal_(); return canceled; } @@ -710,6 +712,7 @@ DhtProxyClient::doListen(const InfoHash& key, ValueCallback cb, Value::Filter fi } auto next = l->second.cache.onValues(expired ? new_values_empty : values, std::vector<Value::Id>{}, expired_ids, types, scheduler.time()); scheduler.edit(l->second.cacheExpirationJob, next); + loopSignal_(); return true; }; auto pushNotifToken = std::make_shared<proxy::ListenToken>(0); @@ -966,6 +969,7 @@ DhtProxyClient::pushNotificationReceived(const std::map<std::string, std::string auto vid = std::stoull(vidIt->second); auto put = search.puts.at(vid); scheduler.edit(put.refreshJob, scheduler.time()); + loopSignal_(); } else { // Refresh listen for (auto& list : search.listeners) -- GitLab