mirror of https://github.com/Icinga/icinga2.git
HttpServerConnection#DataAvailableHandler(): be aware of being called multiple times concurrently
refs #6816
This commit is contained in:
parent
797ecd1539
commit
1d6cec5a99
|
@ -351,7 +351,11 @@ void HttpServerConnection::DataAvailableHandler()
|
|||
bool close = false;
|
||||
|
||||
if (!m_Stream->IsEof()) {
|
||||
boost::recursive_mutex::scoped_lock lock(m_DataHandlerMutex);
|
||||
boost::recursive_mutex::scoped_try_lock lock(m_DataHandlerMutex);
|
||||
if (!lock.owns_lock()) {
|
||||
Log(LogInformation, "HttpServerConnection", "Unable to process available data, they're already being processed in another thread");
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
while (ProcessMessage())
|
||||
|
|
Loading…
Reference in New Issue