diff --git a/modules/client/sync.cc b/modules/client/sync.cc index ee340f64b..0261805c1 100644 --- a/modules/client/sync.cc +++ b/modules/client/sync.cc @@ -558,6 +558,9 @@ try if(!dock.wait_until(args.timesout)) break; + assert(data.client && data.client->sock); + check(*data.client->sock); + if(queue.empty()) continue; @@ -582,6 +585,17 @@ try return false; } +catch(const std::system_error &e) +{ + log::derror + { + log, "longpoll %s failed :%s", + loghead(data), + e.what() + }; + + throw; +} catch(const std::exception &e) { log::error