diff --git a/.gitignore b/.gitignore index 06279959..d08d4230 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ kilo +kilo_asan +*.dSYM diff --git a/kilo.c b/kilo.c index 0d8aef4e..dfdb54e2 100644 --- a/kilo.c +++ b/kilo.c @@ -486,7 +486,8 @@ void editorUpdateSyntax(erow *row) { int kw2 = keywords[j][klen-1] == '|'; if (kw2) klen--; - if (!memcmp(p,keywords[j],klen) && + if (klen <= row->rsize-i && + !memcmp(p,keywords[j],klen) && is_separator(*(p+klen))) { /* Keyword */