Skip to content

Commit e061335

Browse files
authored
Reserve the [Exit] slot when splitting canned messages (#11095)
splitConfiguredMessages capped the split loop at CANNED_MESSAGE_MODULE_MESSAGE_MAX_COUNT and then appended [Exit] unconditionally, so messages[] could be written one past its last index and messagesCount could exceed the array size.
1 parent 0199a1f commit e061335

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

src/modules/CannedMessageModule.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ int CannedMessageModule::splitConfiguredMessages()
179179
while (i < upTo) {
180180
if (this->messageBuffer[i] == '|') {
181181
this->messageBuffer[i] = '\0'; // End previous message
182-
if (tempCount >= CANNED_MESSAGE_MODULE_MESSAGE_MAX_COUNT)
182+
if (tempCount >= CANNED_MESSAGE_MODULE_MESSAGE_MAX_COUNT - 1)
183183
break;
184184
tempMessages[tempCount++] = (this->messageBuffer + i + 1);
185185
}

0 commit comments

Comments
 (0)