diff --git a/src/pPowerManger/udpcomm/udpComm.cpp b/src/pPowerManger/udpcomm/udpComm.cpp index f269b24..1d0bb0d 100644 --- a/src/pPowerManger/udpcomm/udpComm.cpp +++ b/src/pPowerManger/udpcomm/udpComm.cpp @@ -60,7 +60,6 @@ bool udpComm::getMsgFromBuff(char *m, msg_CcuStateFbMsg &s) { msg_CcuStateFbMsg *p; p = reinterpret_cast(m); sum = calculateChecksum((unsigned char*)m, sizeof(msg_CcuStateFbMsg)); - if (sum != p->checkCode) { sError.push_back("CcuStat Msg Check error"); return false; @@ -175,10 +174,10 @@ bool udpComm::pushMsgToQueue(unsigned char *m) msg_CcuStateFbMsg s; if(getMsgFromBuff((char *)Buff,s)) { + std::lock_guard lock(m_mutexCcuState); if(m_qReceiveCcuStateBuffer.size() lock(m_mutexCcuState); m_qReceiveCcuStateBuffer.push(std::make_pair(time, s)); } else @@ -199,10 +198,10 @@ bool udpComm::pushMsgToQueue(unsigned char *m) msg_CcuSetParmFbMsg s; if(getMsgFromBuff((char *)Buff,s)) { + std::lock_guard lock(m_mutexCcuSetParm); if(m_qReceiveCcuSetParmBuffer.size() lock(m_mutexCcuSetParm); m_qReceiveCcuSetParmBuffer.push(std::make_pair(time, s)); } else @@ -223,10 +222,10 @@ bool udpComm::pushMsgToQueue(unsigned char *m) msg_disHighVolBusFbMsg s; if(getMsgFromBuff((char *)Buff,s)) { + std::lock_guard lock(m_mutexDisHighVolBus); if(m_qReceiveDisHighVolBusBuffer.size() lock(m_mutexDisHighVolBus); m_qReceiveDisHighVolBusBuffer.push(std::make_pair(time, s)); } else @@ -247,10 +246,10 @@ bool udpComm::pushMsgToQueue(unsigned char *m) msg_disHighAVolBusFbMsg s; if(getMsgFromBuff((char *)Buff,s)) { + std::lock_guard lock(m_mutexDisHighAVolBus); if(m_qReceiveDisHighAVolBusBuffer.size() lock(m_mutexDisHighAVolBus); m_qReceiveDisHighAVolBusBuffer.push(std::make_pair(time, s)); } else @@ -271,10 +270,10 @@ bool udpComm::pushMsgToQueue(unsigned char *m) msg_disLowMainBusFbMsg s; if(getMsgFromBuff((char *)Buff,s)) { + std::lock_guard lock(m_mutexDisHighBVolBus); if(m_qReceiveDisHighBVolBusBuffer.size() lock(m_mutexDisHighBVolBus); m_qReceiveDisHighBVolBusBuffer.push(std::make_pair(time, s)); } else @@ -295,10 +294,10 @@ bool udpComm::pushMsgToQueue(unsigned char *m) msg_disLowBusFbMsg s; if(getMsgFromBuff((char *)Buff,s)) { + std::lock_guard lock(m_mutexDisLowBus); if(m_qReceiveDisLowBusBuffer.size() lock(m_mutexDisLowBus); m_qReceiveDisLowBusBuffer.push(std::make_pair(time, s)); } else @@ -316,7 +315,8 @@ bool udpComm::pushMsgToQueue(unsigned char *m) } default: break; - } + } + return true; } bool udpComm::clearMsgQueue()