[FarGroup/FarManager] master: Fix a corner case in line endings parsing (2d56f6be0)

0 views
Skip to first unread message

farg...@farmanager.com

unread,
Dec 3, 2025, 5:30:54 PM (3 days ago) Dec 3
to farco...@googlegroups.com
Repository : https://github.com/FarGroup/FarManager
On branch : master
Link : https://github.com/FarGroup/FarManager/commit/2d56f6be0367d2d7cdd10e232bdaa16eb468de1c

>---------------------------------------------------------------

commit 2d56f6be0367d2d7cdd10e232bdaa16eb468de1c
Author: Alex Alabuzhev <alab...@gmail.com>
Date: Wed Dec 3 22:26:25 2025 +0000

Fix a corner case in line endings parsing


>---------------------------------------------------------------

2d56f6be0367d2d7cdd10e232bdaa16eb468de1c
far/filestr.cpp | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/far/filestr.cpp b/far/filestr.cpp
index 23616e9db..83c63f8f5 100644
--- a/far/filestr.cpp
+++ b/far/filestr.cpp
@@ -193,8 +193,6 @@ bool enum_lines::GetTString(std::basic_string<T, Traits>& To, eol& Eol) const

case 2:
Eol = eol::mac;
- m_EmitExtraCr = true;
- m_CrSeen = 1;
return true;

default:
@@ -632,6 +630,21 @@ TEST_CASE("enum_lines.eol")
{ {}, eol::win },
{ {}, eol::win },
}},
+ { L"\r\r\r\n"sv, {
+ { {}, eol::mac },
+ { {}, eol::bad_win },
+ }},
+ { L"\r\r\r\r\n"sv, {
+ { {}, eol::mac },
+ { {}, eol::mac },
+ { {}, eol::bad_win },
+ }},
+ { L"\r\r\r\r\r\n"sv, {
+ { {}, eol::mac },
+ { {}, eol::mac },
+ { {}, eol::mac },
+ { {}, eol::bad_win },
+ }},
{ L"\r\r\n\r\r\n"sv, {
{ {}, eol::bad_win },
{ {}, eol::bad_win },


Reply all
Reply to author
Forward
0 new messages