|
|
|
@ -229,6 +229,8 @@ int rd_ComRead(TComCtrl *_ptComCtrl, char *_pBuffer, uint32_t _iSize) |
|
|
|
|
|
|
|
char *pPeakData = NULL; |
|
|
|
int iPeakLen = rd_RingbufferPeak(_ptComCtrl->m_stComBuf.m_ptRecv, &pPeakData); |
|
|
|
char cPeekBuf[512]; |
|
|
|
int iPeekLenLinear = rd_RingbufferPeekLinear(_ptComCtrl->m_stComBuf.m_ptRecv, cPeekBuf, sizeof(cPeekBuf)); |
|
|
|
|
|
|
|
if (iPeakLen < 0) |
|
|
|
{ |
|
|
|
@ -238,6 +240,7 @@ int rd_ComRead(TComCtrl *_ptComCtrl, char *_pBuffer, uint32_t _iSize) |
|
|
|
{ |
|
|
|
Rd_SemWait(&_ptComCtrl->m_stComBuf.m_sem_Recv, __func__, NULL); |
|
|
|
iPeakLen = rd_RingbufferPeak(_ptComCtrl->m_stComBuf.m_ptRecv, &pPeakData); |
|
|
|
iPeekLenLinear = rd_RingbufferPeekLinear(_ptComCtrl->m_stComBuf.m_ptRecv, cPeekBuf, sizeof(cPeekBuf)); |
|
|
|
|
|
|
|
if (iPeakLen < 0) |
|
|
|
{ |
|
|
|
@ -269,7 +272,7 @@ int rd_ComRead(TComCtrl *_ptComCtrl, char *_pBuffer, uint32_t _iSize) |
|
|
|
iPackLen = 1; |
|
|
|
if (NULL != ptMutiDev->m_pfCheck) |
|
|
|
{ |
|
|
|
iPackLen = ptMutiDev->m_pfCheck(pPeakData, iPeakLen); |
|
|
|
iPackLen = ptMutiDev->m_pfCheck(cPeekBuf, iPeekLenLinear); |
|
|
|
} |
|
|
|
|
|
|
|
if (iPackLen > 0) |
|
|
|
@ -341,7 +344,7 @@ int rd_ComRead(TComCtrl *_ptComCtrl, char *_pBuffer, uint32_t _iSize) |
|
|
|
iPackLen = 1; |
|
|
|
if (NULL != ptMutiDev->m_pfCheck) |
|
|
|
{ |
|
|
|
iPackLen = ptMutiDev->m_pfCheck(pPeakData, iPeakLen); |
|
|
|
iPackLen = ptMutiDev->m_pfCheck(cPeekBuf, iPeekLenLinear); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|