From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Gregory Heytings Newsgroups: gmane.emacs.bugs Subject: bug#51883: 29.0.50; Command to get accidentally deleted frames back Date: Fri, 19 Nov 2021 09:00:39 +0000 Message-ID: <1adc044f473776dc3748@heytings.org> References: <87czn1gfb1.fsf@web.de> <838rxo0zk7.fsf@gnu.org> <83tugbyliv.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="kmTPLSwWAr" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="28595"; mail-complaints-to="usenet@ciao.gmane.io" Cc: michael_heerdegen@web.de, 51883@debbugs.gnu.org, juri@linkov.net To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Nov 19 10:01:14 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 1mnzli-0007Ce-43 for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 19 Nov 2021 10:01:14 +0100 Original-Received: from localhost ([::1]:39378 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mnzlh-0007Xt-4e for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 19 Nov 2021 04:01:13 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:58794) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mnzlW-0007Wj-6Z for bug-gnu-emacs@gnu.org; Fri, 19 Nov 2021 04:01:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:54646) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mnzlV-0002G0-PQ for bug-gnu-emacs@gnu.org; Fri, 19 Nov 2021 04:01:01 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mnzlV-0007bV-Kf for bug-gnu-emacs@gnu.org; Fri, 19 Nov 2021 04:01:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Gregory Heytings Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 19 Nov 2021 09:01:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 51883 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 51883-submit@debbugs.gnu.org id=B51883.163731244429193 (code B ref 51883); Fri, 19 Nov 2021 09:01:01 +0000 Original-Received: (at 51883) by debbugs.gnu.org; 19 Nov 2021 09:00:44 +0000 Original-Received: from localhost ([127.0.0.1]:37959 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mnzlD-0007am-Rc for submit@debbugs.gnu.org; Fri, 19 Nov 2021 04:00:44 -0500 Original-Received: from heytings.org ([95.142.160.155]:40964) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mnzlC-0007ae-1h for 51883@debbugs.gnu.org; Fri, 19 Nov 2021 04:00:42 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heytings.org; s=20210101; t=1637312440; bh=7ELMryTY4Ett+NQFaNfE9P42L4hYqBA+45lQsyKdriw=; h=Date:From:To:cc:Subject:In-Reply-To:Message-ID:References:From; b=Zgw5uCjux6nLC9pgHu1306iBciBa7/Tngala2zSkEDk942uBj4Afaj/WTkLLTtjLk U234sspm25ZUxgfzvDmx0fEu1uOufHGvA3zOmGB9PIPs/Hc5DtrBWdrb4n2p7XjBiE RxM2tunSpvJo5q4ur3N978AQIb1cUZwsyHQ5czJdWEChgS02zVubBZV65PAqIywPPo hDD0lvw8zYpTkM3eFyZ5lFS5Z3NwtmSz92K1YuH7ijzAEdDw7geFp/8/aA4mlZVGhB l1KqV1C43go9ehLvOLV5N1pBFCppCRFLq7iECqQJ8gUytdJgcgeY2hScsXd36mIQb3 ReBpqjx7PMsbQ== In-Reply-To: <83tugbyliv.fsf@gnu.org> 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:220395 Archived-At: --kmTPLSwWAr Content-Type: text/plain; format=flowed; charset=us-ascii Thanks again for your comments. I attach an updated and improved patch. >>> This is unusual meaning of prefix argument. Why not use zero for the >>> last, 1 for the one before that, etc.? > > Usually, commands that use both numeric and raw prefix arg do something > very different with the raw argument, which is not the case here. > The last version of the patch now does that, too: no argument and a raw argument means "most recent", a numeric argument means "Nth". >> A minor mode is another option, indeed. My feeling is that this >> feature is something about everyone would find useful, and that the >> cost you mention is not that high. And I solved the problem of the >> deletion of the terminal frame. So I made it an opt-out minor-mode. > > I'd prefer to make it opt-in. I see no reason to force on everyone a > new feature that doesn't sound like it's urgent or important enough to > justify the behavior change. Even though the memory it uses is not > large, it's still memory, and it still increases consing each time a > frame is deleted. For example, some people turn on all kinds of > optional features that pop up new frames in many situations, and who > knows what this will cause in those usage patterns. Why risk such > unintended consequences on behalf of a minor feature? > I hear your arguments, but IMO that would be like making "undo" opt-in. I also wouldn't call that a "minor" feature, it's worth an entry in the File menu. Indeed we don't know what this could cause with exotic usage patterns, so I suggest, given that the release of Emacs 29 is far away in the future, to make it opt-out on the trunk, and if someone protests because it breaks their usage pattern before Emacs 29 is released, to make it opt-in instead. > > How about using "restore" instead of "undelete", here and everywhere > else? I think it's a tad more clear, and also easier to understand, as > it doesn't use negative tense. > I agree with Juri here. In another app, I would have named this "Restore Window", but Emacs uses "Delete Frame" where other apps would use "Close Window", so using "Restore Frame" would be much less clear than "Undelete Frame". In particular, it would not be clear that "Restore" creates a new frame and does not do something with the current frame. --kmTPLSwWAr Content-Type: text/x-diff; name=Undelete-deleted-frames.patch Content-Transfer-Encoding: base64 Content-ID: <1adc044f4715d7398fc4@heytings.org> Content-Description: Content-Disposition: attachment; filename=Undelete-deleted-frames.patch RnJvbSAzNWFlMDM0ODA1MTFjMTZmYjk2NTdlNGM2NjEyNzgzMjJkN2NjZGVj IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQ0KRnJvbTogR3JlZ29yeSBIZXl0 aW5ncyA8Z3JlZ29yeUBoZXl0aW5ncy5vcmc+DQpEYXRlOiBGcmksIDE5IE5v diAyMDIxIDA4OjUwOjQ5ICswMDAwDQpTdWJqZWN0OiBbUEFUQ0hdIFVuZGVs ZXRlIGRlbGV0ZWQgZnJhbWVzLg0KDQoqIGxpc3AvZnJhbWUuZWwgKHVuZGVs ZXRlLWZyYW1lKTogTmV3IGNvbW1hbmQuDQoodW5kZWxldGUtZnJhbWUtLWhh bmRsZS1kZWxldGUtZnJhbWUpOiBOZXcgYXV4aWxpYXJ5IGZ1bmN0aW9uLg0K KHVuZGVsZXRlLWZyYW1lLS1kZWxldGVkLWZyYW1lcywgdW5kZWxldGUtZnJh bWUtLWVuYWJsZWQpOiBOZXcNCmF1eGlsaWFyeSB2YXJpYWJsZXMuDQoodW5k ZWxldGUtZnJhbWUtbW9kZSk6IE5ldyBtaW5vciBtb2RlLg0KKGN0bC14LTUt bWFwKTogQmluZCB0aGUgbmV3IGNvbW1hbmQuDQoNCiogc3JjL2ZyYW1lLmMg KEZkZWxldGVfZnJhbWUpOiBVcGRhdGUgZG9jc3RyaW5nLCBhbmQgbWVudGlv biB0aGUNCm1pbm9yIG1vZGUuDQoNCiogbGlzcC9tZW51LWJhci5lbCAobWVu dS1iYXItZmlsZS1tZW51KTogQWRkIGFuIGVudHJ5IGZvciB0aGUNCm5ldyBj b21tYW5kLg0KDQoqIGRvYy9lbWFjcy9mcmFtZXMudGV4IChGcmFtZSBDb21t YW5kcyk6IERvY3VtZW50IHRoZSBuZXcgY29tbWFuZA0KYW5kIG1pbm9yIG1v ZGUuDQoNCiogZXRjL05FV1M6IERvY3VtZW50IHRoZSBuZXcgY29tbWFuZCBh bmQgbWlub3IgbW9kZS4NCg0KU2VlIGJ1ZyM1MTg4My4NCi0tLQ0KIGRvYy9l bWFjcy9mcmFtZXMudGV4aSB8IDEwICsrKysrDQogZXRjL05FV1MgICAgICAg ICAgICAgIHwgMTAgKysrKysNCiBsaXNwL2ZyYW1lLmVsICAgICAgICAgfCA4 OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr DQogbGlzcC9tZW51LWJhci5lbCAgICAgIHwgIDUgKysrDQogc3JjL2ZyYW1l LmMgICAgICAgICAgIHwgIDUgKystDQogNSBmaWxlcyBjaGFuZ2VkLCAxMTcg aW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQ0KDQpkaWZmIC0tZ2l0IGEv ZG9jL2VtYWNzL2ZyYW1lcy50ZXhpIGIvZG9jL2VtYWNzL2ZyYW1lcy50ZXhp DQppbmRleCBjMTRhZGEyOTU3Li4yOTZiNjZhYTU2IDEwMDY0NA0KLS0tIGEv ZG9jL2VtYWNzL2ZyYW1lcy50ZXhpDQorKysgYi9kb2MvZW1hY3MvZnJhbWVz LnRleGkNCkBAIC01MTIsNiArNTEyLDE2IEBAIEZyYW1lIENvbW1hbmRzDQog RGVsZXRlIHRoZSBzZWxlY3RlZCBmcmFtZSAoQGNvZGV7ZGVsZXRlLWZyYW1l fSkuICBUaGlzIHNpZ25hbHMgYW4NCiBlcnJvciBpZiB0aGVyZSBpcyBvbmx5 IG9uZSBmcmFtZS4NCiANCitAaXRlbSBDLXggNSB1DQorQGtpbmRleCBDLXgg NSB1DQorQGZpbmRleCB1bmRlbGV0ZS1mcmFtZQ0KK0BmaW5kZXggdW5kZWxl dGUtZnJhbWUtbW9kZQ0KK1VubGVzcyBAY29kZXt1bmRlbGV0ZS1mcmFtZS1t b2RlfSBpcyBkaXNhYmxlZCwgdW5kZWxldGUgb25lIG9mIHRoZSAxNg0KK21v c3QgcmVjZW50bHkgZGVsZXRlZCBmcmFtZXMuICBXaXRob3V0IGEgcHJlZml4 IGFyZ3VtZW50LCB0aGUgbW9zdA0KK3JlY2VudGx5IGRlbGV0ZWQgZnJhbWUg aXMgdW5kZWxldGVkLiAgV2l0aCBhIG51bWVyaWNhbCBwcmVmaXggYXJndW1l bnQNCitiZXR3ZWVuIDAgYW5kIDE1LCB3aGVyZSAwIGlzIHRoZSBtb3N0IHJl Y2VudGx5IGRlbGV0ZWQgZnJhbWUsIHRoZQ0KK2NvcnJlc3BvbmRpbmcgZGVs ZXRlZCBmcmFtZSBpcyB1bmRlbGV0ZWQuDQorDQogQGl0ZW0gQy16DQogQGtp bmRleCBDLXogQHJ7KFggd2luZG93cyl9DQogTWluaW1pemUgKG9yIGljb25p ZnkpIHRoZSBzZWxlY3RlZCBFbWFjcyBmcmFtZQ0KZGlmZiAtLWdpdCBhL2V0 Yy9ORVdTIGIvZXRjL05FV1MNCmluZGV4IDMxMmZjMThmNGYuLjUxY2ZlMTY2 NzcgMTAwNjQ0DQotLS0gYS9ldGMvTkVXUw0KKysrIGIvZXRjL05FV1MNCkBA IC0xMzAsNiArMTMwLDE2IEBAIEZvciBleGFtcGxlLCBhICdkaXNwbGF5LWJ1 ZmZlci1hbGlzdCcgZW50cnkgb2YNCiB3aWxsIG1ha2UgdGhlIGJvZHkgb2Yg dGhlIGNob3NlbiB3aW5kb3cgNDAgY29sdW1ucyB3aWRlLiAgRm9yIHRoZQ0K IGhlaWdodCB1c2UgJ3dpbmRvdy1oZWlnaHQnIGluIGNvbWJpbmF0aW9uIHdp dGggJ2JvZHktbGluZXMnLg0KIA0KKyoqIEZyYW1lcw0KKw0KKysrKw0KKyoq KiBEZWxldGVkIGZyYW1lcyBjYW4gbm93IGJlIHVuZGVsZXRlZC4NCitUaGUg MTYgbW9zdCByZWNlbnRseSBkZWxldGVkIGZyYW1lcyBjYW4gYmUgdW5kZWxl dGVkIHdpdGggQy14IDUgdSwNCit1bmxlc3MgdW5kZWxldGUtZnJhbWUtbW9k ZSBpcyBkaXNhYmxlZC4gIFdpdGhvdXQgYSBwcmVmaXggYXJndW1lbnQsDQor dW5kZWxldGUgdGhlIG1vc3QgcmVjZW50bHkgZGVsZXRlZCBmcmFtZS4gIEEg bnVtZXJpY2FsIHByZWZpeCBhcmd1bWVudA0KK2JldHdlZW4gMCBhbmQgMTUg dW5kZWxldGVzIHRoZSBjb3JyZXNwb25kaW5nIGRlbGV0ZWQgZnJhbWUsIHdo ZXJlIDAgaXMNCit0aGUgbW9zdCByZWNlbnRseSBkZWxldGVkIGZyYW1lLg0K Kw0KICoqIEJldHRlciBkZXRlY3Rpb24gb2YgdGV4dCBzdXNwaWNpb3VzbHkg cmVvcmRlcmVkIG9uIGRpc3BsYXkuDQogVGhlIGZ1bmN0aW9uICdiaWRpLWZp bmQtb3ZlcnJpZGRlbi1kaXJlY3Rpb25hbGl0eScgaGFzIGJlZW4gZXh0ZW5k ZWQNCiB0byBkZXRlY3QgcmVvcmRlcmluZyBlZmZlY3RzIHByb2R1Y2VkIGJ5 IGVtYmVkZGluZ3MgYW5kIGlzb2xhdGVzDQpkaWZmIC0tZ2l0IGEvbGlzcC9m cmFtZS5lbCBiL2xpc3AvZnJhbWUuZWwNCmluZGV4IDJjNzM3MzdhNTQuLjU2 MzM5MWU3YTEgMTAwNjQ0DQotLS0gYS9saXNwL2ZyYW1lLmVsDQorKysgYi9s aXNwL2ZyYW1lLmVsDQpAQCAtMjQ4NCw2ICsyNDg0LDkzIEBAIGRlbGV0ZS1v dGhlci1mcmFtZXMNCiAgICAgICAgIChpZiBpY29uaWZ5IChpY29uaWZ5LWZy YW1lIHRoaXMpIChkZWxldGUtZnJhbWUgdGhpcykpKQ0KICAgICAgIChzZXRx IHRoaXMgbmV4dCkpKSkNCiANCisoZXZhbC13aGVuLWNvbXBpbGUgKHJlcXVp cmUgJ2ZyYW1lc2V0KSkNCisNCisoZGVmdmFyIHVuZGVsZXRlLWZyYW1lLS1k ZWxldGVkLWZyYW1lcyBuaWwNCisgICJJbnRlcm5hbCB2YXJpYWJsZSB1c2Vk IGJ5IGB1bmRlbGV0ZS1mcmFtZS0taGFuZGxlLWRlbGV0ZS1mcmFtZScuIikN CisNCisoZGVmdmFyIHVuZGVsZXRlLWZyYW1lLS1lbmFibGVkIG5pbA0KKyAg IkludGVybmFsIHZhcmlhYmxlIHVzZWQgYnkgYHVuZGVsZXRlLWZyYW1lLS1o YW5kbGUtZGVsZXRlLWZyYW1lJy4iKQ0KKw0KKyhkZWZ1biB1bmRlbGV0ZS1m cmFtZS0taGFuZGxlLWRlbGV0ZS1mcmFtZSAoZnJhbWUpDQorICAiU2F2ZSB0 aGUgY29uZmlndXJhdGlvbiBvZiBmcmFtZXMgZGVsZXRlZCB3aXRoIGBkZWxl dGUtZnJhbWUnLg0KK09ubHkgdGhlIDE2IG1vc3QgcmVjZW50bHkgZGVsZXRl ZCBmcmFtZXMgYXJlIHNhdmVkLiINCisgICh3aGVuIChhbmQNCisgICAgICAg ICA7OyBTa2lwIHRoZSBkZWxldGlvbiBvZiB0aGUgdGVybWluYWwgZnJhbWUg aW4NCisgICAgICAgICA7OyBgZnJhbWUtaW5pdGlhbGl6ZScsIGJ1dCBkbyBu b3Qgc2tpcCB0aGUgZmlyc3QgZGVsZXRpb24gb2YNCisgICAgICAgICA7OyBh IGZyYW1lIHdoZW4gdGhlIGRhZW1vbiBpcyB1c2VkLCBub3IgdGhlIGZpcnN0 IGRlbGV0aW9uIG9mDQorICAgICAgICAgOzsgYSBmcmFtZSBpbiBhIFRUWS4N CisgICAgICAgICAob3IgdW5kZWxldGUtZnJhbWUtLWVuYWJsZWQNCisgICAg ICAgICAgICAgKGRhZW1vbnApDQorICAgICAgICAgICAgIChhbmQgKG5vdCAo ZGlzcGxheS1ncmFwaGljLXApKQ0KKyAgICAgICAgICAgICAgICAgIChzZXEt ZXZlcnktcA0KKyAgICAgICAgICAgICAgICAgICAobGFtYmRhIChmKSAobm90 IChmcmFtZS1wYXJhbWV0ZXIgZiAnZGlzcGxheSkpKQ0KKyAgICAgICAgICAg ICAgICAgICAoZnJhbWUtbGlzdCkpKSkNCisgICAgICAgICAoZnJhbWUtbGl2 ZS1wIGZyYW1lKSkNCisgICAgKHNldHEgdW5kZWxldGUtZnJhbWUtLWRlbGV0 ZWQtZnJhbWVzDQorICAgICAgICAgIChjb25zDQorICAgICAgICAgICAoY29u cw0KKyAgICAgICAgICAgIChkaXNwbGF5LWdyYXBoaWMtcCkNCisgICAgICAg ICAgICAoZnJhbWVzZXQtc2F2ZQ0KKyAgICAgICAgICAgICAobGlzdCBmcmFt ZSkNCisgICAgICAgICAgICAgOzsgV2hlbiB0aGUgZGFlbW9uIGlzIHN0YXJ0 ZWQgZnJvbSBhIGdyYXBoaWNhbA0KKyAgICAgICAgICAgICA7OyBlbnZpcm9u bWVudCwgVFRZIGZyYW1lcyBoYXZlIGEgJ2Rpc3BsYXknIHBhcmFtZXRlciBz ZXQNCisgICAgICAgICAgICAgOzsgdG8gdGhlIHZhbHVlIG9mICRESVNQTEFZ IChzZWUgdGhlIG5vdGUgaW4NCisgICAgICAgICAgICAgOzsgYHNlcnZlci0t b24tZGlzcGxheS1wJykuICBEbyBub3Qgc3RvcmUgdGhhdCBwYXJhbWV0ZXIN CisgICAgICAgICAgICAgOzsgaW4gdGhlIGZyYW1lc2V0LCBvdGhlcndpc2Ug YGZyYW1lc2V0LXJlc3RvcmUnIGF0dGVtcHRzDQorICAgICAgICAgICAgIDs7 IHRvIHJlc3RvcmUgYSBncmFwaGljYWwgZnJhbWUuDQorICAgICAgICAgICAg IDpmaWx0ZXJzIChpZiAoZGlzcGxheS1ncmFwaGljLXApDQorICAgICAgICAg ICAgICAgICAgICAgICAgICBmcmFtZXNldC1maWx0ZXItYWxpc3QNCisgICAg ICAgICAgICAgICAgICAgICAgICAoY29ucyAnKGRpc3BsYXkgLiA6bmV2ZXIp DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVzZXQtZmls dGVyLWFsaXN0KSkpKQ0KKyAgICAgICAgICAgdW5kZWxldGUtZnJhbWUtLWRl bGV0ZWQtZnJhbWVzKSkNCisgICAgKGlmICg+IChsZW5ndGggdW5kZWxldGUt ZnJhbWUtLWRlbGV0ZWQtZnJhbWVzKSAxNikNCisgICAgICAgIChzZXRxIHVu ZGVsZXRlLWZyYW1lLS1kZWxldGVkLWZyYW1lcw0KKyAgICAgICAgICAgICAg KGJ1dGxhc3QgdW5kZWxldGUtZnJhbWUtLWRlbGV0ZWQtZnJhbWVzKSkpKQ0K KyAgKHNldHEgdW5kZWxldGUtZnJhbWUtLWVuYWJsZWQgdCkpDQorDQorKGRl ZmluZS1taW5vci1tb2RlIHVuZGVsZXRlLWZyYW1lLW1vZGUNCisgICJFbmFi bGUgdGhlIGBkZWxldGUtZnJhbWUnIGNvbW1hbmQuIg0KKyAgOmdyb3VwICdm cmFtZXMNCisgIDpnbG9iYWwgdA0KKyAgOmluaXRpYWxpemUgJ2N1c3RvbS1p bml0aWFsaXplLWRlbGF5DQorICA6aW5pdC12YWx1ZSB0DQorICAoaWYgdW5k ZWxldGUtZnJhbWUtbW9kZQ0KKyAgICAgIChhZGQtaG9vayAnZGVsZXRlLWZy YW1lLWZ1bmN0aW9ucw0KKyAgICAgICAgICAgICAgICAjJ3VuZGVsZXRlLWZy YW1lLS1oYW5kbGUtZGVsZXRlLWZyYW1lIC03NSkNCisgICAgKHJlbW92ZS1o b29rICdkZWxldGUtZnJhbWUtZnVuY3Rpb25zDQorICAgICAgICAgICAgICAg ICAjJ3VuZGVsZXRlLWZyYW1lLS1oYW5kbGUtZGVsZXRlLWZyYW1lKQ0KKyAg ICAoc2V0cSB1bmRlbGV0ZS1mcmFtZS0tZGVsZXRlZC1mcmFtZXMgbmlsKSkp DQorDQorKGRlZnVuIHVuZGVsZXRlLWZyYW1lICgmb3B0aW9uYWwgYXJnKQ0K KyAgIlVuZGVsZXRlIGEgZnJhbWUgZGVsZXRlZCB3aXRoIGBkZWxldGUtZnJh bWUnLg0KK1dpdGhvdXQgYSBwcmVmaXggYXJndW1lbnQsIG9yIHdpdGggd2l0 aCBqdXN0IFxcW3VuaXZlcnNhbC1hcmd1bWVudF0sIFwNCit1bmRlbGV0ZSB0 aGUgbW9zdA0KK3JlY2VudGx5IGRlbGV0ZWQgZnJhbWUuDQorV2l0aCBhIG51 bWVyaWNhbCBwcmVmaXggYXJndW1lbnQgQVJHIGJldHdlZW4gMCBhbmQgMTUs IHdoZXJlIDAgaXMNCittb3N0IHJlY2VudGx5IGRlbGV0ZWQgZnJhbWUsIHVu ZGVsZXRlIHRoZSBBUkd0aCBkZWxldGVkIGZyYW1lLg0KK1doZW4gY2FsbGVk IGZyb20gTGlzcCwgcmV0dXJucyB0aGUgbmV3IGZyYW1lLiINCisgIChpbnRl cmFjdGl2ZSAiUCIpDQorICAoaWYgKG5vdCB1bmRlbGV0ZS1mcmFtZS1tb2Rl KQ0KKyAgICAgIChtZXNzYWdlICJ1bmRlbGV0ZS1mcmFtZS1tb2RlIGlzIGRp c2FibGVkIikNCisgICAgKGxldCogKChmcmFtZXMgKGZyYW1lLWxpc3QpKQ0K KyAgICAgICAgICAgKG4gKGlmIChsaXN0cCBhcmcpIDAgYXJnKSkNCisgICAg ICAgICAgIChmcmFtZXNldCAobnRoIG4gdW5kZWxldGUtZnJhbWUtLWRlbGV0 ZWQtZnJhbWVzKSkNCisgICAgICAgICAgIChncmFwaGljIChkaXNwbGF5LWdy YXBoaWMtcCkpKQ0KKyAgICAgIChpZiAobm90IGZyYW1lc2V0KQ0KKyAgICAg ICAgICAobWVzc2FnZSAiTm8gZGVsZXRlZCBmcmFtZSBzYXZlZCBhdCBwb3Np dGlvbiAlZCIgbikNCisgICAgICAgIChpZiAobm90IChlcSBncmFwaGljIChj YXIgZnJhbWVzZXQpKSkNCisgICAgICAgICAgICAobWVzc2FnZQ0KKyAgICAg ICAgICAgICAiQ2Fubm90IHVuZGVsZXRlICVzZ3JhcGhpYyBkaXNwbGF5IGZy YW1lIG9uIGEgJXNncmFwaGljIGRpc3BsYXkiDQorICAgICAgICAgICAgIChp ZiBncmFwaGljICJub24tIiAiIikNCisgICAgICAgICAgICAgKGlmIGdyYXBo aWMgIiIgIm5vbi0iKSkNCisgICAgICAgICAgKHNldHEgdW5kZWxldGUtZnJh bWUtLWRlbGV0ZWQtZnJhbWVzDQorICAgICAgICAgICAgICAgIChkZWxxIGZy YW1lc2V0IHVuZGVsZXRlLWZyYW1lLS1kZWxldGVkLWZyYW1lcykpDQorICAg ICAgICAgIChmcmFtZXNldC1yZXN0b3JlIChjZHIgZnJhbWVzZXQpKQ0KKyAg ICAgICAgICAobGV0ICgoZnJhbWUgKGNhciAoc2VxLWRpZmZlcmVuY2UgKGZy YW1lLWxpc3QpIGZyYW1lcykpKSkNCisgICAgICAgICAgICAod2hlbiBmcmFt ZQ0KKyAgICAgICAgICAgICAgKHNlbGVjdC1mcmFtZS1zZXQtaW5wdXQtZm9j dXMgZnJhbWUpDQorICAgICAgICAgICAgICBmcmFtZSkpKSkpKSkNCiAMDQog Ozs7IFdpbmRvdyBkaXZpZGVycy4NCiAoZGVmZ3JvdXAgd2luZG93LWRpdmlk ZXIgbmlsDQpAQCAtMjgyOCw2ICsyOTE1LDcgQEAgY3RsLXgtNS1tYXANCiAo ZGVmaW5lLWtleSBjdGwteC01LW1hcCAibyIgIydvdGhlci1mcmFtZSkNCiAo ZGVmaW5lLWtleSBjdGwteC01LW1hcCAiNSIgIydvdGhlci1mcmFtZS1wcmVm aXgpDQogKGRlZmluZS1rZXkgY3RsLXgtNS1tYXAgImMiICMnY2xvbmUtZnJh bWUpDQorKGRlZmluZS1rZXkgY3RsLXgtNS1tYXAgInUiICMndW5kZWxldGUt ZnJhbWUpDQogKGRlZmluZS1rZXkgZ2xvYmFsLW1hcCBbZjExXSAjJ3RvZ2ds ZS1mcmFtZS1mdWxsc2NyZWVuKQ0KIChkZWZpbmUta2V5IGdsb2JhbC1tYXAg WyhtZXRhIGYxMCldICMndG9nZ2xlLWZyYW1lLW1heGltaXplZCkNCiAoZGVm aW5lLWtleSBlc2MtbWFwICAgIFtmMTBdICAgICAgICAjJ3RvZ2dsZS1mcmFt ZS1tYXhpbWl6ZWQpDQpkaWZmIC0tZ2l0IGEvbGlzcC9tZW51LWJhci5lbCBi L2xpc3AvbWVudS1iYXIuZWwNCmluZGV4IDFhODFmMWEzZDAuLmE1ZjcxNjkz NTUgMTAwNjQ0DQotLS0gYS9saXNwL21lbnUtYmFyLmVsDQorKysgYi9saXNw L21lbnUtYmFyLmVsDQpAQCAtMTA5LDYgKzEwOSwxMSBAQCBtZW51LWJhci1m aWxlLW1lbnUNCiAgICAgICAoYmluZGluZ3MtLWRlZmluZS1rZXkgbWVudSBb c2VwYXJhdG9yLXRhYl0NCiAgICAgICAgIG1lbnUtYmFyLXNlcGFyYXRvcikp DQogDQorICAgIChiaW5kaW5ncy0tZGVmaW5lLWtleSBtZW51IFt1bmRlbGV0 ZS1sYXN0LWRlbGV0ZWQtZnJhbWVdDQorICAgICAgJyhtZW51LWl0ZW0gIlVu ZGVsZXRlIEZyYW1lIiB1bmRlbGV0ZS1mcmFtZQ0KKyAgICAgICAgICAgICAg ICAgIDplbmFibGUgdW5kZWxldGUtZnJhbWUtbW9kZQ0KKyAgICAgICAgICAg ICAgICAgIDpoZWxwICJVbmRlbGV0ZSBsYXN0IGRlbGV0ZWQgZnJhbWUiKSkN CisNCiAgICAgOzsgRG9uJ3QgdXNlIGRlbGV0ZS1mcmFtZSBhcyBldmVudCBu YW1lIGJlY2F1c2UgdGhhdCBpcyBhIHNwZWNpYWwNCiAgICAgOzsgZXZlbnQu DQogICAgIChiaW5kaW5ncy0tZGVmaW5lLWtleSBtZW51IFtkZWxldGUtdGhp cy1mcmFtZV0NCmRpZmYgLS1naXQgYS9zcmMvZnJhbWUuYyBiL3NyYy9mcmFt ZS5jDQppbmRleCA3OWE3Yzg5ZTBkLi43NjNhYzY1NzE3IDEwMDY0NA0KLS0t IGEvc3JjL2ZyYW1lLmMNCisrKyBiL3NyYy9mcmFtZS5jDQpAQCAtMjM3Myw5 ICsyMzczLDEyIEBAIGRlbGV0ZV9mcmFtZSAoTGlzcF9PYmplY3QgZnJhbWUs IExpc3BfT2JqZWN0IGZvcmNlKQ0KIH0NCiANCiBERUZVTiAoImRlbGV0ZS1m cmFtZSIsIEZkZWxldGVfZnJhbWUsIFNkZWxldGVfZnJhbWUsIDAsIDIsICIi LA0KLSAgICAgICBkb2M6IC8qIERlbGV0ZSBGUkFNRSwgcGVybWFuZW50bHkg ZWxpbWluYXRpbmcgaXQgZnJvbSB1c2UuDQorICAgICAgIGRvYzogLyogRGVs ZXRlIEZSQU1FLCBlbGltaW5hdGluZyBpdCBmcm9tIHVzZS4NCiBGUkFNRSBt dXN0IGJlIGEgbGl2ZSBmcmFtZSBhbmQgZGVmYXVsdHMgdG8gdGhlIHNlbGVj dGVkIG9uZS4NCiANCitVbmxlc3MgYHVuZGVsZXRlLWZyYW1lLW1vZGUnIGlz IGRpc2FibGVkLCB0aGUgMTYgbW9zdCByZWNlbnRseSBkZWxldGVkDQorZnJh bWVzIGNhbiBiZSB1bmRlbGV0ZWQgd2l0aCBgdW5kZWxldGUtZnJhbWUnLCB3 aGljaCBzZWUuDQorDQogQSBmcmFtZSBtYXkgbm90IGJlIGRlbGV0ZWQgaWYg aXRzIG1pbmlidWZmZXIgc2VydmVzIGFzIHN1cnJvZ2F0ZQ0KIG1pbmlidWZm ZXIgZm9yIGFub3RoZXIgZnJhbWUuICBOb3JtYWxseSwgeW91IG1heSBub3Qg ZGVsZXRlIGEgZnJhbWUgaWYNCiBhbGwgb3RoZXIgZnJhbWVzIGFyZSBpbnZp c2libGUsIGJ1dCBpZiB0aGUgc2Vjb25kIG9wdGlvbmFsIGFyZ3VtZW50DQot LSANCjIuMzMuMA0KDQo= --kmTPLSwWAr--