From patchwork Sat Dec 7 00:29:09 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?5Yqg6Jek5LiA5Y2a?= X-Patchwork-Id: 11277207 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 9910C6C1 for ; Sat, 7 Dec 2019 00:29:16 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 6C9892245C for ; Sat, 7 Dec 2019 00:29:16 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ksysllc.onmicrosoft.com header.i=@ksysllc.onmicrosoft.com header.b="eBq1MZ0a" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726483AbfLGA3P (ORCPT ); Fri, 6 Dec 2019 19:29:15 -0500 Received: from mail-eopbgr1310059.outbound.protection.outlook.com ([40.107.131.59]:12352 "EHLO APC01-SG2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726469AbfLGA3O (ORCPT ); Fri, 6 Dec 2019 19:29:14 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hf9o2/sWwsyC5PqxxvAjJWQeVh4UWa0ET982FON18OVO70HT46d27Yq0EyRCvZXz4EfUU9M6CwvzMKiCxljfnvdAO+q83L/X6gOKhoYiaumsH+J2HPfCSq23+b1jWNCibUmKGZUTEXt4q9sVjbl3ZF/gxZwfhNPgTB+jB57oMR2rmnX466QZx43QJfrkKYkjYOtfqahW3YxxBU4+Hht2VAkh/mHWzGdSsWLpt3OYLQt4RS0lL3wZ+m/QXUANJ/7bLLRiAldiD57JN/ldRwZhYAA8gJSluB7+ksTXs+64lQluVOZI8Lalpm7zR/nk515w7gD+px5iGCjGyslcKqzfTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BMV8uW+g4TPegDFoOZrSZ+C6LntdPbyASG6MyKrTRsQ=; b=PuMrkXx0gO+elPEKaN31m41IaTdIZ2oufsWO8zw+zLODQrO1uhPk3EF5bQZDEGBK1gcOxGoKz7b6QXRr2y85Yd84b5QGmtXnY7ejqTQ+JMLdbVd42khYf6fI8MCSzOfq9+FvafCR+oipS7TbZIWLBOiLLX3ci7eTuS6VBKL6Vzd3UZGEBLASaobDWCAi2r9xCthszRnkRZUJ0CrSIfImr6p9IIBCS9TJKysgo+XoYP61bFbBmEx41m9swszwSeiE8nDmmDguM7JdtOkicJE+D1mahIv0klV8kpPRfl2Tx/IDAu8mNzRmU5y30HIw7DdD4uBDazO7LWesGKtnWtZ9fA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ksysllc.co.jp; dmarc=pass action=none header.from=ksysllc.co.jp; dkim=pass header.d=ksysllc.co.jp; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ksysllc.onmicrosoft.com; s=selector2-ksysllc-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BMV8uW+g4TPegDFoOZrSZ+C6LntdPbyASG6MyKrTRsQ=; b=eBq1MZ0a1KzrvbUb+aiyeuxRdkESojOWF43IFq9S6vqtFZ4hYutSAXQV3vVDRC1fEHujhC0r6YVw0/eqwt3xqwcRducSaOfVfjsr4sz6gkjySwkNLUDfENKKATFbwL+shYta8Nb0yrcERQ6RlyZb16R5bzeTctY+UE+3Ict+wWA= Received: from TY2PR01MB2427.jpnprd01.prod.outlook.com (20.177.100.73) by TY2PR01MB3532.jpnprd01.prod.outlook.com (20.178.141.210) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2516.17; Sat, 7 Dec 2019 00:29:09 +0000 Received: from TY2PR01MB2427.jpnprd01.prod.outlook.com ([fe80::b074:84bd:8776:a29f]) by TY2PR01MB2427.jpnprd01.prod.outlook.com ([fe80::b074:84bd:8776:a29f%7]) with mapi id 15.20.2516.015; Sat, 7 Dec 2019 00:29:09 +0000 From: =?utf-8?b?5Yqg6Jek5LiA5Y2a?= To: "git@vger.kernel.org" CC: =?utf-8?b?5Yqg6Jek5LiA5Y2a?= Subject: [PATCH] git gui: fix branch name encoding error on git gui Thread-Topic: [PATCH] git gui: fix branch name encoding error on git gui Thread-Index: AQHVrJVXQ11/xAaD40W94w+igsJl6A== Date: Sat, 7 Dec 2019 00:29:09 +0000 Message-ID: <20191207002842.32208-1-kato-k@ksysllc.co.jp> Accept-Language: ja-JP, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: TYAPR01CA0059.jpnprd01.prod.outlook.com (2603:1096:404:2b::23) To TY2PR01MB2427.jpnprd01.prod.outlook.com (2603:1096:404:7b::9) authentication-results: spf=none (sender IP is ) smtp.mailfrom=kato-k@ksysllc.co.jp; x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.20.1.windows.1 x-originating-ip: [123.223.66.231] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: ead66689-63fe-455a-0bb9-08d77aac79e8 x-ms-traffictypediagnostic: TY2PR01MB3532: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6108; x-forefront-prvs: 0244637DEA x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(39830400003)(396003)(366004)(136003)(376002)(346002)(199004)(189003)(8676002)(6916009)(305945005)(6486002)(316002)(5640700003)(6512007)(99286004)(52116002)(36756003)(1076003)(66556008)(64756008)(66476007)(66446008)(66946007)(5660300002)(2616005)(26005)(508600001)(86362001)(102836004)(6506007)(107886003)(186003)(85182001)(4326008)(2906002)(71200400001)(1730700003)(81166006)(81156014)(71190400001)(8936002)(50226002);DIR:OUT;SFP:1101;SCL:1;SRVR:TY2PR01MB3532;H:TY2PR01MB2427.jpnprd01.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: ksysllc.co.jp does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: stNyDwZ3a78ME5QJHmJq9HHYf3/nQsQkLi17B1eJpnGt9+Qtj/lxUVQ+3IyLng3nRCj/QbIwXaNAyK+xWtqSi1yilFxQY1Qvog+r4D1XhePm/sV1gRPTXUqUJZdq1IpAvWQQdX0C/8l5pTFTDMsKeVxtm+Er3xMBegNmyp1CcAtFAiu6QanMKoYNnbdVISIonKiT1hhUNDbCyB3K5VS+DcdsyWm/1O+RoGxysvdoR/NasURZXqUV+lW9957R+MAylMnVqK5NzHAzfXc6VXteocA6qtZ3vFV1EQSH3wTP6U+Bko2PZ5MGYK4droPytQdG1U+S8vxlOpAlHKSzcbox8KnYRg+qBFdSqHilx1kvQ0A5oEIRRz2nyoTDpncbDiKJrA42iGCgFg2FetuaXNEgEwLmubcaf9Dr/OJG7CdIHQZvuJ607Tok0xAu2ClKyohs Content-ID: <138ADBC2E5F55D489BBED32D6BD41166@jpnprd01.prod.outlook.com> MIME-Version: 1.0 X-OriginatorOrg: ksysllc.co.jp X-MS-Exchange-CrossTenant-Network-Message-Id: ead66689-63fe-455a-0bb9-08d77aac79e8 X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Dec 2019 00:29:09.5617 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: e2e801e1-1bfd-4c29-8e88-a6b5a79038d8 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: lOrNAlFzRYuREVc6PFDwgyyoqBs+PsI/Lui/HrZlaiGEO66fT1NTpzZ5Da7cQuSiJ1pPNyS9rBBkimkVOI2x0Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: TY2PR01MB3532 Sender: git-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: git@vger.kernel.org After "git checkout -b '漢字'" to create a branch with UTF-8 character in it, "git gui" shows the branch name incorrectly, as it forgets to turn the bytes read from the "git for-each-ref" and read from "HEAD" file into Unicode characters. Signed-off-by: Kazuhiro Kato --- git-gui.sh | 1 + lib/branch.tcl | 2 ++ 2 files changed, 3 insertions(+) diff --git a/git-gui.sh b/git-gui.sh index 0d21f56..8f4a9ae 100755 --- a/git-gui.sh +++ b/git-gui.sh @@ -684,6 +684,7 @@ proc load_current_branch {} { global current_branch is_detached set fd [open [gitdir HEAD] r] + fconfigure $fd -translation binary -encoding utf-8 if {[gets $fd ref] < 1} { set ref {} } diff --git a/lib/branch.tcl b/lib/branch.tcl index 777eeb7..8b0c485 100644 --- a/lib/branch.tcl +++ b/lib/branch.tcl @@ -8,6 +8,7 @@ proc load_all_heads {} { set rh_len [expr {[string length $rh] + 1}] set all_heads [list] set fd [git_read for-each-ref --format=%(refname) $rh] + fconfigure $fd -translation binary -encoding utf-8 while {[gets $fd line] > 0} { if {!$some_heads_tracking || ![is_tracking_branch $line]} { lappend all_heads [string range $line $rh_len end] @@ -24,6 +25,7 @@ proc load_all_tags {} { --sort=-taggerdate \ --format=%(refname) \ refs/tags] + fconfigure $fd -translation binary -encoding utf-8 while {[gets $fd line] > 0} { if {![regsub ^refs/tags/ $line {} name]} continue lappend all_tags $name