client: display_completion_matches add 0-byte check

Check that enough space for newline and 0-byte is left in line.
This fixes a buffer overflow on specific completion results.

Reported-By: Leona Maroni <dev@leona.is>
This commit is contained in:
Finn Behrens 2023-11-10 11:15:58 +01:00 committed by Denis Kenzior
parent 2f4c09def0
commit 8d2e35b2d4
1 changed files with 1 additions and 1 deletions

View File

@ -633,7 +633,7 @@ static void display_completion_matches(char **matches, int num_matches,
l_free(prompt);
for (index = 1, line_used = 0; matches[index]; index++) {
if ((line_used + max_length) > LINE_LEN) {
if ((line_used + max_length + 1) >= (LINE_LEN - 1)) {
strcpy(&line[line_used], "\n");
display_text(line);