From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com [IPv6:2a00:1450:4864:20::231]) by sourceware.org (Postfix) with ESMTPS id C91733858402 for ; Tue, 2 Nov 2021 09:07:12 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org C91733858402 Received: by mail-lj1-x231.google.com with SMTP id x19so9583358ljm.11 for ; Tue, 02 Nov 2021 02:07:12 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=Xz7dz52DnSitSotRUI1Guc/Md/qiVENvU4Y9HP2bbq8=; b=q2XKVttF3pX0DT++B0EdfeBGZ2Mz8Wr3VrgVHObGRLos9b/nT6EfF38M6ZZ5U6AyEC jnSjOIcxA3HKmr/OA20LOM9w+kv1UQaOl4opIMsBMvXwUT0ijmjFvdXTEO2EMlklYGKX jpCeOzp08If8S7oPx05ya+kgrZkdTSrE1Gbct/rnQBCTMhppMneLmCN6a7P379LJi70x YjKvhT9xD58jErzLFv2CL9uh//AQiOjfX4Ephrl5Ng8Ztqx63bzNxxlkNLpWLiCXKv5R z7YtCGDUHAzQUWp8SVSTQkGQG+PxpT4AX/Tms0wMTH7YrY96g/APBTvZSQzVA8fPDmAw rNZg== X-Gm-Message-State: AOAM530SQ54F+KP1uOAF2mj9D7kUKzZBLafEqcuT6v77Z64FdW4y1dy3 oi2/qkPd9d2ZwNTWK17vNc5WDg9K1w+MDPEMDdw/TdnCIHw= X-Google-Smtp-Source: ABdhPJzZg/3c3qGL+WohdfXI/ZZwOsyvSErl0UEtKLd4cd48V4NExzoyBOgdwq/BTsANcsMV5WAf0JixNkSSjuVoXbc= X-Received: by 2002:a2e:8107:: with SMTP id d7mr22572018ljg.303.1635844030088; Tue, 02 Nov 2021 02:07:10 -0700 (PDT) MIME-Version: 1.0 From: =?UTF-8?B?0J3QuNC60LjRgtCwINCf0L7Qv9C+0LI=?= Date: Tue, 2 Nov 2021 14:06:58 +0500 Message-ID: Subject: [PATCH] gconv: Do not emit spurious NUL character in ISO-2022-JP-3 (bug 28524) To: libc-alpha@sourceware.org Content-Type: multipart/mixed; boundary="000000000000528fe805cfca9e92" X-Spam-Status: No, score=-9.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM, GIT_PATCH_0, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Nov 2021 09:07:15 -0000 --000000000000528fe805cfca9e92 Content-Type: text/plain; charset="UTF-8" Hello, I'm submitting a proposed patch for bug 28524. --000000000000528fe805cfca9e92 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-gconv-Do-not-emit-spurious-NUL-character-in-ISO-2022.patch" Content-Disposition: attachment; filename="0001-gconv-Do-not-emit-spurious-NUL-character-in-ISO-2022.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kvhv94nt0 RnJvbSAyZmE5NGVkMjIzNDI0ZmU2MmQxZTNlZjAyYTRiNTYyZTBlMTY0ZWFjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOaWtpdGEgUG9wb3YgPG5wdjEzMTBAZ21haWwuY29tPgpEYXRl OiBUdWUsIDIgTm92IDIwMjEgMTM6MjE6NDIgKzA1MDAKU3ViamVjdDogW1BBVENIXSBnY29udjog RG8gbm90IGVtaXQgc3B1cmlvdXMgTlVMIGNoYXJhY3RlciBpbiBJU08tMjAyMi1KUC0zCiAoYnVn IDI4NTI0KQoKQnVnZml4IDI3MjU2IGhhcyBpbnRyb2R1Y2VkIGFub3RoZXIgaXNzdWU6CkluIGNv bnZlcnNpb24gZnJvbSBJU08tMjAyMi1KUC0zIGVuY29kaW5nLCBpdCBpcyBwb3NzaWJsZQp0byBm b3JjZSBpY29udiB0byBlbWl0IGV4dHJhIE5VTCBjaGFyYWN0ZXIgb24gaW50ZXJuYWwgc3RhdGUg cmVzZXQuClRvIGRvIHRoaXMsIGl0IGlzIHN1ZmZpY2llbnQgdG8gZmVlZCBpY29udiB3aXRoIGVz Y2FwZSBzZXF1ZW5jZQp3aGljaCBzd2l0Y2hlcyBhY3RpdmUgY2hhcmFjdGVyIHNldC4KVGhlIHNp bXBsaWZpZWQgY2hlY2sgJ2RhdGEtPl9fc3RhdGVwLT5fX2NvdW50ICE9IEFTQ0lJX3NldCcKaW50 cm9kdWNlZCBieSB0aGUgYWZvcmVtZW50aW9uZWQgYnVnZml4IHBpY2tzIHRoYXQgY2FzZSBhbmQK YmVoYXZlcyBhcyBpZiAnXDAnIGNoYXJhY3RlciBoYXMgYmVlbiBxdWV1ZWQgdGh1cyBlbWl0dGlu ZyBpdC4KClRvIGVsaW1pbmF0ZSB0aGlzIGlzc3VlLCB0aGVzZSBzdGVwcyBhcmUgdGFrZW46Ciog UmVzdG9yZSBvcmlnaW5hbCBjb25kaXRpb24KJyhkYXRhLT5fX3N0YXRlcC0+X19jb3VudCAmIH43 KSAhPSBBU0NJSV9zZXQnLgpJdCBpcyBuZWNlc3Nhcnkgc2luY2UgYml0cyAwLTIgbWF5IGNvbnRh aW4KbnVtYmVyIG9mIGJ1ZmZlcmVkIGlucHV0IGNoYXJhY3RlcnMuCiogQ2hlY2sgdGhhdCBxdWV1 ZWQgY2hhcmFjdGVyIGlzIG5vdCBOVUwuClNpbWlsYXIgc3RlcCBpcyB0YWtlbiBmb3IgbWFpbiBj b252ZXJzaW9uIGxvb3AuCgpCdW5kbGVkIHRlc3QgY2FzZSBmb2xsb3dzIGZvbGxvd2luZyBsb2dp YzoKKiBUcnkgdG8gY29udmVydCBJU08tMjAyMi1KUC0zIGVzY2FwZSBzZXF1ZW5jZQpzd2l0Y2hp bmcgYWN0aXZlIGNoYXJhY3RlciBzZXQKKiBSZXNldCBpbnRlcm5hbCBzdGF0ZSBieSBwcm92aWRp bmcgTlVMTCBhcyBpbnB1dCBidWZmZXIKKiBFbnN1cmUgdGhhdCBub3RoaW5nIGhhcyBiZWVuIGNv bnZlcnRlZC4KClNpZ25lZC1vZmYtYnk6IE5pa2l0YSBQb3BvdiA8bnB2MTMxMEBnbWFpbC5jb20+ Ci0tLQogaWNvbnZkYXRhL01ha2VmaWxlICAgICAgICB8ICA0ICsrLQogaWNvbnZkYXRhL2J1Zy1p Y29udjE1LmMgICB8IDU1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwog aWNvbnZkYXRhL2lzby0yMDIyLWpwLTMuYyB8IDI3ICsrKysrKysrKysrKystLS0tLS0KIDMgZmls ZXMgY2hhbmdlZCwgNzcgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBpY29udmRhdGEvYnVnLWljb252MTUuYwoKZGlmZiAtLWdpdCBhL2ljb252ZGF0YS9N YWtlZmlsZSBiL2ljb252ZGF0YS9NYWtlZmlsZQppbmRleCBjMjE2Zjk1OWRmLi5mNzg4OGRlMjlj IDEwMDY0NAotLS0gYS9pY29udmRhdGEvTWFrZWZpbGUKKysrIGIvaWNvbnZkYXRhL01ha2VmaWxl CkBAIC03NCw3ICs3NCw3IEBAIGlmZXEgKHllcywkKGJ1aWxkLXNoYXJlZCkpCiB0ZXN0cyA9IGJ1 Zy1pY29udjEgYnVnLWljb252MiB0c3QtbG9hZGluZyB0c3QtZTJiaWcgdHN0LWljb252NCBidWct aWNvbnY0IFwKIAl0c3QtaWNvbnY2IGJ1Zy1pY29udjUgYnVnLWljb252NiB0c3QtaWNvbnY3IGJ1 Zy1pY29udjggYnVnLWljb252OSBcCiAJYnVnLWljb252MTAgYnVnLWljb252MTEgYnVnLWljb252 MTIgdHN0LWljb252LWJpZzUtaGtzY3MtdG8tMnVjczQgXAotCWJ1Zy1pY29udjEzIGJ1Zy1pY29u djE0CisJYnVnLWljb252MTMgYnVnLWljb252MTQgYnVnLWljb252MTUKIGlmZXEgKCQoaGF2ZS10 aHJlYWQtbGlicmFyeSkseWVzKQogdGVzdHMgKz0gYnVnLWljb252MwogZW5kaWYKQEAgLTMyNyw2 ICszMjcsOCBAQCAkKG9ianBmeClidWctaWNvbnYxMi5vdXQ6ICQoYWRkcHJlZml4ICQob2JqcGZ4 KSwgJChnY29udi1tb2R1bGVzKSkgXAogCQkJICAkKGFkZHByZWZpeCAkKG9ianBmeCksJChtb2R1 bGVzLnNvKSkKICQob2JqcGZ4KWJ1Zy1pY29udjE0Lm91dDogJChhZGRwcmVmaXggJChvYmpwZngp LCAkKGdjb252LW1vZHVsZXMpKSBcCiAJCQkgICQoYWRkcHJlZml4ICQob2JqcGZ4KSwkKG1vZHVs ZXMuc28pKQorJChvYmpwZngpYnVnLWljb252MTUub3V0OiAkKGFkZHByZWZpeCAkKG9ianBmeCks ICQoZ2NvbnYtbW9kdWxlcykpIFwKKwkJCSAgJChhZGRwcmVmaXggJChvYmpwZngpLCQobW9kdWxl cy5zbykpCiAKICQob2JqcGZ4KWljb252LXRlc3Qub3V0OiBydW4taWNvbnYtdGVzdC5zaCBcCiAJ CQkgJChhZGRwcmVmaXggJChvYmpwZngpLCAkKGdjb252LW1vZHVsZXMpKSBcCmRpZmYgLS1naXQg YS9pY29udmRhdGEvYnVnLWljb252MTUuYyBiL2ljb252ZGF0YS9idWctaWNvbnYxNS5jCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAuLjQwMzdlMTMxZmYKLS0tIC9kZXYvbnVs bAorKysgYi9pY29udmRhdGEvYnVnLWljb252MTUuYwpAQCAtMCwwICsxLDU1IEBACisvKiBCdWcg Mjg1MjQ6IENvbnZlcnNpb24gZnJvbSBJU08tMjAyMi1KUC0zIHdpdGggaWNvbnYKKyAgIG1heSBl bWl0IHNwdXJpb3VzIE5VTCBjaGFyYWN0ZXIgb24gc3RhdGUgcmVzZXQuCisgICBDb3B5cmlnaHQg KEMpIFRoZSBHTlUgVG9vbGNoYWluIEF1dGhvcnMuCisgICBUaGlzIGZpbGUgaXMgcGFydCBvZiB0 aGUgR05VIEMgTGlicmFyeS4KKworICAgVGhlIEdOVSBDIExpYnJhcnkgaXMgZnJlZSBzb2Z0d2Fy ZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgICBtb2RpZnkgaXQgdW5kZXIgdGhl IHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisgICBMaWNlbnNlIGFzIHB1 Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKyAgIHZlcnNp b24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJz aW9uLgorCisgICBUaGUgR05VIEMgTGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0 aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAgIE1FUkNIQU5UQUJJTElUWSBvciBG SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgICBMZXNzZXIg R2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCisgICBZb3Ugc2hvdWxk IGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisg ICBMaWNlbnNlIGFsb25nIHdpdGggdGhlIEdOVSBDIExpYnJhcnk7IGlmIG5vdCwgc2VlCisgICA8 aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LiAgKi8KKworI2luY2x1ZGUgPHN0ZGRlZi5o PgorI2luY2x1ZGUgPGljb252Lmg+CisjaW5jbHVkZSA8c3VwcG9ydC9jaGVjay5oPgorCitzdGF0 aWMgaW50Citkb190ZXN0ICh2b2lkKQoreworICBjaGFyIGluW10gPSAiXHgxYihJIjsKKyAgY2hh ciAqaW5idWYgPSBpbjsKKyAgc2l6ZV90IGlubGVmdCA9IHNpemVvZiAoaW4pIC0gMTsKKyAgY2hh ciBvdXRbMV07CisgIGNoYXIgKm91dGJ1ZiA9IG91dDsKKyAgc2l6ZV90IG91dGxlZnQgPSBzaXpl b2YgKG91dCk7CisgIGljb252X3QgY2Q7CisKKyAgY2QgPSBpY29udl9vcGVuICgiVVRGOCIsICJJ U08tMjAyMi1KUC0zIik7CisgIFRFU1RfVkVSSUZZX0VYSVQgKGNkICE9IChpY29udl90KSAtMSk7 CisKKyAgLyogRmlyc3QgY2FsbCB0byBpY29udiBzaG91bGQgYWx0ZXIgaW50ZXJuYWwgc3RhdGUu CisgICAgIE5vdywgSklTWDAyMDFfS2FuYV9zZXQgaXMgc2VsZWN0ZWQgYW5kCisgICAgIHN0YXRl IHZhbHVlICE9IEFTQ0lJX3NldCAqLworICBURVNUX1ZFUklGWSAoaWNvbnYgKGNkLCAmaW5idWYs ICZpbmxlZnQsICZvdXRidWYsICZvdXRsZWZ0KSAhPSAoc2l6ZV90KSAtMSk7CisKKyAgLyogU2Vj b25kIGNhbGwgc2hhbGwgZW1pdCBzcHVyaW91cyBOVUwgY2hhcmFjdGVyIGluIHVucGF0Y2hlZCBn bGliYy4gKi8KKyAgVEVTVF9WRVJJRlkgKGljb252IChjZCwgTlVMTCwgTlVMTCwgJm91dGJ1Ziwg Jm91dGxlZnQpICE9IChzaXplX3QpIC0xKTsKKworICAvKiBObyBjaGFyYWN0ZXJzIGFyZSBleHBl Y3RlZCB0byBiZSBwcm9kdWNlZC4gKi8KKyAgVEVTVF9WRVJJRlkgKG91dGJ1ZiA9PSBvdXQpOwor ICBURVNUX1ZFUklGWSAob3V0bGVmdCA9PSBzaXplb2YgKG91dCkpOworCisgIFRFU1RfVkVSSUZZ X0VYSVQgKGljb252X2Nsb3NlIChjZCkgIT0gLTEpOworCisgIHJldHVybiAwOworfQorCisjaW5j bHVkZSA8c3VwcG9ydC90ZXN0LWRyaXZlci5jPgpkaWZmIC0tZ2l0IGEvaWNvbnZkYXRhL2lzby0y MDIyLWpwLTMuYyBiL2ljb252ZGF0YS9pc28tMjAyMi1qcC0zLmMKaW5kZXggNzBiMjhhY2U3Zi4u NWU2NmQ2ODZmMSAxMDA2NDQKLS0tIGEvaWNvbnZkYXRhL2lzby0yMDIyLWpwLTMuYworKysgYi9p Y29udmRhdGEvaXNvLTIwMjItanAtMy5jCkBAIC03OSwyMCArNzksMzEgQEAgZW51bQogICAgdGhl IG91dHB1dCBzdGF0ZSB0byB0aGUgaW5pdGlhbCBzdGF0ZS4gIFRoaXMgaGFzIHRvIGJlIGRvbmUg ZHVyaW5nIHRoZQogICAgZmx1c2hpbmcuICAqLwogI2RlZmluZSBFTUlUX1NISUZUX1RPX0lOSVQg XAotICBpZiAoZGF0YS0+X19zdGF0ZXAtPl9fY291bnQgIT0gQVNDSUlfc2V0KQkJCSAgICAgIFwK KyAgaWYgKChkYXRhLT5fX3N0YXRlcC0+X19jb3VudCAmIH43KSAhPSBBU0NJSV9zZXQpCQkJICAg ICAgXAogICAgIHsJCQkJCQkJCQkgICAgICBcCiAgICAgICBpZiAoRlJPTV9ESVJFQ1RJT04pCQkJ CQkJICAgICAgXAogCXsJCQkJCQkJCSAgICAgIFwKLQkgIGlmIChfX2dsaWJjX2xpa2VseSAob3V0 YnVmICsgNCA8PSBvdXRlbmQpKQkJCSAgICAgIFwKKwkgIHVpbnQzMl90IGNoID0gZGF0YS0+X19z dGF0ZXAtPl9fY291bnQgPj4gNjsJCQkgICAgICBcCisJCQkJCQkJCQkgICAgICBcCisJICBpZiAo X19nbGliY191bmxpa2VseSAoY2ggIT0gMCkpCQkJCSAgICAgIFwKIAkgICAgewkJCQkJCQkJICAg ICAgXAotCSAgICAgIC8qIFdyaXRlIG91dCB0aGUgbGFzdCBjaGFyYWN0ZXIuICAqLwkJCSAgICAg IFwKLQkgICAgICAqKCh1aW50MzJfdCAqKSBvdXRidWYpID0gZGF0YS0+X19zdGF0ZXAtPl9fY291 bnQgPj4gNjsJICAgICAgXAotCSAgICAgIG91dGJ1ZiArPSBzaXplb2YgKHVpbnQzMl90KTsJCQkJ ICAgICAgXAotCSAgICAgIGRhdGEtPl9fc3RhdGVwLT5fX2NvdW50ID0gQVNDSUlfc2V0OwkJCVwK KwkgICAgICBpZiAoX19nbGliY19saWtlbHkgKG91dGJ1ZiArIDQgPD0gb3V0ZW5kKSkJCSAgICAg IFwKKwkJewkJCQkJCQkgICAgICBcCisJCSAgLyogV3JpdGUgb3V0IHRoZSBsYXN0IGNoYXJhY3Rl ci4gICovCQkJICAgICAgXAorCQkgIHB1dDMydSAob3V0YnVmLCBjaCk7CQkJCQkgICAgICBcCisJ CSAgb3V0YnVmICs9IDQ7CQkJCQkJICAgICAgXAorCQkgIGRhdGEtPl9fc3RhdGVwLT5fX2NvdW50 ICY9IDc7CQkJCSAgICAgIFwKKwkJICBkYXRhLT5fX3N0YXRlcC0+X19jb3VudCB8PSBBU0NJSV9z ZXQ7CQkJICAgICAgXAorCQl9CQkJCQkJCSAgICAgIFwKKwkgICAgICBlbHNlCQkJCQkJCSAgICAg IFwKKwkJLyogV2UgZG9uJ3QgaGF2ZSBlbm91Z2ggcm9vbSBpbiB0aGUgb3V0cHV0IGJ1ZmZlci4g ICovCSAgICAgIFwKKwkJc3RhdHVzID0gX19HQ09OVl9GVUxMX09VVFBVVDsJCQkJICAgICAgXAog CSAgICB9CQkJCQkJCQkgICAgICBcCiAJICBlbHNlCQkJCQkJCQkgICAgICBcCi0JICAgIC8qIFdl IGRvbid0IGhhdmUgZW5vdWdoIHJvb20gaW4gdGhlIG91dHB1dCBidWZmZXIuICAqLwkgICAgICBc Ci0JICAgIHN0YXR1cyA9IF9fR0NPTlZfRlVMTF9PVVRQVVQ7CQkJCSAgICAgIFwKKwkgICAgewkJ CQkJCQkJICAgICAgXAorCSAgICAgIGRhdGEtPl9fc3RhdGVwLT5fX2NvdW50ICY9IDc7CQkJCSAg ICAgIFwKKwkgICAgICBkYXRhLT5fX3N0YXRlcC0+X19jb3VudCB8PSBBU0NJSV9zZXQ7CQkJICAg ICAgXAorCSAgICB9CQkJCQkJCQkgICAgICBcCiAJfQkJCQkJCQkJICAgICAgXAogICAgICAgZWxz ZQkJCQkJCQkJICAgICAgXAogCXsJCQkJCQkJCSAgICAgIFwKLS0gCjIuMTcuMQoK --000000000000528fe805cfca9e92--