From 520b4238feca614970c86226555280afd63b991f Mon Sep 17 00:00:00 2001 From: Joey Shin <31655886+eecs1999@users.noreply.github.com> Date: Fri, 19 Aug 2022 19:06:10 +0900 Subject: [PATCH] Check Carriage Return from unix In my environment(Ubuntu 20.04) when I copy multi lines at gnome terminal, all lines are added an additional newline. I think it's because of the carriage return from Unix. It's a solution that ignores the carriage return. --- src/lib/platform/MSWindowsClipboardAnyTextConverter.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/platform/MSWindowsClipboardAnyTextConverter.cpp b/src/lib/platform/MSWindowsClipboardAnyTextConverter.cpp index e46b1de8..f1918baa 100644 --- a/src/lib/platform/MSWindowsClipboardAnyTextConverter.cpp +++ b/src/lib/platform/MSWindowsClipboardAnyTextConverter.cpp @@ -104,7 +104,7 @@ std::string MSWindowsClipboardAnyTextConverter::convertLinefeedToWin32(const std // copy string, converting newlines n = (UInt32)src.size(); for (const char* scan = src.c_str(); n > 0; ++scan, --n) { - if (scan[0] == '\n') { + if (scan[0] == '\n' && dst.back() != '\r') { dst += '\r'; } dst += scan[0];