fake_outputs: Don't read past the end of string
fake_outputs_init would unconditionally increase the string read pointer variable (walk) by one character more than the number of characters that have been read, to skip past the character delimiting records (a comma). However, when the input string was not terminated by a comma, it would cause the function to read past the null terminator instead. Avoid this by explicitly checking for the expected delimiter.
This commit is contained in:
@ -68,7 +68,9 @@ void fake_outputs_init(const char *output_spec) {
|
|||||||
num_screens++;
|
num_screens++;
|
||||||
}
|
}
|
||||||
|
|
||||||
walk += chars_consumed + 1;
|
walk += chars_consumed;
|
||||||
|
if (*walk == ',')
|
||||||
|
walk++;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (num_screens == 0) {
|
if (num_screens == 0) {
|
||||||
|
Reference in New Issue
Block a user