From 3557c68d1c9f4ce0191163a4ab48b6c5cec68488 Mon Sep 17 00:00:00 2001 From: Lars Op den Kamp Date: Fri, 11 Nov 2011 23:52:47 +0100 Subject: [PATCH] cec: check whether the initiator is valid in CCECProcessor::ParseCommand(). fixes possible segfault when parsing invalid data --- src/lib/CECProcessor.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/CECProcessor.cpp b/src/lib/CECProcessor.cpp index bdcb4d3..cc8d86e 100644 --- a/src/lib/CECProcessor.cpp +++ b/src/lib/CECProcessor.cpp @@ -659,7 +659,7 @@ void CCECProcessor::ParseCommand(cec_command &command) dataStr.AppendFormat(":%02x", (unsigned int)command.parameters[iPtr]); m_controller->AddLog(CEC_LOG_TRAFFIC, dataStr.c_str()); - if (!m_bMonitor) + if (!m_bMonitor && command.initiator >= CECDEVICE_TV && command.initiator < CECDEVICE_BROADCAST) m_busDevices[(uint8_t)command.initiator]->HandleCommand(command); } -- 2.34.1