summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2011-04-28 17:24:58 +0200
committerBram Moolenaar <Bram@vim.org>2011-04-28 17:24:58 +0200
commitf8441477474f5ca2aa33660e0472a668f8c8bf0a (patch)
treed4142e0b9c039c7034cc54029db291b5015d1ca6
parentcca92ec8cfb16cf8341a928c9bea8ea56aa8df40 (diff)
downloadvim-git-7.3.166.tar.gz
updated for version 7.3.166v7.3.166
Problem: Buffer on the stack may be too big Solution: Allocate the space.
-rw-r--r--src/option.c9
-rw-r--r--src/version.c2
2 files changed, 10 insertions, 1 deletions
diff --git a/src/option.c b/src/option.c
index 6e9b3db1a..a545588f4 100644
--- a/src/option.c
+++ b/src/option.c
@@ -9185,7 +9185,7 @@ put_setstring(fd, cmd, name, valuep, expand)
int expand;
{
char_u *s;
- char_u buf[MAXPATHL];
+ char_u *buf;
if (fprintf(fd, "%s %s=", cmd, name) < 0)
return FAIL;
@@ -9203,9 +9203,16 @@ put_setstring(fd, cmd, name, valuep, expand)
}
else if (expand)
{
+ buf = alloc(MAXPATHL);
+ if (buf == NULL)
+ return FAIL;
home_replace(NULL, *valuep, buf, MAXPATHL, FALSE);
if (put_escstr(fd, buf, 2) == FAIL)
+ {
+ vim_free(buf);
return FAIL;
+ }
+ vim_free(buf);
}
else if (put_escstr(fd, *valuep, 2) == FAIL)
return FAIL;
diff --git a/src/version.c b/src/version.c
index 0bc4b7f73..031a0715c 100644
--- a/src/version.c
+++ b/src/version.c
@@ -715,6 +715,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 166,
+/**/
165,
/**/
164,