Previsously, when submodule commits headings contained non-latin-1 characters, they were displayed incorrectly in gitk, because $line was not properly decoded, i.e.
----------------------------- Documentation/Dokko ----------------------------- Submodule Documentation/Dokko 2ca20c7..0ea204d: > ÃÂÃÂþÃÂþúþûàÃÂþÿÃÂÃÂöõýøàÃÂÃÂá "ÃÂþÃÂÃÂøú-21631" (ÃÂÃÂ2 ø áðýôðû) > hardware: ôþúÃÂüõýÃÂðÃÂøàýð InnoDisk SATA 10000 > hardware: ôþúÃÂüõýÃÂðÃÂøàýð IEI PCISA-6770E2 v3.0 > hardware: ôþúÃÂüõýÃÂðÃÂøàýð Fastwel NIB941 > hardware: ôþúÃÂüõýÃÂðÃÂøàýð IEI IPX-9S > hardware: ôþúÃÂüõýÃÂðÃÂøàýð Hirschmann 5TX-EEC
instead of
----------------------------- Documentation/Dokko ----------------------------- Submodule Documentation/Dokko 2ca20c7..0ea204d: > ÐÑоÑÐ¾ÐºÐ¾Ð»Ñ ÑопÑÑÐ¶ÐµÐ½Ð¸Ñ ÐÐС "ÐоÑÑик-21631" (ÐÐ2 и Сандал) > hardware: докÑменÑаÑÐ¸Ñ Ð½Ð° InnoDisk SATA 10000 > hardware: докÑменÑаÑÐ¸Ñ Ð½Ð° IEI PCISA-6770E2 v3.0 > hardware: докÑменÑаÑÐ¸Ñ Ð½Ð° Fastwel NIB941 > hardware: докÑменÑаÑÐ¸Ñ Ð½Ð° IEI IPX-9S > hardware: докÑменÑаÑÐ¸Ñ Ð½Ð° Hirschmann 5TX-EEC
This fixes it.
Signed-off-by: Kirill Smelkov <kirr@landau.phys.spbu.ru> --- gitk | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-)
Show changes to gitk +2 −0
diff --git a/gitk b/gitk index 86dff0f..0edef8f 100755 --- a/gitk +++ b/gitk @@ -7689,8 +7689,10 @@ proc getblobdiffline {bdf ids} { makediffhdr $fname $ids $ctext insert end "\n$line\n" filesep } elseif {![string compare -length 3 " >" $line]} { + set line [encoding convertfrom $diffencoding $line] $ctext insert end "$line\n" dresult } elseif {![string compare -length 3 " <" $line]} { + set line [encoding convertfrom $diffencoding $line] $ctext insert end "$line\n" d0 } elseif {$diffinhdr} { if {![string compare -length 12 "rename from " $line]} {
-- 1.6.6.78.gbd757c.dirty