mirror of https://github.com/Icinga/icinga2.git
Avoid unnecessary Poll() calls
This commit is contained in:
parent
92a29e2f5b
commit
088efc3c69
|
@ -161,7 +161,14 @@ size_t TlsStream::Read(void *buffer, size_t count)
|
|||
std::ostringstream msgbuf;
|
||||
char errbuf[120];
|
||||
|
||||
if (SSL_want_read(m_SSL.get()))
|
||||
bool want_read;
|
||||
|
||||
{
|
||||
boost::mutex::scoped_lock lock(m_SSLLock);
|
||||
want_read = !SSL_pending(m_SSL.get()) || SSL_want_read(m_SSL.get());
|
||||
}
|
||||
|
||||
if (want_read)
|
||||
m_Socket->Poll(true, false);
|
||||
|
||||
boost::mutex::scoped_lock alock(m_IOActionLock);
|
||||
|
@ -216,10 +223,7 @@ void TlsStream::Write(const void *buffer, size_t count)
|
|||
std::ostringstream msgbuf;
|
||||
char errbuf[120];
|
||||
|
||||
bool want_write;
|
||||
|
||||
if (SSL_want_write(m_SSL.get()))
|
||||
m_Socket->Poll(false, true);
|
||||
m_Socket->Poll(false, true);
|
||||
|
||||
boost::mutex::scoped_lock alock(m_IOActionLock);
|
||||
|
||||
|
|
Loading…
Reference in New Issue