Repository :
https://github.com/FarGroup/FarManager
On branch : master
Link :
https://github.com/FarGroup/FarManager/commit/8df4ce2ed1a33d6ee578af4cbac2a6d7d9bf60ad
>---------------------------------------------------------------
commit 8df4ce2ed1a33d6ee578af4cbac2a6d7d9bf60ad
Author: Yegor Mialyk <
16239726+y...@users.noreply.github.com>
Date: Sat Mar 11 13:51:20 2023 -0800
Fixed the rendering of the mark char if its length or visual length exceeds 1 char
>---------------------------------------------------------------
8df4ce2ed1a33d6ee578af4cbac2a6d7d9bf60ad
far/filelist.cpp | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/far/filelist.cpp b/far/filelist.cpp
index b9d93b306..1f48e0335 100644
--- a/far/filelist.cpp
+++ b/far/filelist.cpp
@@ -8476,12 +8476,14 @@ void FileList::ShowList(int ShowStatus,int StartColumn)
if (Global->Opt->Highlight && m_ListData[ListPos].Colors && !m_ListData[ListPos].Colors->Mark.Mark.empty() && Width>1)
{
- Width--;
+ const auto MarkLength = visual_string_length(m_ListData[ListPos].Colors->Mark.Mark);
+ Width -= MarkLength;
+
const auto OldColor = GetColor();
if (!ShowStatus)
SetShowColor(ListPos, false);
- Text(m_ListData[ListPos].Colors->Mark.Mark, visual_string_length(m_ListData[ListPos].Colors->Mark.Mark));
+ Text(m_ListData[ListPos].Colors->Mark.Mark, MarkLength);
SetColor(OldColor);
}