Only adding tmp message if there's enough space

This commit is contained in:
Rodrigo Alfonso 2023-02-10 09:12:33 -03:00
parent 7a5e01b203
commit fdf3fa3d8b

View File

@ -1109,11 +1109,15 @@ class LinkWireless {
void copyState() { // (irq only)
if (!isAddingMessage) {
while (!sessionState.tmpMessagesToSend.isEmpty()) {
auto message = sessionState.tmpMessagesToSend.pop();
bool shouldPop = !isSessionActive() || canSend();
if (isSessionActive()) {
message._packetId = ++sessionState.lastPacketId;
sessionState.outgoingMessages.push(message);
if (shouldPop) {
auto message = sessionState.tmpMessagesToSend.pop();
if (isSessionActive()) {
message._packetId = ++sessionState.lastPacketId;
sessionState.outgoingMessages.push(message);
}
}
}