summaryrefslogtreecommitdiff
path: root/src/ex_getln.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2012-02-04 22:44:32 +0100
committerBram Moolenaar <Bram@vim.org>2012-02-04 22:44:32 +0100
commitd87fbc2b1cd106c3fa0e47329326ea33c90a3287 (patch)
treebff0398a8228d95f6a718fa7bc0172ad57124809 /src/ex_getln.c
parentfbe323d854eb67aefe7a595d703ad94d6d838b95 (diff)
downloadvim-git-d87fbc2b1cd106c3fa0e47329326ea33c90a3287.tar.gz
updated for version 7.3.425v7.3.425
Problem: Search history lines are duplicated. (Edwin Steiner) Solution: Convert separator character from space to NUL.
Diffstat (limited to 'src/ex_getln.c')
-rw-r--r--src/ex_getln.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/ex_getln.c b/src/ex_getln.c
index 70acb0ee6..80a39cc09 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -6027,8 +6027,10 @@ read_viminfo_history(virp)
val = viminfo_readstring(virp, 1, TRUE);
if (val != NULL && *val != NUL)
{
+ int sep = (*val == ' ' ? NUL : *val);
+
if (!in_history(type, val + (type == HIST_SEARCH),
- viminfo_add_at_front, *val))
+ viminfo_add_at_front, sep))
{
/* Need to re-allocate to append the separator byte. */
len = STRLEN(val);
@@ -6040,7 +6042,7 @@ read_viminfo_history(virp)
/* Search entry: Move the separator from the first
* column to after the NUL. */
mch_memmove(p, val + 1, (size_t)len);
- p[len] = (*val == ' ' ? NUL : *val);
+ p[len] = sep;
}
else
{