Skip to content

Commit

Permalink
[core] Fixed CRcvBufferNew::strFullnessState(..).
Browse files Browse the repository at this point in the history
Possible null pointer object call after if (m_entries[iLastPos].pUnit).
Show the first valid packet instead of the very first position in the buffer.
  • Loading branch information
maxsharabayko committed Apr 14, 2022
1 parent b8e788a commit cc62e98
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions srtcore/buffer_rcv.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1002,11 +1002,11 @@ string CRcvBufferNew::strFullnessState(int iFirstUnackSeqNo, const time_point& t
ss << " pkts. ";
if (m_tsbpd.isEnabled() && m_iMaxPosInc > 0)
{
const PacketInfo nextValidPkt = getFirstValidPacketInfo();
ss << " (TSBPD ready in ";
if (m_entries[m_iStartPos].pUnit)
if (!is_zero(nextValidPkt.tsbpd_time))
{
const uint32_t usPktTimestamp = m_entries[m_iStartPos].pUnit->m_Packet.getMsgTimeStamp();
ss << count_milliseconds(m_tsbpd.getPktTsbPdTime(usPktTimestamp) - tsNow);
ss << count_milliseconds(nextValidPkt.tsbpd_time - tsNow);
}
else
{
Expand All @@ -1017,7 +1017,7 @@ string CRcvBufferNew::strFullnessState(int iFirstUnackSeqNo, const time_point& t
if (m_entries[iLastPos].pUnit)
{
ss << ":";
const uint32_t usPktTimestamp = m_entries[m_iStartPos].pUnit->m_Packet.getMsgTimeStamp();
const uint32_t usPktTimestamp = m_entries[iLastPos].pUnit->m_Packet.getMsgTimeStamp();
ss << count_milliseconds(m_tsbpd.getPktTsbPdTime(usPktTimestamp) - tsNow);
ss << " ms";
}
Expand Down

0 comments on commit cc62e98

Please sign in to comment.