mirror of https://github.com/g4klx/MMDVM.git
Fix crash on long data frames.
This commit is contained in:
parent
cf9fa93cb9
commit
f8d1cc7aed
|
@ -1806,7 +1806,7 @@ void CSerialPort::writeFMData(const uint8_t* data, uint16_t length)
|
||||||
reply[2U] = (length + 4U) - 255U;
|
reply[2U] = (length + 4U) - 255U;
|
||||||
reply[3U] = MMDVM_FM_DATA;
|
reply[3U] = MMDVM_FM_DATA;
|
||||||
|
|
||||||
for (uint8_t i = 0U; i < length; i++)
|
for (uint16_t i = 0U; i < length; i++)
|
||||||
reply[i + 4U] = data[i];
|
reply[i + 4U] = data[i];
|
||||||
|
|
||||||
writeInt(1U, reply, length + 4U);
|
writeInt(1U, reply, length + 4U);
|
||||||
|
@ -1814,7 +1814,7 @@ void CSerialPort::writeFMData(const uint8_t* data, uint16_t length)
|
||||||
reply[1U] = length + 3U;
|
reply[1U] = length + 3U;
|
||||||
reply[2U] = MMDVM_FM_DATA;
|
reply[2U] = MMDVM_FM_DATA;
|
||||||
|
|
||||||
for (uint8_t i = 0U; i < length; i++)
|
for (uint16_t i = 0U; i < length; i++)
|
||||||
reply[i + 3U] = data[i];
|
reply[i + 3U] = data[i];
|
||||||
|
|
||||||
writeInt(1U, reply, length + 3U);
|
writeInt(1U, reply, length + 3U);
|
||||||
|
@ -1875,7 +1875,7 @@ void CSerialPort::writeAX25Data(const uint8_t* data, uint16_t length)
|
||||||
reply[2U] = (length + 4U) - 255U;
|
reply[2U] = (length + 4U) - 255U;
|
||||||
reply[3U] = MMDVM_AX25_DATA;
|
reply[3U] = MMDVM_AX25_DATA;
|
||||||
|
|
||||||
for (uint8_t i = 0U; i < length; i++)
|
for (uint16_t i = 0U; i < length; i++)
|
||||||
reply[i + 4U] = data[i];
|
reply[i + 4U] = data[i];
|
||||||
|
|
||||||
writeInt(1U, reply, length + 4U);
|
writeInt(1U, reply, length + 4U);
|
||||||
|
@ -1883,7 +1883,7 @@ void CSerialPort::writeAX25Data(const uint8_t* data, uint16_t length)
|
||||||
reply[1U] = length + 3U;
|
reply[1U] = length + 3U;
|
||||||
reply[2U] = MMDVM_AX25_DATA;
|
reply[2U] = MMDVM_AX25_DATA;
|
||||||
|
|
||||||
for (uint8_t i = 0U; i < length; i++)
|
for (uint16_t i = 0U; i < length; i++)
|
||||||
reply[i + 3U] = data[i];
|
reply[i + 3U] = data[i];
|
||||||
|
|
||||||
writeInt(1U, reply, length + 3U);
|
writeInt(1U, reply, length + 3U);
|
||||||
|
@ -2110,7 +2110,7 @@ void CSerialPort::writeDebugDump(const uint8_t* data, uint16_t length)
|
||||||
reply[2U] = (length + 4U) - 255U;
|
reply[2U] = (length + 4U) - 255U;
|
||||||
reply[3U] = MMDVM_DEBUG_DUMP;
|
reply[3U] = MMDVM_DEBUG_DUMP;
|
||||||
|
|
||||||
for (uint8_t i = 0U; i < length; i++)
|
for (uint16_t i = 0U; i < length; i++)
|
||||||
reply[i + 4U] = data[i];
|
reply[i + 4U] = data[i];
|
||||||
|
|
||||||
writeInt(1U, reply, length + 4U);
|
writeInt(1U, reply, length + 4U);
|
||||||
|
@ -2118,10 +2118,9 @@ void CSerialPort::writeDebugDump(const uint8_t* data, uint16_t length)
|
||||||
reply[1U] = length + 3U;
|
reply[1U] = length + 3U;
|
||||||
reply[2U] = MMDVM_DEBUG_DUMP;
|
reply[2U] = MMDVM_DEBUG_DUMP;
|
||||||
|
|
||||||
for (uint8_t i = 0U; i < length; i++)
|
for (uint16_t i = 0U; i < length; i++)
|
||||||
reply[i + 3U] = data[i];
|
reply[i + 3U] = data[i];
|
||||||
|
|
||||||
writeInt(1U, reply, length + 3U);
|
writeInt(1U, reply, length + 3U);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue