From: Bram Moolenaar Date: Tue, 4 Aug 2015 20:02:51 +0000 (+0200) Subject: patch 7.4.811 X-Git-Tag: v7.4.811 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=204b93f95831454e6924acf30b16fd4bdfda0d14;p=vim patch 7.4.811 Problem: Invalid memory access when using "exe 'sc'". Solution: Avoid going over the end of the string. (Dominique Pelle) --- diff --git a/src/ex_docmd.c b/src/ex_docmd.c index 251275759..13ed6b0a1 100644 --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -3129,8 +3129,8 @@ find_command(eap, full) ++p; } else if (p[0] == 's' - && ((p[1] == 'c' && p[2] != 's' && p[2] != 'r' - && p[3] != 'i' && p[4] != 'p') + && ((p[1] == 'c' && (p[2] == NUL || (p[2] != 's' && p[2] != 'r' + && (p[3] == NUL || (p[3] != 'i' && p[4] != 'p'))))) || p[1] == 'g' || (p[1] == 'i' && p[2] != 'm' && p[2] != 'l' && p[2] != 'g') || p[1] == 'I' diff --git a/src/version.c b/src/version.c index 7ad08d2f4..6546f6a01 100644 --- a/src/version.c +++ b/src/version.c @@ -741,6 +741,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 811, /**/ 810, /**/