comparison irccdctl/cli.cpp @ 408:35c40ac0dc26

Irccdctl: avoid waiting on disconnect
author David Demelier <markand@malikania.fr>
date Fri, 20 Jan 2017 09:35:57 +0100
parents c6fbb6e0e06d
children 9be4f8a5cf1a
comparison
equal deleted inserted replaced
407:533f99e95caf 408:35c40ac0dc26
61 }); 61 });
62 62
63 try { 63 try {
64 ElapsedTimer timer; 64 ElapsedTimer timer;
65 65
66 while (!msg.is_object() && timer.elapsed() < 3000) 66 while (irccdctl.client().isConnected() && !msg.is_object() && timer.elapsed() < 3000)
67 util::poller::poll(3000 - timer.elapsed(), irccdctl); 67 util::poller::poll(3000 - timer.elapsed(), irccdctl);
68 } catch (const std::exception &) { 68 } catch (const std::exception &) {
69 irccdctl.client().onMessage.disconnect(id); 69 irccdctl.client().onMessage.disconnect(id);
70 throw; 70 throw;
71 } 71 }