From c7ff843ecf60ab74ce98929e45029b1aef5014e1 Mon Sep 17 00:00:00 2001 From: Oliver Kiddle Date: Wed, 5 Nov 2014 22:50:48 +0100 Subject: 33604: fix change merging for vi mode where a change has just been undone --- Src/Zle/zle_utils.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'Src/Zle/zle_utils.c') diff --git a/Src/Zle/zle_utils.c b/Src/Zle/zle_utils.c index 741f119d2..e95a34b95 100644 --- a/Src/Zle/zle_utils.c +++ b/Src/Zle/zle_utils.c @@ -1395,7 +1395,8 @@ static struct change *nextchanges, *endnextchanges; /* incremented to provide a unique change number */ -static zlong undo_changeno; +/**/ +zlong undo_changeno; /* If non-zero, the last increment to undo_changeno was for the variable */ @@ -1668,8 +1669,7 @@ splitundo(char **args) { if (vistartchange >= 0) { mergeundo(); - vistartchange = (curchange && curchange->prev) ? - curchange->prev->changeno : 0; + vistartchange = undo_changeno; } handleundo(); return 0; -- cgit 1.4.1