From d4247e06027da5b3ac299fbba3a7443a919ca0ff Mon Sep 17 00:00:00 2001 From: Kazuhiro Kato Date: Sat, 7 Dec 2019 00:32:25 +0000 Subject: [PATCH] gitk: fix branch name encoding error MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit After "git checkout -b '漢字'" to create a branch with UTF-8 character in it, "gitk" shows the branch name incorrectly, as it forgets to turn the bytes read from the "git show-ref" command into Unicode characters. Signed-off-by: Kazuhiro Kato Signed-off-by: Paul Mackerras --- gitk | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gitk b/gitk index 6fab67127a..888ea5dcb2 100755 --- a/gitk +++ b/gitk @@ -1780,11 +1780,15 @@ proc readrefs {} { global otherrefids idotherrefs mainhead mainheadid global selecthead selectheadid global hideremotes + global tclencoding foreach v {tagids idtags headids idheads otherrefids idotherrefs} { unset -nocomplain $v } set refd [open [list | git show-ref -d] r] + if {$tclencoding != {}} { + fconfigure $refd -encoding $tclencoding + } while {[gets $refd line] >= 0} { if {[string index $line 40] ne " "} continue set id [string range $line 0 39]