From 4be609010758f0daef1be567a2b2bbea20700e1e Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Fri, 6 Mar 2015 13:57:21 +0000 Subject: Fix additional eol inserted when replace piping at end of buffer --- src/normal.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/normal.cc') diff --git a/src/normal.cc b/src/normal.cc index 02f5490c..2cf066d0 100644 --- a/src/normal.cc +++ b/src/normal.cc @@ -395,7 +395,8 @@ void pipe(Context& context, NormalParams) str += '\n'; str = ShellManager::instance().pipe(str, real_cmd, context, {}, EnvVarMap{}); - if (insert_eol and str.back() == '\n') + if ((insert_eol or sel.max() == buffer.back_coord()) and + str.back() == '\n') str = str.substr(0, str.length()-1); strings.push_back(std::move(str)); } -- cgit v1.2.3