From be83b73ddb2ee8297037166d243f72e3423a3ce3 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 25 Aug 2015 14:21:19 +0200 Subject: patch 7.4.832 Problem: $HOME in is expanded too early. Solution: Skip over when expanding environment names. --- src/misc1.c | 20 ++++++++++++++++++++ src/version.c | 2 ++ 2 files changed, 22 insertions(+) diff --git a/src/misc1.c b/src/misc1.c index f32cb25130..ee2da0887b 100644 --- a/src/misc1.c +++ b/src/misc1.c @@ -3969,6 +3969,26 @@ expand_env_esc(srcp, dst, dstlen, esc, one, startstr) --dstlen; /* leave one char space for "\," */ while (*src && dstlen > 0) { +#ifdef FEAT_EVAL + /* Skip over `=expr`. */ + if (src[0] == '`' && src[1] == '=') + { + size_t len; + + var = src; + src += 2; + (void)skip_expr(&src); + if (*src == '`') + ++src; + len = src - var; + if (len > (size_t)dstlen) + len = dstlen; + vim_strncpy(dst, var, len); + dst += len; + dstlen -= len; + continue; + } +#endif copy_char = TRUE; if ((*src == '$' #ifdef VMS diff --git a/src/version.c b/src/version.c index e99e87edf5..8d1da06c94 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 */ +/**/ + 832, /**/ 831, /**/ -- cgit v1.2.3