Skip to content

Commit

Permalink
#1586 Resolves issue in P25 message framer where after transmitting t…
Browse files Browse the repository at this point in the history
…he current message the mDataUnitId is set to null and this causes an NPE when subsequent code is executed prior to shutdown of the channel. (#1593)

Co-authored-by: Dennis Sheirer <dsheirer@github.com>
  • Loading branch information
DSheirer and Dennis Sheirer committed Jul 3, 2023
1 parent ad2ab08 commit adfc8b2
Showing 1 changed file with 5 additions and 3 deletions.
Expand Up @@ -322,17 +322,19 @@ private void dispatchMessage()
TSBKMessage tsbkMessage = TSBKMessageFactory.create(mChannelStatusProcessor.getDirection(),
mDataUnitID, mBinaryMessage, mNAC, getTimestamp());

int messageLength = mDataUnitID.getMessageLength();

mMessageListener.receive(tsbkMessage);

if(tsbkMessage.isLastBlock())
{
reset(mDataUnitID.getMessageLength());
reset(messageLength);
mTrailingDibitsToSuppress = 1;
}
else
{
updateBitsProcessed(mDataUnitID.getMessageLength());
mBinaryMessage = new CorrectedBinaryMessage(mDataUnitID.getMessageLength());
updateBitsProcessed(messageLength);
mBinaryMessage = new CorrectedBinaryMessage(messageLength);
if(mDataUnitID == P25P1DataUnitID.TRUNKING_SIGNALING_BLOCK_1)
{
mDataUnitID = P25P1DataUnitID.TRUNKING_SIGNALING_BLOCK_2;
Expand Down

0 comments on commit adfc8b2

Please sign in to comment.