From: Kirill Smelkov Date: Tue, 05 Jan 2010 12:44:54 GMT Subject: [PATCH RFC] gitk: display submodule diffs with appropriate encoding Message-ID: <1262695494-27975-1-git-send-email-kirr@landau.phys.spbu.ru> 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 --- gitk | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) 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