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#52293: 29.0.50; [PATCH v2] Prevent further cases of duplicated separators in context menus Date: Mon, 6 Dec 2021 19:54:11 -0800 Message-ID: <15eebcb1-b67a-8363-bc23-cf113913856f@gmail.com> References: <86tufn5jn9.fsf@mail.linkov.net> <86pmqa14fc.fsf@mail.linkov.net> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------3BFF642EC8504B50DEC78DF1" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="39492"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 52293@debbugs.gnu.org To: Juri Linkov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Dec 07 04:55:17 2021 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 1muRZV-000A4q-BT for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 07 Dec 2021 04:55:17 +0100 Original-Received: from localhost ([::1]:43754 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1muRZU-0006Jz-0f for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 06 Dec 2021 22:55:16 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:34128) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1muRZG-0006JZ-3h for bug-gnu-emacs@gnu.org; Mon, 06 Dec 2021 22:55:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:52540) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1muRZF-00013W-S8 for bug-gnu-emacs@gnu.org; Mon, 06 Dec 2021 22:55:01 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1muRZF-0002nh-Oq for bug-gnu-emacs@gnu.org; Mon, 06 Dec 2021 22:55:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Jim Porter Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 07 Dec 2021 03:55:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 52293 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 52293-submit@debbugs.gnu.org id=B52293.163884926110694 (code B ref 52293); Tue, 07 Dec 2021 03:55:01 +0000 Original-Received: (at 52293) by debbugs.gnu.org; 7 Dec 2021 03:54:21 +0000 Original-Received: from localhost ([127.0.0.1]:35853 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1muRYa-0002mP-LU for submit@debbugs.gnu.org; Mon, 06 Dec 2021 22:54:21 -0500 Original-Received: from mail-pj1-f49.google.com ([209.85.216.49]:42658) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1muRYY-0002m3-Hs for 52293@debbugs.gnu.org; Mon, 06 Dec 2021 22:54:19 -0500 Original-Received: by mail-pj1-f49.google.com with SMTP id fv9-20020a17090b0e8900b001a6a5ab1392so1546886pjb.1 for <52293@debbugs.gnu.org>; Mon, 06 Dec 2021 19:54:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=subject:to:cc:references:from:message-id:date:mime-version :in-reply-to:content-language; bh=PM1uNnx70ODE8oJf/HihweN4oX2i33o4GQgCNo2DFFY=; b=UCWh9Pw/Qg41bDfeF1lV31AlzV0R/M2crL7sxFTKvh8weZkOcUd9wV1Nl/qP3AFPUq /xRSa+v06Psdgxv5p91aDek7A2vHT1u26eY51jh0jd1oWpiPCoGHExjvH4e9ZDlmfjSm qd4fXatWrCYhiMMQ1Vemv8yW6a/2OKAvAcVSBslgaCEjTkxs7JepJIYp+cMEW3G9AM3h 3vs9uvDbpcFrIa8Ug1WClgT4ommYI1VfNh16f7g0cfLgy+DZwZOA7cnhRD18vIMEN8ZW RYJC76mi9+7WzaCdhyBnmGzwuaHFPelgIEpP7o8rIdTCyxALKcH5ivk4mnJOZJeszRAK cj0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :mime-version:in-reply-to:content-language; bh=PM1uNnx70ODE8oJf/HihweN4oX2i33o4GQgCNo2DFFY=; b=a4NjySPjJSXwTA8SOdmgsKqcNSrHUHmjIaiF5WpCZhIYTjDKQKbFfBBTDd1HbzfFUt P7rrlqQittIbXc91JPf2uhrB1DQ5f3NIJzIfWd+uUeArtfdlpSEoAXyXtQk5ysUWE983 UW4I+U/qxNWZ8pQsv6p7ETkUHDyHxfgbAs8wGJdjyrjRMYpToHDxR9cjoPOdm9Qh4/Q5 mLpFdr8aydfm5eph/qLev4TcoUcMbzzwb1Smw/WmXZ1rH/3/Bpk30qSCxI0j0mHx5m7P hj1+3zLGEi8Qs6s8gnpEV/1UfhmRC3q/0xWkYEBh8CiYYp6tXzgYWyFn/4m7Aq/1E/U0 f9bw== X-Gm-Message-State: AOAM530y9rWAlCO0F7Vkxj98GzQhe4dYmyqfCdjD2yx/JFKutQzGIg3S gFRqYfx57J1X13qjZ9ldEhtL9SVF4Ko= X-Google-Smtp-Source: ABdhPJzGv5QgLzYuJv36zDYzMsso4hkAT4R24GZ1tbkxA9+YXDsnDwRb3i/sahQkL1xzyMlfVn+QHQ== X-Received: by 2002:a17:902:dacc:b0:142:12bd:c5b9 with SMTP id q12-20020a170902dacc00b0014212bdc5b9mr49073750plx.74.1638849252528; Mon, 06 Dec 2021 19:54:12 -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 g20sm15745033pfj.12.2021.12.06.19.54.11 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 06 Dec 2021 19:54:11 -0800 (PST) In-Reply-To: <86pmqa14fc.fsf@mail.linkov.net> Content-Language: en-US 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" Xref: news.gmane.io gmane.emacs.bugs:221805 Archived-At: This is a multi-part message in MIME format. --------------3BFF642EC8504B50DEC78DF1 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 12/6/2021 1:23 AM, Juri Linkov wrote: >> Updating this part of my config for Emacs 28 was actually what prompted me >> to start looking into `context-menu-mode' in more detail. It would be >> easier to implement this if context menu functions didn't rely on the >> context menu title having a particular value. > > I think the remaining problem we have to solve is to try to > prevent such a situation when the user accidentally removes > `context-menu-top-separator' from `context-menu-functions'. > To not break the menu in this case, maybe we need to ensure > that the menu always contains `top-separator' as well as > `middle-separator' even when `context-menu-functions' > doesn't contain a function that adds them? I.e. just to check > if these separators are missing, and add them at the top. For the top separator, maybe instead of providing a function for users to put wherever they like in `context-menu-functions', we could just add it directly in `context-menu-map' immediately before calling the functions in `context-menu-functions'? Since it's supposed to be at the top, it doesn't make a lot of sense to be able to customize where it goes. It does makes sense to customize where `middle-separator' goes though; what the user considers the "middle" depends on what other menu items are normally present. However, if the user didn't include `context-menu-middle-separator', then (define-key-after menu [foo] '(menu-item ...) 'middle-separator) just adds `foo' to the end of the menu. That seems ok to me. Then, adding after `top-separator' puts your item at the beginning of the menu, and adding after `middle-separator' puts your item at the middle or the end, depending on the user's configuration. How does that sound to you? --------------3BFF642EC8504B50DEC78DF1 Content-Type: text/plain; charset=UTF-8; name="0001-Add-a-top-separator-to-the-context-menu.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0001-Add-a-top-separator-to-the-context-menu.patch" RnJvbSA4MzFiYTU1ZGQyMDlmZTU1NTE3MzNiYmVhMWQzM2ZjMGU3MjAyMjdlIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IE1vbiwgNiBEZWMgMjAyMSAxOTo0MDo0MCAtMDgwMApTdWJqZWN0OiBbUEFU Q0hdIEFkZCBhICd0b3Atc2VwYXJhdG9yJyB0byB0aGUgY29udGV4dCBtZW51CgpUaGlzIHBy b3ZpZGVzIGFuIGFuY2hvciBmb3IgY29udGV4dCBtZW51IGZ1bmN0aW9ucyB0byB1c2UgdG8g aW5zZXJ0CnRoZWlyIG1lbnUgaXRlbXMgYWZ0ZXIgaXQuIFVzaW5nICdkZWZpbmUta2V5JyBk b2Vzbid0IHdvcmsgcHJvcGVybHkgaW4KdGhpcyBjYXNlLCBzaW5jZSBpdCBpbnNlcnRzIHRo ZSBpdGVtcyBiZWZvcmUgdGhlIG1lbnUgdGl0bGUsIGNvbmZ1c2luZwp0aGUgc2VwYXJhdG9y IGRlLWR1cGxpY2F0aW9uIGluICdjb250ZXh0LW1lbnUtbWFwJy4KCiogbGlzcC9tb3VzZS5l bCAoY29udGV4dC1tZW51LW1hcCk6IEFkZCAndG9wLXNlcGFyYXRvcicgdG8gdGhlIG1lbnUu CiogbGlzcC9kaXJlZC5lbCAoZGlyZWQtY29udGV4dC1tZW51KToKKiBsaXNwL2hlbHAtbW9k ZS5lbCAoaGVscC1tb2RlLWNvbnRleHQtbWVudSk6CiogbGlzcC9pbmZvLmVsIChJbmZvLWNv bnRleHQtbWVudSk6CiogbGlzcC9uZXQvZXd3LmVsIChld3ctY29udGV4dC1tZW51KToKKiBs aXNwL25ldC9nb3RvLWFkZHIuZWwgKGdvdG8tYWRkcmVzcy1jb250ZXh0LW1lbnUpOgpVc2Ug J3RvcC1zZXBhcmF0b3InLgotLS0KIGxpc3AvZGlyZWQuZWwgICAgICAgICB8ICA1ICsrKy0t CiBsaXNwL2hlbHAtbW9kZS5lbCAgICAgfCAxMCArKysrKystLS0tCiBsaXNwL2luZm8uZWwg ICAgICAgICAgfCAgOSArKysrKy0tLS0KIGxpc3AvbW91c2UuZWwgICAgICAgICB8ICAzICsr KwogbGlzcC9uZXQvZXd3LmVsICAgICAgIHwgMTQgKysrKysrKystLS0tLS0KIGxpc3AvbmV0 L2dvdG8tYWRkci5lbCB8ICA4ICsrKysrLS0tCiA2IGZpbGVzIGNoYW5nZWQsIDMwIGluc2Vy dGlvbnMoKyksIDE5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpc3AvZGlyZWQuZWwg Yi9saXNwL2RpcmVkLmVsCmluZGV4IGQwZTU0N2JhMGIuLmIwMDRkODE0OTUgMTAwNjQ0Ci0t LSBhL2xpc3AvZGlyZWQuZWwKKysrIGIvbGlzcC9kaXJlZC5lbApAQCAtMjI4Miw3ICsyMjgy LDcgQEAgZGlyZWQtbW9kZS1vcGVyYXRlLW1lbnUKIChkZWZ1biBkaXJlZC1jb250ZXh0LW1l bnUgKG1lbnUgY2xpY2spCiAgICJQb3B1bGF0ZSBNRU5VIHdpdGggRGlyZWQgbW9kZSBjb21t YW5kcyBhdCBDTElDSy4iCiAgICh3aGVuIChtb3VzZS1wb3NuLXByb3BlcnR5IChldmVudC1z dGFydCBjbGljaykgJ2RpcmVkLWZpbGVuYW1lKQotICAgIChkZWZpbmUta2V5IG1lbnUgW2Rp cmVkLXNlcGFyYXRvcl0gbWVudS1iYXItc2VwYXJhdG9yKQorICAgIChkZWZpbmUta2V5LWFm dGVyIG1lbnUgW2RpcmVkLXNlcGFyYXRvcl0gbWVudS1iYXItc2VwYXJhdG9yICd0b3Atc2Vw YXJhdG9yKQogICAgIChsZXQgKChlYXN5LW1lbnUgKG1ha2Utc3BhcnNlLWtleW1hcCAiSW1t ZWRpYXRlIikpKQogICAgICAgKGVhc3ktbWVudS1kZWZpbmUgbmlsIGVhc3ktbWVudSBuaWwK ICAgICAgICAgJygiSW1tZWRpYXRlIgpAQCAtMjI5Miw3ICsyMjkyLDggQEAgZGlyZWQtY29u dGV4dC1tZW51CiAgICAgICAgICAgIDpoZWxwICJFZGl0IGZpbGUgYXQgbW91c2UgY2xpY2sg aW4gb3RoZXIgd2luZG93Il0pKQogICAgICAgKGRvbGlzdCAoaXRlbSAocmV2ZXJzZSAobG9v a3VwLWtleSBlYXN5LW1lbnUgW21lbnUtYmFyIGltbWVkaWF0ZV0pKSkKICAgICAgICAgKHdo ZW4gKGNvbnNwIGl0ZW0pCi0gICAgICAgICAgKGRlZmluZS1rZXkgbWVudSAodmVjdG9yIChj YXIgaXRlbSkpIChjZHIgaXRlbSkpKSkpKQorICAgICAgICAgIChkZWZpbmUta2V5LWFmdGVy IG1lbnUgKHZlY3RvciAoY2FyIGl0ZW0pKSAoY2RyIGl0ZW0pCisgICAgICAgICAgICAndG9w LXNlcGFyYXRvcikpKSkpCiAgIG1lbnUpCiAKIAwKZGlmZiAtLWdpdCBhL2xpc3AvaGVscC1t b2RlLmVsIGIvbGlzcC9oZWxwLW1vZGUuZWwKaW5kZXggNzkyZjJlNWFmMy4uMmVkMjA1Nzdm NSAxMDA2NDQKLS0tIGEvbGlzcC9oZWxwLW1vZGUuZWwKKysrIGIvbGlzcC9oZWxwLW1vZGUu ZWwKQEAgLTc0LDcgKzc0LDggQEAgaGVscC1tb2RlLW1lbnUKIAogKGRlZnVuIGhlbHAtbW9k ZS1jb250ZXh0LW1lbnUgKG1lbnUgY2xpY2spCiAgICJQb3B1bGF0ZSBNRU5VIHdpdGggSGVs cCBtb2RlIGNvbW1hbmRzIGF0IENMSUNLLiIKLSAgKGRlZmluZS1rZXkgbWVudSBbaGVscC1t b2RlLXNlcGFyYXRvcl0gbWVudS1iYXItc2VwYXJhdG9yKQorICAoZGVmaW5lLWtleS1hZnRl ciBtZW51IFtoZWxwLW1vZGUtc2VwYXJhdG9yXSBtZW51LWJhci1zZXBhcmF0b3IKKyAgICAn dG9wLXNlcGFyYXRvcikKICAgKGxldCAoKGVhc3ktbWVudSAobWFrZS1zcGFyc2Uta2V5bWFw ICJIZWxwLU1vZGUiKSkpCiAgICAgKGVhc3ktbWVudS1kZWZpbmUgbmlsIGVhc3ktbWVudSBu aWwKICAgICAgICcoIkhlbHAtTW9kZSIKQEAgLTg2LDE0ICs4NywxNSBAQCBoZWxwLW1vZGUt Y29udGV4dC1tZW51CiAgICAgICAgICA6YWN0aXZlIGhlbHAteHJlZi1mb3J3YXJkLXN0YWNr XSkpCiAgICAgKGRvbGlzdCAoaXRlbSAocmV2ZXJzZSAobG9va3VwLWtleSBlYXN5LW1lbnUg W21lbnUtYmFyIGhlbHAtbW9kZV0pKSkKICAgICAgICh3aGVuIChjb25zcCBpdGVtKQotICAg ICAgICAoZGVmaW5lLWtleSBtZW51ICh2ZWN0b3IgKGNhciBpdGVtKSkgKGNkciBpdGVtKSkp KSkKKyAgICAgICAgKGRlZmluZS1rZXktYWZ0ZXIgbWVudSAodmVjdG9yIChjYXIgaXRlbSkp IChjZHIgaXRlbSkgJ3RvcC1zZXBhcmF0b3IpKSkpCiAKICAgKHdoZW4gKG1vdXNlLXBvc24t cHJvcGVydHkgKGV2ZW50LXN0YXJ0IGNsaWNrKSAnbW91c2UtZmFjZSkKLSAgICAoZGVmaW5l LWtleSBtZW51IFtoZWxwLW1vZGUtcHVzaC1idXR0b25dCisgICAgKGRlZmluZS1rZXktYWZ0 ZXIgbWVudSBbaGVscC1tb2RlLXB1c2gtYnV0dG9uXQogICAgICAgJyhtZW51LWl0ZW0gIkZv bGxvdyBMaW5rIiAobGFtYmRhIChldmVudCkKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAoaW50ZXJhY3RpdmUgImUiKQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIChwdXNoLWJ1dHRvbiBldmVudCkpCi0gICAgICAgICAgICAgICAgICA6aGVscCAi Rm9sbG93IHRoZSBsaW5rIGF0IGNsaWNrIikpKQorICAgICAgICAgICAgICAgICAgOmhlbHAg IkZvbGxvdyB0aGUgbGluayBhdCBjbGljayIpCisgICAgICAndG9wLXNlcGFyYXRvcikpCiAK ICAgbWVudSkKIApkaWZmIC0tZ2l0IGEvbGlzcC9pbmZvLmVsIGIvbGlzcC9pbmZvLmVsCmlu ZGV4IDU1OTQ2MGU4ZDIuLjA1ZTkyNzc2OTggMTAwNjQ0Ci0tLSBhL2xpc3AvaW5mby5lbAor KysgYi9saXNwL2luZm8uZWwKQEAgLTQxOTMsNyArNDE5Myw3IEBAIEluZm8tY2hlY2stcG9p bnRlcgogCiAoZGVmdW4gSW5mby1jb250ZXh0LW1lbnUgKG1lbnUgY2xpY2spCiAgICJQb3B1 bGF0ZSBNRU5VIHdpdGggSW5mbyBjb21tYW5kcyBhdCBDTElDSy4iCi0gIChkZWZpbmUta2V5 IG1lbnUgW0luZm8tc2VwYXJhdG9yXSBtZW51LWJhci1zZXBhcmF0b3IpCisgIChkZWZpbmUt a2V5LWFmdGVyIG1lbnUgW0luZm8tc2VwYXJhdG9yXSBtZW51LWJhci1zZXBhcmF0b3IgJ3Rv cC1zZXBhcmF0b3IpCiAgIChsZXQgKChlYXN5LW1lbnUgKG1ha2Utc3BhcnNlLWtleW1hcCAi SW5mbyIpKSkKICAgICAoZWFzeS1tZW51LWRlZmluZSBuaWwgZWFzeS1tZW51IG5pbAogICAg ICAgJygiSW5mbyIKQEAgLTQyMDMsMTIgKzQyMDMsMTMgQEAgSW5mby1jb250ZXh0LW1lbnUK ICAgICAgICAgIDpoZWxwICJHbyBmb3J3YXJkIGluIGhpc3RvcnkiXSkpCiAgICAgKGRvbGlz dCAoaXRlbSAocmV2ZXJzZSAobG9va3VwLWtleSBlYXN5LW1lbnUgW21lbnUtYmFyIGluZm9d KSkpCiAgICAgICAod2hlbiAoY29uc3AgaXRlbSkKLSAgICAgICAgKGRlZmluZS1rZXkgbWVu dSAodmVjdG9yIChjYXIgaXRlbSkpIChjZHIgaXRlbSkpKSkpCisgICAgICAgIChkZWZpbmUt a2V5LWFmdGVyIG1lbnUgKHZlY3RvciAoY2FyIGl0ZW0pKSAoY2RyIGl0ZW0pICd0b3Atc2Vw YXJhdG9yKSkpKQogCiAgICh3aGVuIChtb3VzZS1wb3NuLXByb3BlcnR5IChldmVudC1zdGFy dCBjbGljaykgJ21vdXNlLWZhY2UpCi0gICAgKGRlZmluZS1rZXkgbWVudSBbSW5mby1tb3Vz ZS1mb2xsb3ctbmVhcmVzdC1ub2RlXQorICAgIChkZWZpbmUta2V5LWFmdGVyIG1lbnUgW0lu Zm8tbW91c2UtZm9sbG93LW5lYXJlc3Qtbm9kZV0KICAgICAgICcobWVudS1pdGVtICJGb2xs b3cgTGluayIgSW5mby1tb3VzZS1mb2xsb3ctbmVhcmVzdC1ub2RlCi0gICAgICAgICAgICAg ICAgICA6aGVscCAiRm9sbG93IGEgbGluayB3aGVyZSB5b3UgY2xpY2siKSkpCisgICAgICAg ICAgICAgICAgICA6aGVscCAiRm9sbG93IGEgbGluayB3aGVyZSB5b3UgY2xpY2siKQorICAg ICAgJ3RvcC1zZXBhcmF0b3IpKQogCiAgIG1lbnUpCiAKZGlmZiAtLWdpdCBhL2xpc3AvbW91 c2UuZWwgYi9saXNwL21vdXNlLmVsCmluZGV4IGFmMWVjYTEyZjQuLjM2MDAzYTFkYjggMTAw NjQ0Ci0tLSBhL2xpc3AvbW91c2UuZWwKKysrIGIvbGlzcC9tb3VzZS5lbApAQCAtMzE5LDYg KzMxOSw5IEBAIGNvbnRleHQtbWVudS1tYXAKICAgICAgICAgIChjbGljayAob3IgY2xpY2sg bGFzdC1pbnB1dC1ldmVudCkpCiAgICAgICAgICAoZnVuIChtb3VzZS1wb3NuLXByb3BlcnR5 IChldmVudC1zdGFydCBjbGljaykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgJ2NvbnRleHQtbWVudS1mdW5jdGlvbikpKQorICAgIDs7IEFkZCBhIHNlcGFyYXRvciB0 byB0aGUgdG9wIG9mIHRoZSBtZW51IHRvIHByb3ZpZGUgYW4gYW5jaG9yIGZvcgorICAgIDs7 IGNvbnRleHQgbWVudSBmdW5jdGlvbnMgdG8gdXNlLgorICAgIChkZWZpbmUta2V5LWFmdGVy IG1lbnUgW3RvcC1zZXBhcmF0b3JdIG1lbnUtYmFyLXNlcGFyYXRvcikKIAogICAgIChpZiAo ZnVuY3Rpb25wIGZ1bikKICAgICAgICAgKHNldHEgbWVudSAoZnVuY2FsbCBmdW4gbWVudSBj bGljaykpCmRpZmYgLS1naXQgYS9saXNwL25ldC9ld3cuZWwgYi9saXNwL25ldC9ld3cuZWwK aW5kZXggZTg2ZDIxZjg4OS4uNzMwM2UwMWEzNyAxMDA2NDQKLS0tIGEvbGlzcC9uZXQvZXd3 LmVsCisrKyBiL2xpc3AvbmV0L2V3dy5lbApAQCAtMTEwNiw3ICsxMTA2LDcgQEAgZXd3LW1v ZGUtbWFwCiAKIChkZWZ1biBld3ctY29udGV4dC1tZW51IChtZW51IGNsaWNrKQogICAiUG9w dWxhdGUgTUVOVSB3aXRoIGV3dyBjb21tYW5kcyBhdCBDTElDSy4iCi0gIChkZWZpbmUta2V5 IG1lbnUgW2V3dy1zZXBhcmF0b3JdIG1lbnUtYmFyLXNlcGFyYXRvcikKKyAgKGRlZmluZS1r ZXktYWZ0ZXIgbWVudSBbZXd3LXNlcGFyYXRvcl0gbWVudS1iYXItc2VwYXJhdG9yICd0b3At c2VwYXJhdG9yKQogICAobGV0ICgoZWFzeS1tZW51IChtYWtlLXNwYXJzZS1rZXltYXAgIkV3 dyIpKSkKICAgICAoZWFzeS1tZW51LWRlZmluZSBuaWwgZWFzeS1tZW51IG5pbAogICAgICAg JygiRXd3IgpAQCAtMTExNywyMCArMTExNywyMiBAQCBld3ctY29udGV4dC1tZW51CiAJWyJS ZWxvYWQiIGV3dy1yZWxvYWQgdF0pKQogICAgIChkb2xpc3QgKGl0ZW0gKHJldmVyc2UgKGxv b2t1cC1rZXkgZWFzeS1tZW51IFttZW51LWJhciBld3ddKSkpCiAgICAgICAod2hlbiAoY29u c3AgaXRlbSkKLSAgICAgICAgKGRlZmluZS1rZXkgbWVudSAodmVjdG9yIChjYXIgaXRlbSkp IChjZHIgaXRlbSkpKSkpCisgICAgICAgIChkZWZpbmUta2V5LWFmdGVyIG1lbnUgKHZlY3Rv ciAoY2FyIGl0ZW0pKSAoY2RyIGl0ZW0pICd0b3Atc2VwYXJhdG9yKSkpKQogCiAgICh3aGVu IChvciAobW91c2UtcG9zbi1wcm9wZXJ0eSAoZXZlbnQtc3RhcnQgY2xpY2spICdzaHItdXJs KQogICAgICAgICAgICAgKG1vdXNlLXBvc24tcHJvcGVydHkgKGV2ZW50LXN0YXJ0IGNsaWNr KSAnaW1hZ2UtdXJsKSkKLSAgICAoZGVmaW5lLWtleSBtZW51IFtzaHItbW91c2UtYnJvd3Nl LXVybC1uZXctd2luZG93XQorICAgIChkZWZpbmUta2V5LWFmdGVyIG1lbnUgW3Noci1tb3Vz ZS1icm93c2UtdXJsLW5ldy13aW5kb3ddCiAgICAgICBgKG1lbnUtaXRlbSAiRm9sbG93IFVS TCBpbiBuZXcgd2luZG93IiAsKGlmIGJyb3dzZS11cmwtbmV3LXdpbmRvdy1mbGFnCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzaHItbW91 c2UtYnJvd3NlLXVybAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJ3Noci1tb3VzZS1icm93c2UtdXJsLW5ldy13aW5kb3cpCi0gICAgICAgICAg ICAgICAgICA6aGVscCAiQnJvd3NlIHRoZSBVUkwgdW5kZXIgdGhlIG1vdXNlIGN1cnNvciBp biBhIG5ldyB3aW5kb3ciKSkKLSAgICAoZGVmaW5lLWtleSBtZW51IFtzaHItbW91c2UtYnJv d3NlLXVybF0KKyAgICAgICAgICAgICAgICAgIDpoZWxwICJCcm93c2UgdGhlIFVSTCB1bmRl ciB0aGUgbW91c2UgY3Vyc29yIGluIGEgbmV3IHdpbmRvdyIpCisgICAgICAndG9wLXNlcGFy YXRvcikKKyAgICAoZGVmaW5lLWtleS1hZnRlciBtZW51IFtzaHItbW91c2UtYnJvd3NlLXVy bF0KICAgICAgIGAobWVudS1pdGVtICJGb2xsb3cgVVJMIiAsKGlmIGJyb3dzZS11cmwtbmV3 LXdpbmRvdy1mbGFnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2hy LW1vdXNlLWJyb3dzZS11cmwtbmV3LXdpbmRvdwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICdzaHItbW91c2UtYnJvd3NlLXVybCkKLSAgICAgICAgICAgICAgICAgIDpo ZWxwICJCcm93c2UgdGhlIFVSTCB1bmRlciB0aGUgbW91c2UgY3Vyc29yIikpKQorICAgICAg ICAgICAgICAgICAgOmhlbHAgIkJyb3dzZSB0aGUgVVJMIHVuZGVyIHRoZSBtb3VzZSBjdXJz b3IiKQorICAgICAgJ3RvcC1zZXBhcmF0b3IpKQogCiAgIG1lbnUpCiAKZGlmZiAtLWdpdCBh L2xpc3AvbmV0L2dvdG8tYWRkci5lbCBiL2xpc3AvbmV0L2dvdG8tYWRkci5lbAppbmRleCA4 NDhiYWQzYjBkLi5iYjBmMGIwMGVlIDEwMDY0NAotLS0gYS9saXNwL25ldC9nb3RvLWFkZHIu ZWwKKysrIGIvbGlzcC9uZXQvZ290by1hZGRyLmVsCkBAIC0xMjcsMTAgKzEyNywxMiBAQCBn b3RvLWFkZHJlc3MtaGlnaGxpZ2h0LWtleW1hcAogKGRlZnVuIGdvdG8tYWRkcmVzcy1jb250 ZXh0LW1lbnUgKG1lbnUgY2xpY2spCiAgICJQb3B1bGF0ZSBNRU5VIHdpdGggYGdvdG8tYWRk cmVzcycgY29tbWFuZHMgYXQgQ0xJQ0suIgogICAod2hlbiAobW91c2UtcG9zbi1wcm9wZXJ0 eSAoZXZlbnQtc3RhcnQgY2xpY2spICdnb3RvLWFkZHJlc3MpCi0gICAgKGRlZmluZS1rZXkg bWVudSBbZ290by1hZGRyZXNzLXNlcGFyYXRvcl0gbWVudS1iYXItc2VwYXJhdG9yKQotICAg IChkZWZpbmUta2V5IG1lbnUgW2dvdG8tYWRkcmVzcy1hdC1tb3VzZV0KKyAgICAoZGVmaW5l LWtleS1hZnRlciBtZW51IFtnb3RvLWFkZHJlc3Mtc2VwYXJhdG9yXSBtZW51LWJhci1zZXBh cmF0b3IKKyAgICAgICd0b3Atc2VwYXJhdG9yKQorICAgIChkZWZpbmUta2V5LWFmdGVyIG1l bnUgW2dvdG8tYWRkcmVzcy1hdC1tb3VzZV0KICAgICAgICcobWVudS1pdGVtICJGb2xsb3cg TGluayIgZ290by1hZGRyZXNzLWF0LW1vdXNlCi0gICAgICAgICAgICAgICAgICA6aGVscCAi Rm9sbG93IGEgbGluayB3aGVyZSB5b3UgY2xpY2siKSkpCisgICAgICAgICAgICAgICAgICA6 aGVscCAiRm9sbG93IGEgbGluayB3aGVyZSB5b3UgY2xpY2siKQorICAgICAgJ3RvcC1zZXBh cmF0b3IpKQogICBtZW51KQogCiAoZGVmY3VzdG9tIGdvdG8tYWRkcmVzcy11cmwtZmFjZSAn bGluawotLSAKMi4yNS4xCgo= --------------3BFF642EC8504B50DEC78DF1--