[parser] Don't crash for files that don't end in newlines

The parser assumes all lines end in newlines, but sometimes this isn't
true. Check for a null terminator along with '\n' when stripping leading
spaces.
This commit is contained in:
Peter0x44 2024-05-14 23:12:45 +01:00
parent 3d885ef919
commit 05f04e47a5

View File

@ -1243,7 +1243,7 @@ static char **GetTextLines(const char *buffer, int length, int *linesCount)
while ((bufferPtr[index] == ' ') || (bufferPtr[index] == '\t')) index++; while ((bufferPtr[index] == ' ') || (bufferPtr[index] == '\t')) index++;
int j = 0; int j = 0;
while (bufferPtr[index + j] != '\n') while (bufferPtr[index + j] != '\n' && bufferPtr[index + j] != '\0')
{ {
lines[i][j] = bufferPtr[index + j]; lines[i][j] = bufferPtr[index + j];
j++; j++;