From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jim Porter Newsgroups: gmane.emacs.bugs Subject: bug#59622: 29.0.50; [PATCH] Regression in Eshell's handling of escaped newlines Date: Sat, 26 Nov 2022 16:36:59 -0800 Message-ID: <90faf628-390d-1094-2fcb-e6a23ac46da8@gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------k14fyLamPluour2GQkGtrBE6" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="31170"; mail-complaints-to="usenet@ciao.gmane.io" To: 59622@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Nov 27 01:38:24 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oz5gd-0007x3-RF for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 27 Nov 2022 01:38:24 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oz5gM-0002Nv-4t; Sat, 26 Nov 2022 19:38:06 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oz5gK-0002Nj-D6 for bug-gnu-emacs@gnu.org; Sat, 26 Nov 2022 19:38:04 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oz5gK-0006u7-1K for bug-gnu-emacs@gnu.org; Sat, 26 Nov 2022 19:38:04 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oz5gI-0000oy-3a for bug-gnu-emacs@gnu.org; Sat, 26 Nov 2022 19:38:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Jim Porter Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 27 Nov 2022 00:38:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 59622 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.16695094293142 (code B ref -1); Sun, 27 Nov 2022 00:38:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 27 Nov 2022 00:37:09 +0000 Original-Received: from localhost ([127.0.0.1]:41718 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oz5fQ-0000oc-6V for submit@debbugs.gnu.org; Sat, 26 Nov 2022 19:37:09 -0500 Original-Received: from lists.gnu.org ([209.51.188.17]:57724) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oz5fO-0000oW-0E for submit@debbugs.gnu.org; Sat, 26 Nov 2022 19:37:07 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oz5fN-0002Jy-Qy for bug-gnu-emacs@gnu.org; Sat, 26 Nov 2022 19:37:05 -0500 Original-Received: from mail-pj1-x1034.google.com ([2607:f8b0:4864:20::1034]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oz5fL-0006qr-Av for bug-gnu-emacs@gnu.org; Sat, 26 Nov 2022 19:37:05 -0500 Original-Received: by mail-pj1-x1034.google.com with SMTP id x13-20020a17090a46cd00b00218f611b6e9so7195969pjg.1 for ; Sat, 26 Nov 2022 16:37:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=to:subject:from:content-language:mime-version:date:message-id:from :to:cc:subject:date:message-id:reply-to; bh=n7UGkeWBN39QbNGsZ1X8Ml8TPkPHDms7GbCa2qKjdEI=; b=Fbues1dv26AdXAmdwXJr1V/+C5j5NYT8ib/PDHImSRqBk4fdYq7KjrY3PqI2rCE910 b80XqkHgM6Wh2s9OvCoG/R+zKCb8XP/wZb+RI1skN4YFe3+HZe9Bcbm8zUzqBy09ibWe CHBgVkjUGA9n1rgZTIvMC7Go5CqZWmWkHUDkrcsgztdUECMESLDFFuyPYdNc2i0ani1l ku7go0AHBBzJHqfeVyoFjqSN0xMh024Kr1bXIbjV1/F2GROWoHjV75QiFX0NvT7wMTNS 8Q1Y6UmEJ0xsDB/AW8sR17Kj8ZytjrHc1xMZW6CIwT/lrIynkeyDwq08CZYFie0KbpMW UUmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:from:content-language:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=n7UGkeWBN39QbNGsZ1X8Ml8TPkPHDms7GbCa2qKjdEI=; b=Lw1jCrWI0PkTHx+Qx2iza2a28dgvT3lkIJ44kMC87eLqCiaaWuqW/I9GUzU+yQg2Qw wtYsF1Eih4Vj5w4aCbjftC+MPMw0AroZlInkccq2Upi9w/hbhYuxuOcab9bX+qjaK4cv g3WOdvrYUhlM+WsojyxR7mPpC/yi2oYlrBZ9SO6JcW3owTeVbwthEvapX3RyTHCfSH0B td9hcqYKGoiftXlFfpB5169tTi7PqFI1NNabrDq5i5AvpHn4lG52ISSgg5P4HnDsm9Lv ZME0YkR/CzwdGe3v5wTRXWxGfp8LElyWgJnKNxyPd/y6tn9IM/WN23zIvCFDx6UPoVEc qumA== X-Gm-Message-State: ANoB5pnQcY1arFcScrPwlzU2KzqCh4pNIxj52LI112afx+BcI7lkn+p1 hFumL8XxaGLtvBTRfGO76jFU7QJJfh4= X-Google-Smtp-Source: AA0mqf4tY7zK2/a3renkPZhW3Z0PNUdywrDq4XZG88OYAvXY9BSflOZLnf/ak/r+OJJSCG9xbb4lCA== X-Received: by 2002:a17:90a:e2c2:b0:218:825e:17f8 with SMTP id fr2-20020a17090ae2c200b00218825e17f8mr43508880pjb.129.1669509421469; Sat, 26 Nov 2022 16:37:01 -0800 (PST) Original-Received: from [192.168.1.2] (cpe-76-168-148-233.socal.res.rr.com. [76.168.148.233]) by smtp.googlemail.com with ESMTPSA id d9-20020a170902b70900b001869f2120a5sm5933677pls.34.2022.11.26.16.37.00 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 26 Nov 2022 16:37:00 -0800 (PST) X-Mozilla-News-Host: news://news.gmane.io:119 Content-Language: en-US Received-SPF: pass client-ip=2607:f8b0:4864:20::1034; envelope-from=jporterbugs@gmail.com; helo=mail-pj1-x1034.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:249153 Archived-At: This is a multi-part message in MIME format. --------------k14fyLamPluour2GQkGtrBE6 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Starting from "emacs -Q -f eshell": # Emacs 28 ~ $ echo foo\ bar foobar # Emacs 29 ~ $ echo foo\ bar foo bar That is, Emacs 28 used to treat escaped newlines in the way you'd expect from other shells: it expands to the empty string. Now in Emacs 29, it inserts a literal newline. There's also a similar bug when doing this inside double-quotes: # Emacs 28 ~ $ echo "foo\ bar" ("foo\\" "bar") # Emacs 29 ~ $ echo "foo\ bar" foo\ bar Here, both cases are wrong. In Emacs 29, it inserts the literal backslash+newline combo, but Emacs 28 is even worse: it returns a list of two elements! Wrapping arguments in quotes should always produce a string in Eshell. --------------k14fyLamPluour2GQkGtrBE6 Content-Type: text/plain; charset=UTF-8; name="0001-Treat-escaped-newlines-in-Eshell-as-the-empty-string.patch" Content-Disposition: attachment; filename*0="0001-Treat-escaped-newlines-in-Eshell-as-the-empty-string.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAzMDE4YzFjMGMyZDAzYzE3NTRlYzVjZjEyYzgzNmFhMWM5M2NlNDY4IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFNhdCwgMjYgTm92IDIwMjIgMTE6NTI6MTggLTA4MDAKU3ViamVjdDogW1BB VENIXSBUcmVhdCBlc2NhcGVkIG5ld2xpbmVzIGluIEVzaGVsbCBhcyB0aGUgZW1wdHkgc3Ry aW5nCgoqIGxpc3AvZXNoZWxsL2VzaC1hcmcuZWwgKGVzaGVsbC1wYXJzZS1hcmd1bWVudCk6 IEhhbmRsZQonZXNoZWxsLWVtcHR5LXRva2VuJyBhcyB0aGUgcmVzdWx0IG9mIGFuIGFyZ3Vt ZW50LXBhcnNpbmcgaG9vay4KKGVzaGVsbC1wYXJzZS1hcmd1bWVudC1ob29rKTogRG9jdW1l bnQgJ2VzaGVsbC1lbXB0eS10b2tlbicuCihlc2hlbGwtcGFyc2UtYmFja3NsYXNoKTogUmV0 dXJuICdlc2hlbGwtZW1wdHktdG9rZW4nIHdoZW4KZW5jb3VudGVyaW5nIGFuIGVzY2FwZWQg bmV3bGluZS4KCiogdGVzdC9saXNwL2VzaGVsbC9lc2hlbGwtdGVzdHMuZWwgKGVzaGVsbC10 ZXN0L2VzY2FwZS1ub25zcGVjaWFsKQooZXNoZWxsLXRlc3QvZXNjYXBlLW5vbnNwZWNpYWwt dW5pY29kZSkKKGVzaGVsbC10ZXN0L2VzY2FwZS1ub25zcGVjaWFsLXF1b3RlZCkKKGVzaGVs bC10ZXN0L2VzY2FwZS1zcGVjaWFsLXF1b3RlZCk6IE1vdmUgZnJvbSBoZXJlLi4uCgoqIHRl c3QvbGlzcC9lc2hlbGwvZXNoLWFyZy10ZXN0cy5lbCAoZXNoLWFyZy10ZXN0L2VzY2FwZS9u b25zcGVjaWFsKQooZXNoLWFyZy10ZXN0L2VzY2FwZS9ub25zcGVjaWFsLXVuaWNvZGUpCihl c2gtYXJnLXRlc3QvZXNjYXBlLXF1b3RlZC9ub25zcGVjaWFsKQooZXNoLWFyZy10ZXN0L2Vz Y2FwZS1xdW90ZWQvc3BlY2lhbCk6IC4uLiB0byBoZXJlLgooZXNoLWFyZy10ZXN0L2VzY2Fw ZS9zcGVjaWFsLCBlc2gtYXJnLXRlc3QvZXNjYXBlL25ld2xpbmUpCihlc2gtYXJnLXRlc3Qv ZXNjYXBlLXF1b3RlZC9uZXdsaW5lKTogTmV3IHRlc3RzLgoKKiBkb2MvbWlzYy9lc2hlbGwu dGV4aSAoQXJndW1lbnRzKTogRXhwbGFpbiBlc2NhcGluZyBsb2dpYyBpbiBtb3JlCmRldGFp bC4KLS0tCiBkb2MvbWlzYy9lc2hlbGwudGV4aSAgICAgICAgICAgICAgfCAgMjMgKysrKysr KwogbGlzcC9lc2hlbGwvZXNoLWFyZy5lbCAgICAgICAgICAgIHwgIDQ2ICsrKysrKysrLS0t LS0KIHRlc3QvbGlzcC9lc2hlbGwvZXNoLWFyZy10ZXN0cy5lbCB8IDEwNSArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysKIHRlc3QvbGlzcC9lc2hlbGwvZXNoZWxsLXRlc3RzLmVs ICB8ICAzMSAtLS0tLS0tLS0KIDQgZmlsZXMgY2hhbmdlZCwgMTU2IGluc2VydGlvbnMoKyks IDQ5IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHRlc3QvbGlzcC9lc2hlbGwv ZXNoLWFyZy10ZXN0cy5lbAoKZGlmZiAtLWdpdCBhL2RvYy9taXNjL2VzaGVsbC50ZXhpIGIv ZG9jL21pc2MvZXNoZWxsLnRleGkKaW5kZXggZTZkZGNmMTFkZi4uNjdkOGY4ZjgxZCAxMDA2 NDQKLS0tIGEvZG9jL21pc2MvZXNoZWxsLnRleGkKKysrIGIvZG9jL21pc2MvZXNoZWxsLnRl eGkKQEAgLTI2Myw2ICsyNjMsMjkgQEAgQXJndW1lbnRzCiBjaGFyYWN0ZXJzIGxpa2UgcGlw ZSAoQGNvZGV7fH0pLCB3aGljaCBjb3VsZCBiZSBwYXJ0IG9mIHJlbW90ZSBmaWxlCiBuYW1l cy4KIAorV2hlbiB5b3UgZXNjYXBlIGEgY2hhcmFjdGVyIHdpdGggQGNvZGV7XH0gb3V0c2lk ZSBvZiBxdW90ZXMsIHRoZQorcmVzdWx0IGlzIHRoZSBsaXRlcmFsIGNoYXJhY3RlciBpbW1l ZGlhdGVseSBmb2xsb3dpbmcgaXQsIHNvCitAc2FtcHtcJDEwfSBtZWFucyB0aGUgbGl0ZXJh bCBzdHJpbmcgQGNvZGV7JDEwfS4gIEluc2lkZSBvZgorZG91YmxlIHF1b3RlcywgdGhlIHJl c3VsdCBpcyB0aGUgbGl0ZXJhbCBjaGFyYWN0ZXIgZm9sbG93aW5nIGl0IGlmCit0aGF0IGNo YXJhY3RlciBpcyBzcGVjaWFsLCBvciB0aGUgZnVsbCBAY29kZXtcQHZhcntjfX0gc2VxdWVu Y2UKK290aGVyd2lzZTsgaW5zaWRlIGRvdWJsZS1xdW90ZXMsIEBjb2Rle1x9LCBAY29kZXsi fSwgYW5kIEBjb2RleyR9IGFyZQorY29uc2lkZXJlZCBzcGVjaWFsLgorCitBZGRpdGlvbmFs bHksIHdoZW4gZXNjYXBpbmcgYSBuZXdsaW5lLCB0aGUgd2hvbGUgZXNjYXBlIHNlcXVlbmNl IGlzCityZW1vdmVkIGJ5IHRoZSBwYXJzZXIuICBUaGlzIGxldHMgeW91IGNvbnRpbnVlIGNv bW1hbmRzIGFjcm9zcworbXVsdGlwbGUgbGluZXM6CisKK0BleGFtcGxlCit+ICQgZWNobyAi Zm9vXAorYmFyIgorZm9vYmFyCitAZW5kIGV4YW1wbGUKKworSW5zaWRlIGFwb3N0cm9waGVz LCBlc2NhcGluZyB3b3JrcyBkaWZmZXJlbnRseS4gIEFsbCBjaGFyYWN0ZXJzCitiZXR3ZWVu IHRoZSBhcG9zdHJvcGhlcyBoYXZlIHRoZWlyIGxpdGVyYWwgbWVhbmluZyBleGNlcHQgQGNv ZGV7J30sCit3aGljaCBlbmRzIHRoZSBxdW90ZWQgc3RyaW5nLiAgVG8gaW5zZXJ0IGEgbGl0 ZXJhbCBhcG9zdHJvcGhlLCB5b3UgY2FuCit1c2UgQGNvZGV7Jyd9LgorCiBXaGVuIHVzaW5n IGV4cGFuc2lvbnMgKEBweHJlZntFeHBhbnNpb259KSBpbiBhbiBFc2hlbGwgY29tbWFuZCwg dGhlCiByZXN1bHQgbWF5IHBvdGVudGlhbGx5IGJlIG9mIGFueSBkYXRhIHR5cGUuICBUbyBl bnN1cmUgdGhhdCB0aGUgcmVzdWx0CiBpcyBhbHdheXMgYSBzdHJpbmcsIHRoZSBleHBhbnNp b24gY2FuIGJlIHN1cnJvdW5kZWQgYnkgZG91YmxlIHF1b3Rlcy4KZGlmZiAtLWdpdCBhL2xp c3AvZXNoZWxsL2VzaC1hcmcuZWwgYi9saXNwL2VzaGVsbC9lc2gtYXJnLmVsCmluZGV4IGY4 N2NjMmYyMGEuLjI5YzhiN2JhMGIgMTAwNjQ0Ci0tLSBhL2xpc3AvZXNoZWxsL2VzaC1hcmcu ZWwKKysrIGIvbGlzcC9lc2hlbGwvZXNoLWFyZy5lbApAQCAtMTQ2LDkgKzE0NiwxMCBAQCBl c2hlbGwtcGFyc2UtYXJndW1lbnQtaG9vawogV2hlbiBlYWNoIGZ1bmN0aW9uIG9uIHRoaXMg aG9vayBpcyBjYWxsZWQsIHBvaW50IHdpbGwgYmUgYXQgdGhlCiBjdXJyZW50IHBvc2l0aW9u IHdpdGhpbiB0aGUgYXJndW1lbnQgbGlzdC4gIFRoZSBmdW5jdGlvbiBzaG91bGQgZWl0aGVy CiByZXR1cm4gbmlsLCBtZWFuaW5nIHRoYXQgaXQgZGlkIG5vIGFyZ3VtZW50IHBhcnNpbmcs IG9yIGl0IHNob3VsZAotcmV0dXJuIHRoZSByZXN1bHQgb2YgdGhlIHBhcnNlIGFzIGEgc2V4 cC4gIEl0IGlzIGFsc28gcmVzcG9uc2libGUgZm9yCi1tb3ZpbmcgdGhlIHBvaW50IGZvcndh cmQgdG8gcmVmbGVjdCB0aGUgYW1vdW50IG9mIGlucHV0IHRleHQgdGhhdCB3YXMKLXBhcnNl ZC4KK3JldHVybiB0aGUgcmVzdWx0IG9mIHRoZSBwYXJzZSBhcyBhIHNleHAuICBJZiB0aGUg ZnVuY3Rpb24gZGlkIGRvCithcmd1bWVudCBwYXJzaW5nLCBidXQgdGhlIHJlc3VsdCB3YXMg bm90aGluZyBhdCBhbGwsIGl0IHNob3VsZCByZXR1cm4KK2Blc2hlbGwtZW1wdHktdG9rZW4n LiAgVGhlIGZ1bmN0aW9uIGlzIGFsc28gcmVzcG9uc2libGUgZm9yIG1vdmluZyB0aGUKK3Bv aW50IGZvcndhcmQgdG8gcmVmbGVjdCB0aGUgYW1vdW50IG9mIGlucHV0IHRleHQgdGhhdCB3 YXMgcGFyc2VkLgogCiBJZiB0aGUgaG9vayBkZXRlcm1pbmVzIHRoYXQgaXQgaGFzIHJlYWNo ZWQgdGhlIGVuZCBvZiBhbiBhcmd1bWVudCwgaXQKIHNob3VsZCBjYWxsIGBlc2hlbGwtZmlu aXNoLWFyZycgdG8gY29tcGxldGUgcHJvY2Vzc2luZyBvZiB0aGUgY3VycmVudApAQCAtMzI1 LDEzICszMjYsMTQgQEAgZXNoZWxsLXBhcnNlLWFyZ3VtZW50CiAJCSAgIChwcm9nMQogCQkg ICAgICAgKGNoYXItdG8tc3RyaW5nIChjaGFyLWFmdGVyKSkKIAkJICAgICAoZm9yd2FyZC1j aGFyKSkpKSkKLQkgIChpZiAobm90IGVzaGVsbC1jdXJyZW50LWFyZ3VtZW50KQotCSAgICAg IChzZXRxIGVzaGVsbC1jdXJyZW50LWFyZ3VtZW50IHJlc3VsdCkKLQkgICAgKHVubGVzcyBl c2hlbGwtYXJnLWxpc3RpZmllZAotCSAgICAgIChzZXRxIGVzaGVsbC1jdXJyZW50LWFyZ3Vt ZW50Ci0JCSAgICAobGlzdCBlc2hlbGwtY3VycmVudC1hcmd1bWVudCkKLQkJICAgIGVzaGVs bC1hcmctbGlzdGlmaWVkIHQpKQotCSAgICAobmNvbmMgZXNoZWxsLWN1cnJlbnQtYXJndW1l bnQgKGxpc3QgcmVzdWx0KSkpKSkpCisgICAgICAgICAgKHVubGVzcyAoZXEgcmVzdWx0ICdl c2hlbGwtZW1wdHktdG9rZW4pCisgICAgICAgICAgICAoaWYgKG5vdCBlc2hlbGwtY3VycmVu dC1hcmd1bWVudCkKKyAgICAgICAgICAgICAgICAoc2V0cSBlc2hlbGwtY3VycmVudC1hcmd1 bWVudCByZXN1bHQpCisgICAgICAgICAgICAgICh1bmxlc3MgZXNoZWxsLWFyZy1saXN0aWZp ZWQKKyAgICAgICAgICAgICAgICAoc2V0cSBlc2hlbGwtY3VycmVudC1hcmd1bWVudAorICAg ICAgICAgICAgICAgICAgICAgIChsaXN0IGVzaGVsbC1jdXJyZW50LWFyZ3VtZW50KQorICAg ICAgICAgICAgICAgICAgICAgIGVzaGVsbC1hcmctbGlzdGlmaWVkIHQpKQorICAgICAgICAg ICAgICAobmNvbmMgZXNoZWxsLWN1cnJlbnQtYXJndW1lbnQgKGxpc3QgcmVzdWx0KSkpKSkp KQogICAgICh3aGVuIChhbmQgb3V0ZXIgZXNoZWxsLWN1cnJlbnQtYXJndW1lbnQpCiAgICAg ICAoYWRkLXRleHQtcHJvcGVydGllcyBhcmctYmVnaW4gKDErIGFyZy1iZWdpbikKIAkJCSAg ICcoYXJnLWJlZ2luIHQgcmVhci1ub25zdGlja3kKQEAgLTM3MywxNyArMzc1LDI1IEBAIGVz aGVsbC1wYXJzZS1iYWNrc2xhc2gKIGFmdGVyIGFyZSBib3RoIHJldHVybmVkLiIKICAgKHdo ZW4gKGVxIChjaGFyLWFmdGVyKSA/XFwpCiAgICAgKHdoZW4gKGVzaGVsbC1sb29raW5nLWF0 LWJhY2tzbGFzaC1yZXR1cm4gKHBvaW50KSkKLQkodGhyb3cgJ2VzaGVsbC1pbmNvbXBsZXRl ID9cXCkpCisgICAgICAgICh0aHJvdyAnZXNoZWxsLWluY29tcGxldGUgP1xcKSkKICAgICAo Zm9yd2FyZC1jaGFyIDIpIDsgTW92ZSBvbmUgY2hhciBwYXN0IHRoZSBiYWNrc2xhc2guCiAg ICAgOzsgSWYgdGhlIGNoYXIgaXMgaW4gYSBxdW90ZSwgYmFja3NsYXNoIG9ubHkgaGFzIHNw ZWNpYWwgbWVhbmluZwogICAgIDs7IGlmIGl0IGlzIGVzY2FwaW5nIGEgc3BlY2lhbCBjaGFy LgotICAgIChpZiBlc2hlbGwtY3VycmVudC1xdW90ZWQKLSAgICAgICAgKGlmIChtZW1xIChj aGFyLWJlZm9yZSkgZXNoZWxsLXNwZWNpYWwtY2hhcnMtaW5zaWRlLXF1b3RpbmcpCi0gICAg ICAgICAgICAobGlzdCAnZXNoZWxsLWVzY2FwZS1hcmcgKGNoYXItdG8tc3RyaW5nIChjaGFy LWJlZm9yZSkpKQotICAgICAgICAgIChjb25jYXQgIlxcIiAoY2hhci10by1zdHJpbmcgKGNo YXItYmVmb3JlKSkpKQotICAgICAgKGlmIChtZW1xIChjaGFyLWJlZm9yZSkgZXNoZWxsLXNw ZWNpYWwtY2hhcnMtb3V0c2lkZS1xdW90aW5nKQotICAgICAgICAgIChsaXN0ICdlc2hlbGwt ZXNjYXBlLWFyZyAoY2hhci10by1zdHJpbmcgKGNoYXItYmVmb3JlKSkpCi0gICAgICAgIChj aGFyLXRvLXN0cmluZyAoY2hhci1iZWZvcmUpKSkpKSkKKyAgICAobGV0ICgoc3BlY2lhbC1j aGFycyAoaWYgZXNoZWxsLWN1cnJlbnQtcXVvdGVkCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGVzaGVsbC1zcGVjaWFsLWNoYXJzLWluc2lkZS1xdW90aW5nCisgICAgICAgICAg ICAgICAgICAgICAgICAgICBlc2hlbGwtc3BlY2lhbC1jaGFycy1vdXRzaWRlLXF1b3Rpbmcp KSkKKyAgICAgIChjb25kCisgICAgICAgOzsgRXNjYXBlZCBuZXdsaW5lcyBhcmUgZXh0cmEt c3BlY2lhbDogdGhleSBleHBhbmQgdG8gYW4gZW1wdHkKKyAgICAgICA7OyB0b2tlbiB0byBh bGxvdyBmb3IgY29udGludWluZyBFc2hlbGwgY29tbWFuZHMgYWNyb3NzCisgICAgICAgOzsg bXVsdGlwbGUgbGluZXMuCisgICAgICAgKChlcSAoY2hhci1iZWZvcmUpID9cbikKKyAgICAg ICAgJ2VzaGVsbC1lbXB0eS10b2tlbikKKyAgICAgICAoKG1lbXEgKGNoYXItYmVmb3JlKSBz cGVjaWFsLWNoYXJzKQorICAgICAgICAobGlzdCAnZXNoZWxsLWVzY2FwZS1hcmcgKGNoYXIt dG8tc3RyaW5nIChjaGFyLWJlZm9yZSkpKSkKKyAgICAgICAoZXNoZWxsLWN1cnJlbnQtcXVv dGVkCisgICAgICAgIChjb25jYXQgIlxcIiAoY2hhci10by1zdHJpbmcgKGNoYXItYmVmb3Jl KSkpKQorICAgICAgICh0CisgICAgICAgIChjaGFyLXRvLXN0cmluZyAoY2hhci1iZWZvcmUp KSkpKSkpCiAKIChkZWZ1biBlc2hlbGwtcGFyc2UtbGl0ZXJhbC1xdW90ZSAoKQogICAiUGFy c2UgYSBsaXRlcmFsbHkgcXVvdGVkIHN0cmluZy4gIE5vdGhpbmcgaGFzIHNwZWNpYWwgbWVh bmluZyEiCmRpZmYgLS1naXQgYS90ZXN0L2xpc3AvZXNoZWxsL2VzaC1hcmctdGVzdHMuZWwg Yi90ZXN0L2xpc3AvZXNoZWxsL2VzaC1hcmctdGVzdHMuZWwKbmV3IGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggMDAwMDAwMDAwMC4uNzdmOTQwNGQ0YwotLS0gL2Rldi9udWxsCisrKyBiL3Rl c3QvbGlzcC9lc2hlbGwvZXNoLWFyZy10ZXN0cy5lbApAQCAtMCwwICsxLDEwNSBAQAorOzs7 IGVzaC1hcmctdGVzdHMuZWwgLS0tIGVzaC1hcmcgdGVzdCBzdWl0ZSAgLSotIGxleGljYWwt YmluZGluZzp0IC0qLQorCis7OyBDb3B5cmlnaHQgKEMpIDIwMjIgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBJbmMuCisKKzs7IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4K KworOzsgR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRl IGl0IGFuZC9vciBtb2RpZnkKKzs7IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdl bmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Cis7OyB0aGUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgor OzsgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKworOzsgR05VIEVtYWNz IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCis7 OyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3 YXJyYW50eSBvZgorOzsgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElD VUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorOzsgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug Zm9yIG1vcmUgZGV0YWlscy4KKworOzsgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29w eSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKzs7IGFsb25nIHdpdGggR05V IEVtYWNzLiAgSWYgbm90LCBzZWUgPGh0dHBzOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4K KworOzs7IENvbW1lbnRhcnk6CisKKzs7IFRlc3RzIGZvciBFc2hlbGwncyBhcmd1bWVudCBo YW5kbGluZy4KKworOzs7IENvZGU6CisKKyhyZXF1aXJlICdlcnQpCisocmVxdWlyZSAnZXNo LW1vZGUpCisocmVxdWlyZSAnZXNoZWxsKQorCisocmVxdWlyZSAnZXNoZWxsLXRlc3RzLWhl bHBlcnMKKyAgICAgICAgIChleHBhbmQtZmlsZS1uYW1lICJlc2hlbGwtdGVzdHMtaGVscGVy cyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIChmaWxlLW5hbWUtZGlyZWN0b3J5IChv ciBsb2FkLWZpbGUtbmFtZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGRlZmF1bHQtZGlyZWN0b3J5KSkpKQorCisoZGVmdmFyIGVzaGVs bC10ZXN0LXZhbHVlIG5pbCkKKworOzs7IFRlc3RzOgorCisoZXJ0LWRlZnRlc3QgZXNoLWFy Zy10ZXN0L2VzY2FwZS9ub25zcGVjaWFsICgpCisgICJUZXN0IHRoYXQgXCJcXGNcIiBhbmQg XCJjXCIgYXJlIGVxdWl2YWxlbnQgd2hlbiBcImNcIiBpcyBub3QgYQorc3BlY2lhbCBjaGFy YWN0ZXIuIgorICAod2l0aC10ZW1wLWVzaGVsbAorICAgKGVzaGVsbC1tYXRjaC1jb21tYW5k LW91dHB1dCAiZWNobyBoZVxcbGxvIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAiaGVsbG9cbiIpKSkKKworKGVydC1kZWZ0ZXN0IGVzaC1hcmctdGVzdC9lc2NhcGUvbm9u c3BlY2lhbC11bmljb2RlICgpCisgICJUZXN0IHRoYXQgXCJcXGNcIiBhbmQgXCJjXCIgYXJl IGVxdWl2YWxlbnQgd2hlbiBcImNcIiBpcyBhCit1bmljb2RlIGNoYXJhY3RlciAodW5pY29k ZSBjaGFyYWN0ZXJzIGFyZSBub25zcGVjaWFsIGJ5CitkZWZpbml0aW9uKS4iCisgICh3aXRo LXRlbXAtZXNoZWxsCisgICAoZXNoZWxsLW1hdGNoLWNvbW1hbmQtb3V0cHV0ICJlY2hvIFZp ZFxcw6lvcyIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlZpZMOpb3NcbiIp KSkKKworKGVydC1kZWZ0ZXN0IGVzaC1hcmctdGVzdC9lc2NhcGUvc3BlY2lhbCAoKQorICAi VGVzdCB0aGF0IHRoZSBiYWNrc2xhc2ggaXMgbm90IHByZXNlcnZlZCBmb3IgZXNjYXBlZCBz cGVjaWFsCitjaGFycy4iCisgICh3aXRoLXRlbXAtZXNoZWxsCisgICAoZXNoZWxsLW1hdGNo LWNvbW1hbmQtb3V0cHV0ICJlY2hvIGhlXFxcXGxsbyIKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgOzsgQmFja3NsYXNoZXMgYXJlIGRvdWJsZWQgZm9yIHJlZ2V4cC4KKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImhlXFxcXGxsb1xuIikpKQorCisoZXJ0 LWRlZnRlc3QgZXNoLWFyZy10ZXN0L2VzY2FwZS9uZXdsaW5lICgpCisgICJUZXN0IHRoYXQg YW4gZXNjYXBlZCBuZXdsaW5lIGlzIGVxdWl2YWxlbnQgdG8gdGhlIGVtcHR5IHN0cmluZy4K K1doZW4gbmV3bGluZXMgYXJlICpub25zcGVjaWFsKiwgYW4gZXNjYXBlZCBuZXdsaW5lIHNo b3VsZCBiZQordHJlYXRlZCBhcyBqdXN0IGEgbmV3bGluZS4iCisgICh3aXRoLXRlbXAtZXNo ZWxsCisgICAoZXNoZWxsLW1hdGNoLWNvbW1hbmQtb3V0cHV0ICJlY2hvIGhpXFxcbnRoZXJl IgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaGl0aGVyZVxuIikpKQorCiso ZXJ0LWRlZnRlc3QgZXNoLWFyZy10ZXN0L2VzY2FwZS9uZXdsaW5lLWNvbmRpdGlvbmFsICgp CisgICJUZXN0IGludm9jYXRpb24gb2YgYW4gaWYvZWxzZSBzdGF0ZW1lbnQgdXNpbmcgbGlu ZSBjb250aW51YXRpb25zLiIKKyAgKGxldCAoKGVzaGVsbC10ZXN0LXZhbHVlIHQpKQorICAg IChlc2hlbGwtY29tbWFuZC1yZXN1bHQtZXF1YWwKKyAgICAgImlmICRlc2hlbGwtdGVzdC12 YWx1ZSBcXFxue2VjaG8geWVzfSBcXFxue2VjaG8gbm99IgorICAgICAieWVzIikpCisgIChs ZXQgKChlc2hlbGwtdGVzdC12YWx1ZSBuaWwpKQorICAgIChlc2hlbGwtY29tbWFuZC1yZXN1 bHQtZXF1YWwKKyAgICAgImlmICRlc2hlbGwtdGVzdC12YWx1ZSBcXFxue2VjaG8geWVzfSBc XFxue2VjaG8gbm99IgorICAgICAibm8iKSkpCisKKyhlcnQtZGVmdGVzdCBlc2gtYXJnLXRl c3QvZXNjYXBlLXF1b3RlZC9ub25zcGVjaWFsICgpCisgICJUZXN0IHRoYXQgdGhlIGJhY2tz bGFzaCBpcyBwcmVzZXJ2ZWQgZm9yIGVzY2FwZWQgbm9uc3BlY2lhbAorY2hhcnMuIgorICAo d2l0aC10ZW1wLWVzaGVsbAorICAgKGVzaGVsbC1tYXRjaC1jb21tYW5kLW91dHB1dCAiZWNo byBcImhcXGlcIiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOzsgQmFja3Ns YXNoZXMgYXJlIGRvdWJsZWQgZm9yIHJlZ2V4cC4KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgImhcXFxcaVxuIikpKQorCisoZXJ0LWRlZnRlc3QgZXNoLWFyZy10ZXN0L2Vz Y2FwZS1xdW90ZWQvc3BlY2lhbCAoKQorICAiVGVzdCB0aGF0IHRoZSBiYWNrc2xhc2ggaXMg bm90IHByZXNlcnZlZCBmb3IgZXNjYXBlZCBzcGVjaWFsCitjaGFycy4iCisgICh3aXRoLXRl bXAtZXNoZWxsCisgICAoZXNoZWxsLW1hdGNoLWNvbW1hbmQtb3V0cHV0ICJlY2hvIFwiXFxc ImhpXFxcXFwiIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA7OyBCYWNrc2xh c2hlcyBhcmUgZG91YmxlZCBmb3IgcmVnZXhwLgorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAiXFxcImhpXFxcXFxuIikpKQorCisoZXJ0LWRlZnRlc3QgZXNoLWFyZy10ZXN0 L2VzY2FwZS1xdW90ZWQvbmV3bGluZSAoKQorICAiVGVzdCB0aGF0IGFuIGVzY2FwZWQgbmV3 bGluZSBpcyBlcXVpdmFsZW50IHRvIHRoZSBlbXB0eSBzdHJpbmcuCitXaGVuIG5ld2xpbmVz IGFyZSAqbm9uc3BlY2lhbCosIGFuIGVzY2FwZWQgbmV3bGluZSBzaG91bGQgYmUKK3RyZWF0 ZWQgbGl0ZXJhbGx5LCBhcyBhIGJhY2tzbGFzaCBhbmQgYSBuZXdsaW5lLiIKKyAgKHdpdGgt dGVtcC1lc2hlbGwKKyAgIChlc2hlbGwtbWF0Y2gtY29tbWFuZC1vdXRwdXQgImVjaG8gXCJo aVxcXG50aGVyZVwiIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaGl0aGVy ZVxuIikpKQorCis7OyBlc2gtYXJnLXRlc3RzLmVsIGVuZHMgaGVyZQpkaWZmIC0tZ2l0IGEv dGVzdC9saXNwL2VzaGVsbC9lc2hlbGwtdGVzdHMuZWwgYi90ZXN0L2xpc3AvZXNoZWxsL2Vz aGVsbC10ZXN0cy5lbAppbmRleCBkNTExMjE0NmMyLi5jNjdhYzY3ZmQzIDEwMDY0NAotLS0g YS90ZXN0L2xpc3AvZXNoZWxsL2VzaGVsbC10ZXN0cy5lbAorKysgYi90ZXN0L2xpc3AvZXNo ZWxsL2VzaGVsbC10ZXN0cy5lbApAQCAtMTA1LDM3ICsxMDUsNiBAQCBlc2hlbGwtdGVzdC9s aXNwLXJlc2V0LWluLXBpcGVsaW5lCiAgICAgIChmb3JtYXQgdGVtcGxhdGUgImZvcm1hdCBc IiVzXCIgZXNoZWxsLWluLXBpcGVsaW5lLXAiKQogICAgICAibmlsIikpKQogCi0oZXJ0LWRl ZnRlc3QgZXNoZWxsLXRlc3QvZXNjYXBlLW5vbnNwZWNpYWwgKCkKLSAgIlRlc3QgdGhhdCBc IlxcY1wiIGFuZCBcImNcIiBhcmUgZXF1aXZhbGVudCB3aGVuIFwiY1wiIGlzIG5vdCBhCi1z cGVjaWFsIGNoYXJhY3Rlci4iCi0gICh3aXRoLXRlbXAtZXNoZWxsCi0gICAoZXNoZWxsLW1h dGNoLWNvbW1hbmQtb3V0cHV0ICJlY2hvIGhlXFxsbG8iCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICJoZWxsb1xuIikpKQotCi0oZXJ0LWRlZnRlc3QgZXNoZWxsLXRlc3Qv ZXNjYXBlLW5vbnNwZWNpYWwtdW5pY29kZSAoKQotICAiVGVzdCB0aGF0IFwiXFxjXCIgYW5k IFwiY1wiIGFyZSBlcXVpdmFsZW50IHdoZW4gXCJjXCIgaXMgYQotdW5pY29kZSBjaGFyYWN0 ZXIgKHVuaWNvZGUgY2hhcmFjdGVycyBhcmUgbm9uc3BlY2lhbCBieQotZGVmaW5pdGlvbiku IgotICAod2l0aC10ZW1wLWVzaGVsbAotICAgKGVzaGVsbC1tYXRjaC1jb21tYW5kLW91dHB1 dCAiZWNobyBWaWRcXMOpb3MiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJW aWTDqW9zXG4iKSkpCi0KLShlcnQtZGVmdGVzdCBlc2hlbGwtdGVzdC9lc2NhcGUtbm9uc3Bl Y2lhbC1xdW90ZWQgKCkKLSAgIlRlc3QgdGhhdCB0aGUgYmFja3NsYXNoIGlzIHByZXNlcnZl ZCBmb3IgZXNjYXBlZCBub25zcGVjaWFsCi1jaGFycyIKLSAgKHdpdGgtdGVtcC1lc2hlbGwK LSAgIChlc2hlbGwtbWF0Y2gtY29tbWFuZC1vdXRwdXQgImVjaG8gXCJoXFxpXCIiCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDs7IEJhY2tzbGFzaGVzIGFyZSBkb3VibGVk IGZvciByZWdleHAuCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJoXFxcXGlc biIpKSkKLQotKGVydC1kZWZ0ZXN0IGVzaGVsbC10ZXN0L2VzY2FwZS1zcGVjaWFsLXF1b3Rl ZCAoKQotICAiVGVzdCB0aGF0IHRoZSBiYWNrc2xhc2ggaXMgbm90IHByZXNlcnZlZCBmb3Ig ZXNjYXBlZCBzcGVjaWFsCi1jaGFycyIKLSAgKHdpdGgtdGVtcC1lc2hlbGwKLSAgIChlc2hl bGwtbWF0Y2gtY29tbWFuZC1vdXRwdXQgImVjaG8gXCJcXFwiaGlcXFxcXCIiCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIDs7IEJhY2tzbGFzaGVzIGFyZSBkb3VibGVkIGZv ciByZWdleHAuCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJcXFwiaGlcXFxc XG4iKSkpCi0KIChlcnQtZGVmdGVzdCBlc2hlbGwtdGVzdC9jb21tYW5kLXJ1bm5pbmctcCAo KQogICAiTW9kZWxpbmUgc2hvdWxkIHNob3cgbm8gY29tbWFuZCBydW5uaW5nIgogICAod2l0 aC10ZW1wLWVzaGVsbAotLSAKMi4yNS4xCgo= --------------k14fyLamPluour2GQkGtrBE6--