File tree Expand file tree Collapse file tree 3 files changed +16
-3
lines changed Expand file tree Collapse file tree 3 files changed +16
-3
lines changed Original file line number Diff line number Diff line change @@ -235,7 +235,9 @@ bool CDStarControl::writeModem(unsigned char *data, unsigned int len)
235
235
236
236
return false ;
237
237
} else if (m_rfState == RS_RF_AUDIO) {
238
- unsigned int errors = m_fec.regenerateDStar (data + 1U );
238
+ unsigned int errors = 0U ;
239
+ if (!m_rfHeader.isDataPacket ())
240
+ errors = m_fec.regenerateDStar (data + 1U );
239
241
240
242
m_rfErrs += errors;
241
243
m_rfBits += 48U ;
@@ -354,7 +356,9 @@ bool CDStarControl::writeModem(unsigned char *data, unsigned int len)
354
356
355
357
delete header;
356
358
357
- unsigned int errors = m_fec.regenerateDStar (data + 1U );
359
+ unsigned int errors = 0U ;
360
+ if (!m_rfHeader.isDataPacket ())
361
+ errors = m_fec.regenerateDStar (data + 1U );
358
362
359
363
m_rfErrs += errors;
360
364
m_rfBits += 48U ;
@@ -529,7 +533,9 @@ void CDStarControl::writeNetwork()
529
533
530
534
unsigned char n = data[1U ];
531
535
532
- unsigned int errors = m_fec.regenerateDStar (data + 2U );
536
+ unsigned int errors = 0U ;
537
+ if (!m_netHeader.isDataPacket ())
538
+ errors = m_fec.regenerateDStar (data + 2U );
533
539
534
540
blankDTMF (data + 2U );
535
541
Original file line number Diff line number Diff line change @@ -72,6 +72,11 @@ void CDStarHeader::setRepeater(bool on)
72
72
m_header[0U ] &= ~DSTAR_REPEATER_MASK;
73
73
}
74
74
75
+ bool CDStarHeader::isDataPacket () const
76
+ {
77
+ return (m_header[0U ] & DSTAR_DATA_MASK) == DSTAR_DATA_MASK;
78
+ }
79
+
75
80
void CDStarHeader::setUnavailable (bool on)
76
81
{
77
82
if (on)
Original file line number Diff line number Diff line change @@ -28,6 +28,8 @@ class CDStarHeader {
28
28
bool isRepeater () const ;
29
29
void setRepeater (bool on);
30
30
31
+ bool isDataPacket () const ;
32
+
31
33
void setUnavailable (bool on);
32
34
33
35
void getMyCall1 (unsigned char * call1) const ;
You can’t perform that action at this time.
0 commit comments