mirror of https://github.com/Icinga/icinga2.git
parent
647f1547a9
commit
19c632e44b
|
@ -233,8 +233,20 @@ void JsonRpcConnection::Disconnect()
|
||||||
|
|
||||||
m_Stream->lowest_layer().cancel(ec);
|
m_Stream->lowest_layer().cancel(ec);
|
||||||
|
|
||||||
|
Timeout::Ptr shutdownTimeout (new Timeout(
|
||||||
|
m_IoStrand.context(),
|
||||||
|
m_IoStrand,
|
||||||
|
boost::posix_time::seconds(10),
|
||||||
|
[this, keepAlive](asio::yield_context yc) {
|
||||||
|
boost::system::error_code ec;
|
||||||
|
m_Stream->lowest_layer().cancel(ec);
|
||||||
|
}
|
||||||
|
));
|
||||||
|
|
||||||
m_Stream->next_layer().async_shutdown(yc[ec]);
|
m_Stream->next_layer().async_shutdown(yc[ec]);
|
||||||
|
|
||||||
|
shutdownTimeout->Cancel();
|
||||||
|
|
||||||
m_Stream->lowest_layer().shutdown(m_Stream->lowest_layer().shutdown_both, ec);
|
m_Stream->lowest_layer().shutdown(m_Stream->lowest_layer().shutdown_both, ec);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue