Received: (at 59862) by debbugs.gnu.org; 13 Oct 2024 06:23:16 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Oct 13 02:23:16 2024 Received: from localhost ([127.0.0.1]:49981 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1szs0a-0004Jl-03 for submit <at> debbugs.gnu.org; Sun, 13 Oct 2024 02:23:16 -0400 Received: from relay3-d.mail.gandi.net ([217.70.183.195]:45987) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1szs0X-0004JR-HA for 59862 <at> debbugs.gnu.org; Sun, 13 Oct 2024 02:23:14 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id 4EA1060003; Sun, 13 Oct 2024 06:22:29 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <4ccff054-18bf-4149-8100-37fd26ea2992@HIDDEN> (martin rudalics's message of "Fri, 11 Oct 2024 09:50:44 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> <86r0b9tqo3.fsf@HIDDEN> <22c18c89-b288-4c2e-83ae-11fd7cb1ec24@HIDDEN> <86ed78w7t4.fsf@HIDDEN> <86msjefqfa.fsf@HIDDEN> <6272a373-1e7c-4df9-b0c2-e535ca3fe49b@HIDDEN> <864j5ll110.fsf@HIDDEN> <9c103d92-c8f5-4fe7-934f-2f56219475b8@HIDDEN> <86msjbyfqx.fsf@HIDDEN> <4ccff054-18bf-4149-8100-37fd26ea2992@HIDDEN> Date: Sun, 13 Oct 2024 09:18:00 +0300 Message-ID: <86a5f8cyqv.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) >> + ((and tab-bar-mode > > Wouldn't > > (> (frame-parameter frame 'tab-bar-lines) 0) > > be more accurate? > >> + (> (length (funcall tab-bar-tabs-function frame)) 1) >> + ;; Close the tab with the initial window (bug#59862) >> + (or (eq (nth 1 (window-parameter window 'quit-restore)) 'tab) >> + ;; or with the dedicated window (bug#71386) > > Please always close comments with a period. > >> + (window-dedicated-p window)) >> + ;; Don't close the tab if more windows were created explicitly >> + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) >> + (window-list-1 nil 'nomini)) > > Shouldn't you give 'window-list-1' a FRAME argument? Thanks, will fix these. Also noticed this needs 'car': (memq (car (window-parameter w 'quit-restore)) '(window tab frame)) Also during testing for a few days I found a problem that prevents fixing bug#71386: 1. C-x t 2 2. C-x d any_dir 3. mark files with 'm' 4. R other_dir This unexpectedly closes the tab. This is because (window-dedicated-p window) in window-deletable-p in the patch discovers that the window with the buffer " *Marked files*" is dedicated while trying to delete this window. So probably to fix bug#71386 need to add another condition that closes the tab only when there are no more windows on the frame: (and (window-dedicated-p window) (frame-root-window-p window))
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 11 Oct 2024 07:51:14 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Oct 11 03:51:14 2024 Received: from localhost ([127.0.0.1]:33335 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1szAQc-0001Jb-89 for submit <at> debbugs.gnu.org; Fri, 11 Oct 2024 03:51:14 -0400 Received: from mout.gmx.net ([212.227.15.18]:48713) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1szAQZ-0001JK-H6 for 59862 <at> debbugs.gnu.org; Fri, 11 Oct 2024 03:51:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1728633050; x=1729237850; i=rudalics@HIDDEN; bh=ufLmCEjHmqHV2DaNZehamfa3HVNZ/GsdJhjUmFhw/v8=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=QS0NQeGAVf1A6nCxOtoD8aEVFYOinqEexYbIkLzzTf47Q6uWkujtsfYKikVZnDRr 3QgAW7E6/Fzs6geBE7Lc3JNiOjzNrj3MwimeUoXIbl2dVf/5sgVhfPeKq2g7tyLuI JvZs8jajSSM9EFu5aH7qG99IdJZEVCx5TucnuhLsbaCmNxNfDjqAUOiZEO/2cMIWv bcUx/RIGxj7WyGVhp9ou3mmv8OAIiXpNq9z0k2TKLfj6RgR1PEj0m2g5vto/VUnTJ HjQLF8CKUlqZdA105+b6IwCBeX+HX25n8l6oEEASKhKtMJEOOG4tBgIe2maUEXLm0 lgaQ1/tbBsfgBP33aA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([46.125.249.110]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1M4JqV-1szRXP06OP-003xeN; Fri, 11 Oct 2024 09:50:50 +0200 Message-ID: <4ccff054-18bf-4149-8100-37fd26ea2992@HIDDEN> Date: Fri, 11 Oct 2024 09:50:44 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> <86r0b9tqo3.fsf@HIDDEN> <22c18c89-b288-4c2e-83ae-11fd7cb1ec24@HIDDEN> <86ed78w7t4.fsf@HIDDEN> <86msjefqfa.fsf@HIDDEN> <6272a373-1e7c-4df9-b0c2-e535ca3fe49b@HIDDEN> <864j5ll110.fsf@HIDDEN> <9c103d92-c8f5-4fe7-934f-2f56219475b8@HIDDEN> <86msjbyfqx.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86msjbyfqx.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:wS6PE7xgOU5qEpFkUqXnfZinP4KnAQgbU1CiZM0qtopvXrLI4sp i5roEIUdAYIRy/+rhKtKJV0SoX8ARfK81yzSp8TnJSpoDDErlkaCabUiyN3ns/qKVYLLr3l pydroAXvjojsYfvAmmFJYh8C4Iqz9wLAsReiKWvfT4Y2KzpHcRrAgICT0hah3kXzM4k1CyJ Xs54dVdwEdgKfD7C2VUEw== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:SBqkEKL+rjM=;CjFtLDD9xqkHFGLIU4Q5S6fSW+7 dFgozT6f1tOymWwTNwOs0E/skRcXzdiT4BvChrUF8NS2sLQDguPYlr4W46pjg3gXRtwe7sNuA BPCp3okJ3wYTbKjAXhmukD1JjCQv0mIY2ZPpjdd7N+ixvkUH2xsWyfbHxKsSb82c3DQtfAYgI swisC+KbxUYQ5paX/Lt0paYPuQvROgYxdLbc2wlGEvdIOzTWSr0PSCRkaMxDkeYotA3x0hX06 sOMct7XrtQiZU7zvG7Sc22nR/QmqGhBNeCU8ZAFZt57Ea+KdqQkEKsN3pmPvKULxsztcQJ6Xl B1u1/lK9Zw2LETO3HoqgaM1iToMIginwB6JJVt5ugBp4xlXI3rzQte0UkY/3EDR/H5d2mKgjn iI5HsqgxVgznJqmCVCSHefmsDqCh+96Pj8fJqUApD9/5z8KaCs/TRiC+Gtclv7OZkNzi9T5CC kwKPLRRqUCPpeS+5e23mVkVNiROHbR1lzWtXYJwhM5d/xUx6VOtzn6Pygn3IkaQBc3giEvINS y/8eJrPP5jJ87VO+ZdVdTzl6NLdnK7RMTiJ+GyBOnJI90HuKFJQT48cO4BTq4z7ahEd9b89pk UMg2zx08A3JDRsPNs4Bju5IzUIHAJBpT44IctIRlYDMjhOPu6V70IzuLX1xfpbA2Ny7XBB7cy geJ0A2FpqA4aAAGE34QITxfFUIIDYKUiJPoHDpWiZQCKzy2ky64kOG4zvCJVE+BJ8HGYO+CvF 4eYyArJHyvNzSG/vQxpEo5B6Zj1c0FX2vfnR5N5i7OZCiOiP+8VFgAqWmT0Px94HVAgG96WUA chKLfsum4ugba+9+lr/6mcYl1OU1AiYAJkMqFAd+u3Wxc= X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > + ((and tab-bar-mode Wouldn't (> (frame-parameter frame 'tab-bar-lines) 0) be more accurate? > + (> (length (funcall tab-bar-tabs-function frame)) 1) > + ;; Close the tab with the initial window (bug#59862) > + (or (eq (nth 1 (window-parameter window 'quit-restore)) 'tab) > + ;; or with the dedicated window (bug#71386) Please always close comments with a period. > + (window-dedicated-p window)) > + ;; Don't close the tab if more windows were created explicitly > + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) > + (window-list-1 nil 'nomini)) Shouldn't you give 'window-list-1' a FRAME argument? martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 10 Oct 2024 18:31:50 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Oct 10 14:31:49 2024 Received: from localhost ([127.0.0.1]:60546 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1syxwz-0001IN-8f for submit <at> debbugs.gnu.org; Thu, 10 Oct 2024 14:31:49 -0400 Received: from relay5-d.mail.gandi.net ([217.70.183.197]:59289) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1syxwu-0001Hs-Mr for 59862 <at> debbugs.gnu.org; Thu, 10 Oct 2024 14:31:45 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id 217701C0002; Thu, 10 Oct 2024 18:31:04 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <9c103d92-c8f5-4fe7-934f-2f56219475b8@HIDDEN> (martin rudalics's message of "Thu, 10 Oct 2024 16:54:02 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> <86r0b9tqo3.fsf@HIDDEN> <22c18c89-b288-4c2e-83ae-11fd7cb1ec24@HIDDEN> <86ed78w7t4.fsf@HIDDEN> <86msjefqfa.fsf@HIDDEN> <6272a373-1e7c-4df9-b0c2-e535ca3fe49b@HIDDEN> <864j5ll110.fsf@HIDDEN> <9c103d92-c8f5-4fe7-934f-2f56219475b8@HIDDEN> Date: Thu, 10 Oct 2024 21:28:22 +0300 Message-ID: <86msjbyfqx.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) --=-=-= Content-Type: text/plain > > Because tabs have priority over frames. The precedence is: > > windows -> tabs -> frames. When there are many tabs > > then quit-restore-window should close tabs, and only > > on the last tab should delete the frame. This is bug#71386, > > but first need to finish bug#59862. > > So which bug are we discussing here? Bug#59862 or Bug#71386? I intended to finish first bug#59862, then to do bug#71386 later. But really they are closely related, so I fixed them both now and added corresponding references to bug numbers in comments. > >> I don't understand the problem yet. 'window-deletable-p' calls > >> 'frame-deletable-p' iff WINDOW is the root window of the frame. At this > >> time we can only either delete the frame or show another buffer in > >> WINDOW; tertium non datur. What am I missing? > > > > The third first-class citizen is the tab-bar. > > But I haven't written anything for the tab-bar code. This is something > you have to provide. Earlier you proposed So I extended this patch, and now all tests pass successfully with: --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=quit-restore-tab.patch diff --git a/lisp/window.el b/lisp/window.el index 5822947f2fe..119de1eb38f 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -4143,6 +4143,18 @@ window-deletable-p (let ((frame (window-frame window))) (cond + ((and tab-bar-mode + ;; Fall back to frame handling in case of less than 2 tabs + (> (length (funcall tab-bar-tabs-function frame)) 1) + ;; Close the tab with the initial window (bug#59862) + (or (eq (nth 1 (window-parameter window 'quit-restore)) 'tab) + ;; or with the dedicated window (bug#71386) + (window-dedicated-p window)) + ;; Don't close the tab if more windows were created explicitly + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) + (window-list-1 nil 'nomini)) + 2)) + 'tab) ((frame-root-window-p window) ;; WINDOW's frame can be deleted only if there are other frames ;; on the same terminal, and it does not contain the active @@ -4979,6 +4991,9 @@ window--delete (unless (and dedicated-only (not (window-dedicated-p window))) (let ((deletable (window-deletable-p window))) (cond + ((eq deletable 'tab) + (tab-bar-close-tab) + 'tab) ((eq deletable 'frame) (let ((frame (window-frame window))) (cond @@ -5340,13 +5355,7 @@ quit-restore-window ;; If the previously selected window is still alive, select it. (window--quit-restore-select-window quit-restore-2)) ((and (not prev-buffer) - (eq (nth 1 quit-restore) 'tab) - (eq (nth 3 quit-restore) buffer)) - (tab-bar-close-tab) - ;; If the previously selected window is still alive, select it. - (window--quit-restore-select-window quit-restore-2)) - ((and (not prev-buffer) - (or (eq (nth 1 quit-restore) 'frame) + (or (memq (nth 1 quit-restore) '(frame tab)) (and (eq (nth 1 quit-restore) 'window) ;; If the window has been created on an existing ;; frame and ended up as the sole window on that diff --git a/test/lisp/tab-bar-tests.el b/test/lisp/tab-bar-tests.el index aa8384b24e8..8e8e75ce720 100644 --- a/test/lisp/tab-bar-tests.el +++ b/test/lisp/tab-bar-tests.el @@ -42,10 +42,116 @@ tab-bar-tests-close-other-tabs (should (eq (length tab-bar-closed-tabs) 0))) (ert-deftest tab-bar-tests-close-other-tabs-default () - (tab-bar-tests-close-other-tabs nil)) + (tab-bar-tests-close-other-tabs nil) + ;; Clean up tabs afterwards + (tab-bar-tabs-set nil)) (ert-deftest tab-bar-tests-close-other-tabs-with-arg () - (dotimes (i 5) (tab-bar-tests-close-other-tabs i))) + (dotimes (i 5) (tab-bar-tests-close-other-tabs i)) + ;; Clean up tabs afterwards + (tab-bar-tabs-set nil)) + +(ert-deftest tab-bar-tests-quit-restore-window () + (let* ((frame-params (when noninteractive + '((window-system . nil) + (tty-type . "linux")))) + (pop-up-frame-alist frame-params) + (frame-auto-hide-function 'delete-frame)) + + ;; 1.1. 'quit-restore-window' should delete the frame + ;; from initial window (bug#59862) + (progn + (should (eq (length (frame-list)) 1)) + (other-frame-prefix) + (info) + (should (eq (length (frame-list)) 2)) + (should (equal (buffer-name) "*info*")) + (view-echo-area-messages) + (other-window 1) + (should (eq (length (window-list)) 2)) + (should (equal (buffer-name) "*Messages*")) + (quit-window) + (should (eq (length (window-list)) 1)) + (should (equal (buffer-name) "*info*")) + (quit-window) + (should (eq (length (frame-list)) 1))) + + ;; 1.2. 'quit-restore-window' should not delete the frame + ;; from non-initial window (bug#59862) + (progn + (should (eq (length (frame-list)) 1)) + (other-frame-prefix) + (info) + (should (eq (length (frame-list)) 2)) + (should (equal (buffer-name) "*info*")) + (view-echo-area-messages) + (should (eq (length (window-list)) 2)) + (should (equal (buffer-name) "*info*")) + (quit-window) + (should (eq (length (window-list)) 1)) + (should (eq (length (frame-list)) 2)) + (should (equal (buffer-name) "*Messages*")) + (quit-window) + (should (eq (length (frame-list)) 2)) + ;; Clean up the frame afterwards + (delete-frame)) + + ;; 2.1. 'quit-restore-window' should close the tab + ;; from initial window (bug#59862) + (progn + (should (eq (length (tab-bar-tabs)) 1)) + (other-tab-prefix) + (info) + (should (eq (length (tab-bar-tabs)) 2)) + (should (equal (buffer-name) "*info*")) + (view-echo-area-messages) + (other-window 1) + (should (eq (length (window-list)) 2)) + (should (equal (buffer-name) "*Messages*")) + (quit-window) + (should (eq (length (window-list)) 1)) + (should (equal (buffer-name) "*info*")) + (quit-window) + (should (eq (length (tab-bar-tabs)) 1))) + + ;; 2.2. 'quit-restore-window' should not close the tab + ;; from non-initial window (bug#59862) + (progn + (should (eq (length (tab-bar-tabs)) 1)) + (other-tab-prefix) + (info) + (should (eq (length (tab-bar-tabs)) 2)) + (should (equal (buffer-name) "*info*")) + (view-echo-area-messages) + (should (eq (length (window-list)) 2)) + (should (equal (buffer-name) "*info*")) + (quit-window) + (should (eq (length (window-list)) 1)) + (should (eq (length (tab-bar-tabs)) 2)) + (should (equal (buffer-name) "*Messages*")) + (quit-window) + (should (eq (length (tab-bar-tabs)) 2)) + ;; Clean up the tab afterwards + (tab-close)) + + ;; 3. Don't delete the frame with dedicated window + ;; from the second tab (bug#71386) + (with-selected-frame (make-frame frame-params) + (switch-to-buffer (generate-new-buffer "test1")) + (tab-new) + (switch-to-buffer (generate-new-buffer "test2")) + (set-window-dedicated-p (selected-window) t) + (kill-buffer) + (should (eq (length (frame-list)) 2)) + (should (eq (length (tab-bar-tabs)) 1)) + ;; But now should delete the frame with dedicated window + ;; from the last tab + (set-window-dedicated-p (selected-window) t) + (kill-buffer) + (should (eq (length (frame-list)) 1))) + + ;; Clean up tabs afterwards + (tab-bar-tabs-set nil))) (provide 'tab-bar-tests) ;;; tab-bar-tests.el ends here --=-=-=--
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 10 Oct 2024 14:54:28 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Oct 10 10:54:28 2024 Received: from localhost ([127.0.0.1]:60202 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1syuYd-0006Tz-K7 for submit <at> debbugs.gnu.org; Thu, 10 Oct 2024 10:54:27 -0400 Received: from mout.gmx.net ([212.227.17.22]:34791) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1syuYa-0006Tj-T7 for 59862 <at> debbugs.gnu.org; Thu, 10 Oct 2024 10:54:26 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1728572046; x=1729176846; i=rudalics@HIDDEN; bh=eC7gqJEPnVYZm9nJn0maAmPxGXg2Xiar4e4JWvT8ssA=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=ZMpz3T8isIMfAYyxyEeb6tuG8+Ens/P+POHp0KWPFgo5FZzZegLacl2Ehx8UbgCm MT8AOwAf5ibhxUsic9Z1z4gJ7jPWtDyZxDDP+pKBL8YpvVw9r0dWLn0pO+j1iu+YR Xm+PNzms0z3x7VFD3rfjGuOQfwNgbcG2lwUvwnIpzDPv9i9tLDoyFQCF1hkjyDbAT vd78FKyHlw4apxw4UjP//DM6tTLkU7DoR5OB9qqh1O78/EVlpJ/QZih/Nqt7ifsZ2 Rjq+wdVHghggkysmyMIwSqOPLcEaR/Sm8/pd9GAuC8YrLEnHQ31a02GxMEr77qBU7 B2caLoQ9NTI8XV3CQg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([46.125.249.23]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1Ma20q-1tSWni05MC-00SXxN; Thu, 10 Oct 2024 16:54:06 +0200 Message-ID: <9c103d92-c8f5-4fe7-934f-2f56219475b8@HIDDEN> Date: Thu, 10 Oct 2024 16:54:02 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> <86r0b9tqo3.fsf@HIDDEN> <22c18c89-b288-4c2e-83ae-11fd7cb1ec24@HIDDEN> <86ed78w7t4.fsf@HIDDEN> <86msjefqfa.fsf@HIDDEN> <6272a373-1e7c-4df9-b0c2-e535ca3fe49b@HIDDEN> <864j5ll110.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <864j5ll110.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:8eZ10qnOJfUgHxC5wWj4w19xS+Jg4xhr1fjOT+H10WoKRtU9lg1 08PGBejiPe8MNDfVRrOKGPbHkKXfWB4F5lC8v7LSmuOH/Kuyptn+kHICobOJ/uDXE1kN0AA HpGfemarOm8BU8zuWMRSSvSeEAhmXXdwfvj/BeF75f8vjn9O+y/YJND0axAlCICkEIBVl3b Ni8rT7hqI3/l8g25c5+Fw== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:km94Zc7/Zdw=;TM7H1api+PPEGuWFiaZm0+FWpJU 50Dpu35HAL1KI+irOzzyMZWR+D5NhDPvyIAD9m4GQuQfcjbycSVW8PpTXV4weuFNBHznbMYOb 57vMUBZDWJmeJW5Tt/Q2X684IRSNKHi7Je3kNeWLkQBrrcltH9D/HHdQ0SkZEx/lGi5vtoHDu jvG2FmEC0+jc1AmhqK4fx6mQtNLSGW60OJXKrX1M/unnChq3Do0HH5s9CeoaQ4ASvwkdj9uV/ 8H7z5aUzTxsY0PP/km4C/7lypny/yGBcIDzgEQrIvgs/y7poR5Dif8Rr3J0yDsNtDm9VC1fCT dCKDZh6EqkOMEgPY8INBUzZnqafr1Nh5GOHlY7Ohq2ZIjsatG7dJ14GyzC71J/nRj+9khp+dL LQuPXk6xVLaMxhLt4/ZX8IVEsE8TEug7B3BtXplUtPWRG1OMRqNPIk4pp8PuzSwDbKWLNVQgD 04aAYhEqjKDUcm03fJCHvemx6bwoEob/jkRKUqfCqshJ/8/902TPrg0WYPpqpwiuTGTgV57fY CT8tLgla566EW+kL5/EWGvsQeV55BOd9sAqYbAUwyR0IPV5V/75QIPzGxafa+pHvFrVV+9bKp UjKgIjVdEsemiae0tQwhSDPyarpSAwEUz4CqKsu2vdfTeSslPZtAmK6Nlf8cI+irfjDfyRqf5 KUTVcg5mqQKd5zEpHVvFzrGWGmxcKxdCMPSFWfF092hIoQnuZftOncoYTaNqWbLrm2z1sS55+ npbDW0BDNWUVh6+AU2ZSQLpu2fZMr1CSVolg6NE/kPDOnKShhaiEOn67hMy5LTLhJ1ygcOjV5 SJWgVqeuqLvAPW5pQlk875+w== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > Because tabs have priority over frames. The precedence is: > windows -> tabs -> frames. When there are many tabs > then quit-restore-window should close tabs, and only > on the last tab should delete the frame. This is bug#71386, > but first need to finish bug#59862. So which bug are we discussing here? Bug#59862 or Bug#71386? >> I don't understand the problem yet. 'window-deletable-p' calls >> 'frame-deletable-p' iff WINDOW is the root window of the frame. At this >> time we can only either delete the frame or show another buffer in >> WINDOW; tertium non datur. What am I missing? > > The third first-class citizen is the tab-bar. But I haven't written anything for the tab-bar code. This is something you have to provide. Earlier you proposed diff --git a/lisp/window.el b/lisp/window.el index 58120c919c7..82efb3c40ce 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -4120,6 +4120,11 @@ window-deletable-p (let ((frame (window-frame window))) (cond + ((and (eq (nth 1 (window-parameter window 'quit-restore)) 'tab) + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) + (window-list-1 nil 'nomini)) + 2)) + 'tab) ((frame-root-window-p window) ;; WINDOW's frame can be deleted only if there are other frames ;; on the same terminal, and it does not contain the active @@ -4990,6 +4995,9 @@ window--delete (unless (and dedicated-only (not (window-dedicated-p window))) (let ((deletable (window-deletable-p window))) (cond + ((eq deletable 'tab) + (tab-bar-close-tab) + 'tab) ((eq deletable 'frame) (let ((frame (window-frame window))) (cond @@ -5303,10 +5311,8 @@ quit-restore-window ((and (not prev-buffer) (eq (nth 1 quit-restore) 'tab) (eq (nth 3 quit-restore) buffer) - (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) - (window-list-1 nil 'nomini)) - 2)) - (tab-bar-close-tab) + (window--delete + window nil (memq bury-or-kill '(kill killing)))) ;; If the previously selected window is still alive, select it. (window--quit-restore-select-window quit-restore-2)) ((and (not prev-buffer) martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 9 Oct 2024 16:23:48 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Oct 09 12:23:48 2024 Received: from localhost ([127.0.0.1]:57444 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1syZTX-0000fV-JV for submit <at> debbugs.gnu.org; Wed, 09 Oct 2024 12:23:48 -0400 Received: from relay7-d.mail.gandi.net ([217.70.183.200]:40217) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1syZTV-0000f1-6G for 59862 <at> debbugs.gnu.org; Wed, 09 Oct 2024 12:23:45 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id 0DCB820003; Wed, 9 Oct 2024 16:23:27 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <6272a373-1e7c-4df9-b0c2-e535ca3fe49b@HIDDEN> (martin rudalics's message of "Wed, 9 Oct 2024 10:46:05 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> <86r0b9tqo3.fsf@HIDDEN> <22c18c89-b288-4c2e-83ae-11fd7cb1ec24@HIDDEN> <86ed78w7t4.fsf@HIDDEN> <86msjefqfa.fsf@HIDDEN> <6272a373-1e7c-4df9-b0c2-e535ca3fe49b@HIDDEN> Date: Wed, 09 Oct 2024 19:17:11 +0300 Message-ID: <864j5ll110.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) >> >> (defun tab-bar-window-deletable (window single) >> (if (and single (eq (nth 1 (window-parameter window 'quit-restore)) 'tab)) >> (progn (tab-bar-close-tab) nil) >> t)) >> >> (add-hook 'window-deletable-functions 'tab-bar-window-deletable) >> >> But 'window-deletable-functions' is not called at all, >> because 'window-deletable-p' first checks >> >> (frame-deletable-p (window-frame window)) >> >> and a single frame with tabs is not deletable. > > Why "with tabs" and not just "a single frame is not deletable"? Because tabs have priority over frames. The precedence is: windows -> tabs -> frames. When there are many tabs then quit-restore-window should close tabs, and only on the last tab should delete the frame. This is bug#71386, but first need to finish bug#59862. >> Also instead of 'frame-root-window-p' in 'window-deletable-p' >> the tab-bar needs to use another code. > > I don't understand the problem yet. 'window-deletable-p' calls > 'frame-deletable-p' iff WINDOW is the root window of the frame. At this > time we can only either delete the frame or show another buffer in > WINDOW; tertium non datur. What am I missing? The third first-class citizen is the tab-bar. Here is the test case that will help to understand the requirements. 1.1. 'quit-restore-window' deletes the frame 2.1. 'quit-restore-window' deletes the tab Both test cases are identical, and already pass correctly. 1.2. 'quit-restore-window' doesn't delete the frame passes as well, but its counterpart 2.2. 'quit-restore-window' doesn't delete the tab fails at the line "FAILS HERE": ``` diff --git a/test/lisp/tab-bar-tests.el b/test/lisp/tab-bar-tests.el index aa8384b24e8..00fd78cf081 100644 --- a/test/lisp/tab-bar-tests.el +++ b/test/lisp/tab-bar-tests.el @@ -42,10 +42,104 @@ tab-bar-tests-close-other-tabs (should (eq (length tab-bar-closed-tabs) 0))) (ert-deftest tab-bar-tests-close-other-tabs-default () - (tab-bar-tests-close-other-tabs nil)) + (tab-bar-tests-close-other-tabs nil) + ;; Clean up tabs afterwards + (tab-bar-tabs-set nil)) (ert-deftest tab-bar-tests-close-other-tabs-with-arg () - (dotimes (i 5) (tab-bar-tests-close-other-tabs i))) + (dotimes (i 5) (tab-bar-tests-close-other-tabs i)) + ;; Clean up tabs afterwards + (tab-bar-tabs-set nil)) + +(ert-deftest tab-bar-tests-quit-restore-window () + (let* ((frame-params (when noninteractive + '((window-system . nil) + (tty-type . "linux")))) + (pop-up-frame-alist frame-params) + (frame-auto-hide-function 'delete-frame)) + + ;; 1.1. 'quit-restore-window' deletes the frame + (progn + (should (eq (length (frame-list)) 1)) + (other-frame-prefix) + (info) + (should (eq (length (frame-list)) 2)) + (should (equal (buffer-name) "*info*")) + (view-echo-area-messages) + (other-window 1) + (should (eq (length (window-list)) 2)) + (should (equal (buffer-name) "*Messages*")) + (quit-window) + (should (eq (length (window-list)) 1)) + (should (equal (buffer-name) "*info*")) + (quit-window) + (should (eq (length (frame-list)) 1))) + + ;; 1.2. 'quit-restore-window' doesn't delete the frame + (progn + (should (eq (length (frame-list)) 1)) + (other-frame-prefix) + (info) + (should (eq (length (frame-list)) 2)) + (should (equal (buffer-name) "*info*")) + (view-echo-area-messages) + (should (eq (length (window-list)) 2)) + (should (equal (buffer-name) "*info*")) + (quit-window) + (should (eq (length (window-list)) 1)) + (should (eq (length (frame-list)) 2)) + (should (equal (buffer-name) "*Messages*")) + (quit-window) + (should (eq (length (frame-list)) 2)) + ;; Clean up the frame afterwards + (delete-frame)) + + ;; 2.1. 'quit-restore-window' deletes the tab + (progn + (should (eq (length (tab-bar-tabs)) 1)) + (other-tab-prefix) + (info) + (should (eq (length (tab-bar-tabs)) 2)) + (should (equal (buffer-name) "*info*")) + (view-echo-area-messages) + (other-window 1) + (should (eq (length (window-list)) 2)) + (should (equal (buffer-name) "*Messages*")) + (quit-window) + (should (eq (length (window-list)) 1)) + (should (equal (buffer-name) "*info*")) + (quit-window) + (should (eq (length (tab-bar-tabs)) 1))) + + ;; 2.2. 'quit-restore-window' doesn't delete the tab + (progn + (should (eq (length (tab-bar-tabs)) 1)) + (other-tab-prefix) + (info) + (should (eq (length (tab-bar-tabs)) 2)) + (should (equal (buffer-name) "*info*")) + (view-echo-area-messages) + (should (eq (length (window-list)) 2)) + (should (equal (buffer-name) "*info*")) + (quit-window) + (should (eq (length (window-list)) 1)) + (should (eq (length (tab-bar-tabs)) 2)) ;; FAILS HERE + (should (equal (buffer-name) "*Messages*")) + (quit-window) + (should (eq (length (tab-bar-tabs)) 2)) + ;; Clean up the tab afterwards + (tab-close)) + + ;; Clean up tabs afterwards + (tab-bar-tabs-set nil))) (provide 'tab-bar-tests) ;;; tab-bar-tests.el ends here ```
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 9 Oct 2024 08:46:25 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Oct 09 04:46:25 2024 Received: from localhost ([127.0.0.1]:55587 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sySKv-0001J3-HS for submit <at> debbugs.gnu.org; Wed, 09 Oct 2024 04:46:25 -0400 Received: from mout.gmx.net ([212.227.15.18]:57713) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sySKs-0001Im-Ld for 59862 <at> debbugs.gnu.org; Wed, 09 Oct 2024 04:46:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1728463566; x=1729068366; i=rudalics@HIDDEN; bh=HTwuS9eSTBAZUn20YxzcEeCKpX5GLhNmlUITTK9LJ0M=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=sItRkUtwoMZgb07qE7adGMr/kTFRqOxQU2Sta/0ByO3DAwszMOzu+qRKwxf4Y62o vW7PCblUsxn64HoyQqMHGtu0o7q4oN1KlfZbCYtkZ2AGEh1hpSVOf5JayES3jLUgO EtzqDQrlmcb4QPZTS9YXGxS2Gem9+sFArTuq/h7zPjTtovuIl/EENPcnL7BvAb0zX J21qW4Rr24ubEhL21P/yYxni2t94U4d7TNY+a3NdAadIiAsv5bF7V2H3PUvmXhe9C ZYpzZKLNtt3AJp5UHe0YCJNh/zgrj0BzXUuHMM/ky7WVwWhoDO7yj14m0shHRUU86 2xC5x/KqZmLBDTrFkg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.219]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1M8hV5-1t39Id0skL-0011YJ; Wed, 09 Oct 2024 10:46:06 +0200 Message-ID: <6272a373-1e7c-4df9-b0c2-e535ca3fe49b@HIDDEN> Date: Wed, 9 Oct 2024 10:46:05 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> <86r0b9tqo3.fsf@HIDDEN> <22c18c89-b288-4c2e-83ae-11fd7cb1ec24@HIDDEN> <86ed78w7t4.fsf@HIDDEN> <86msjefqfa.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86msjefqfa.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:nMknrlrbcxuBpy2HdCniBt8a4bL3pIdsvbyYaGm4X4Q5Bbbjs+7 +gKFq+CJasBZo0vt9UrgG3yTOnhTzdtnJZEGmEh20Bl6we3PGfD2aRTBy9kc3iQqeH7pF2v g5PVI7fP5Vtv/8Khgms7w6Z0GoMUXjxjdl81rMvLIzFx5lveUqumSZnZ9YSq+BqA8MpRUm2 iKrUrB9KYb131QXVD2tHQ== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:AVhTe4oJTbc=;Y8ZsyjI8bBlJ1tnbiicISkOQhmZ slnMKZgEOvUwDpqabzo8m4Ze/zqMHeJe9uXPV/T4dn0nRwDvs6Pbz5G9lbsmhBDFvdi60ehbU dZlgaCGnAtLq7/t3yBBrh6rlgwzZGB0TNvhO60XndJ7SZV4wDhAZnJ2GHTXVsMtpOEsZ+2EKM hcHQBZuDrgvE9mIdx3QqQlx8qXaoyJ5F1zEqk041rcs7KIaggBbolk/JnSFePdGxuF2d9Kltl yBQQQ2dxcQSYcbbNhDXhK+NeceY0uu4Mohz7MC7ZW/mEHL2ndpXHKKx3Ix9CPpV0FA0A1Drb2 dmK/8Vkssti/oXgh61nEF4lYJu0lJAJ0UJr0CXLOfM0n/KlpsjqfP452kf3nbvpnN6YtBgpIR toloE0S/pQOoYB3uOEZa5PdBbLEIZLVljspNR+N/F1o0YOsJS13kqe+MR413aVLcc1DzqJfWK djISmVbjdKGaxlAfh5Px7HifnhF070hKKvGR8MbMCYbBmJHnKcyeKLNwjJPB6I46HtEM7Ae6E h9KB5cxWzSmtsNqCERlJzldSAj12JZnbnPArwwgbvhagM3NbC26Uf+2J7rvPRZZcRZMkTaoxc +vpsFsK+ND4fXpJQky7EYkQlCKi6S9OyFmKrMH+CrZZ0I+oLFUFcNBWOTIuDL79j7Z6wPrfre 5Nn2Kms0VKEKHvT//niLxuNFGRNWwbVE9maMzD9j20cvwSrmxYKNRphH6o53ijEIQYD4xCszc z/ZF16U+WXbDs4wIRi3naOWeE2jWk0SNvB9DlouJCdTmvvJSVOV5Jq4vVKIF1SYZ/LlQwka0R uds2fd4TpSRn8IIiTDyJietg== X-Spam-Score: 2.9 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > > (defun tab-bar-window-deletable (window single) > (if (and single (eq (nth 1 (window-parameter window 'quit-restore)) 'tab)) > (progn (tab-bar-close-tab) nil) > t)) > > (add-hook 'window-deletabl [...] Content analysis details: (2.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 RCVD_IN_VALIDITY_SAFE_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. [212.227.15.18 listed in sa-trusted.bondedsender.org] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.219 listed in zen.spamhaus.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.18 listed in list.dnswl.org] -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [212.227.15.18 listed in wl.mailspike.net] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) 0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. [212.227.15.18 listed in bl.score.senderscore.com] X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.9 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > > (defun tab-bar-window-deletable (window single) > (if (and single (eq (nth 1 (window-parameter window 'quit-restore)) 'tab)) > (progn (tab-bar-close-tab) nil) > t)) > > (add-hook 'window-deletabl [...] Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [212.227.15.18 listed in wl.mailspike.net] 0.0 RCVD_IN_VALIDITY_SAFE_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. [212.227.15.18 listed in sa-accredit.habeas.com] 0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. [212.227.15.18 listed in bl.score.senderscore.com] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.18 listed in list.dnswl.org] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.219 listed in zen.spamhaus.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager > > (defun tab-bar-window-deletable (window single) > (if (and single (eq (nth 1 (window-parameter window 'quit-restore)) 'tab)) > (progn (tab-bar-close-tab) nil) > t)) > > (add-hook 'window-deletable-functions 'tab-bar-window-deletable) > > But 'window-deletable-functions' is not called at all, > because 'window-deletable-p' first checks > > (frame-deletable-p (window-frame window)) > > and a single frame with tabs is not deletable. Why "with tabs" and not just "a single frame is not deletable"? > Also instead of 'frame-root-window-p' in 'window-deletable-p' > the tab-bar needs to use another code. I don't understand the problem yet. 'window-deletable-p' calls 'frame-deletable-p' iff WINDOW is the root window of the frame. At this time we can only either delete the frame or show another buffer in WINDOW; tertium non datur. What am I missing? martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 8 Oct 2024 18:18:34 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Oct 08 14:18:34 2024 Received: from localhost ([127.0.0.1]:54376 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1syEn4-00063H-6C for submit <at> debbugs.gnu.org; Tue, 08 Oct 2024 14:18:34 -0400 Received: from relay5-d.mail.gandi.net ([217.70.183.197]:50645) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1syEn1-000632-Tq for 59862 <at> debbugs.gnu.org; Tue, 08 Oct 2024 14:18:33 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id BE9D31C0004; Tue, 8 Oct 2024 18:17:54 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <86ed78w7t4.fsf@HIDDEN> (Juri Linkov's message of "Thu, 01 Aug 2024 19:01:59 +0300") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> <86r0b9tqo3.fsf@HIDDEN> <22c18c89-b288-4c2e-83ae-11fd7cb1ec24@HIDDEN> <86ed78w7t4.fsf@HIDDEN> Date: Tue, 08 Oct 2024 20:53:53 +0300 Message-ID: <86msjefqfa.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) >> Pushed now. Lets hope for the best. Please consider closing Bug#59862. > > Thank you! I'm going to test bug#59862 and bug#71386. I tried to support this case C-x t t ;; other-tab-prefix C-h i ;; info C-h e ;; view-echo-area-messages q ;; quit-window should not close the tab using the new hook 'window-deletable-functions', but I see no way. Could you please help. Here is what I did: diff --git a/lisp/window.el b/lisp/window.el index e08680aa392..5b4f642afc9 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -5340,13 +5346,7 @@ quit-restore-window ;; If the previously selected window is still alive, select it. (window--quit-restore-select-window quit-restore-2)) ((and (not prev-buffer) - (eq (nth 1 quit-restore) 'tab) - (eq (nth 3 quit-restore) buffer)) - (tab-bar-close-tab) - ;; If the previously selected window is still alive, select it. - (window--quit-restore-select-window quit-restore-2)) - ((and (not prev-buffer) - (or (eq (nth 1 quit-restore) 'frame) + (or (memq (nth 1 quit-restore) '(frame tab)) (and (eq (nth 1 quit-restore) 'window) ;; If the window has been created on an existing ;; frame and ended up as the sole window on that So frame and tab will be handled equally. Then also code for tab-bar.el: (defun tab-bar-window-deletable (window single) (if (and single (eq (nth 1 (window-parameter window 'quit-restore)) 'tab)) (progn (tab-bar-close-tab) nil) t)) (add-hook 'window-deletable-functions 'tab-bar-window-deletable) But 'window-deletable-functions' is not called at all, because 'window-deletable-p' first checks (frame-deletable-p (window-frame window)) and a single frame with tabs is not deletable. Also instead of 'frame-root-window-p' in 'window-deletable-p' the tab-bar needs to use another code.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 1 Aug 2024 16:03:20 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Aug 01 12:03:19 2024 Received: from localhost ([127.0.0.1]:51851 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sZYGt-0000YX-Lq for submit <at> debbugs.gnu.org; Thu, 01 Aug 2024 12:03:19 -0400 Received: from relay3-d.mail.gandi.net ([217.70.183.195]:36901) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sZYGq-0000Y9-4R for 59862 <at> debbugs.gnu.org; Thu, 01 Aug 2024 12:03:18 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id D9C896000A; Thu, 1 Aug 2024 16:02:49 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <22c18c89-b288-4c2e-83ae-11fd7cb1ec24@HIDDEN> (martin rudalics's message of "Thu, 1 Aug 2024 09:49:52 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> <86r0b9tqo3.fsf@HIDDEN> <22c18c89-b288-4c2e-83ae-11fd7cb1ec24@HIDDEN> Date: Thu, 01 Aug 2024 19:01:59 +0300 Message-ID: <86ed78w7t4.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) >> I've tested your previous changes for a long time, >> and everything works nicely. I hope your new patch is even >> better. However, since it grew to an unmanageable size, >> I will test it only after you will push it. > > Pushed now. Lets hope for the best. Please consider closing Bug#59862. Thank you! I'm going to test bug#59862 and bug#71386.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 1 Aug 2024 07:50:32 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Aug 01 03:50:32 2024 Received: from localhost ([127.0.0.1]:50785 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sZQa0-0003e0-6h for submit <at> debbugs.gnu.org; Thu, 01 Aug 2024 03:50:32 -0400 Received: from mout.gmx.net ([212.227.17.22]:50381) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sZQZx-0003dn-Mm for 59862 <at> debbugs.gnu.org; Thu, 01 Aug 2024 03:50:30 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1722498607; x=1723103407; i=rudalics@HIDDEN; bh=lVH1KT5oUksepXZoGHIFQ1xmcgrTNtlDGUDJG1xghjs=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=ndEgYaACTsIYCtrAgRAgdJIwXABtNZ4bIZ67LYEOQVAYb3HdJ9U1Q3uRZUWXqZQm 3ymBuGt3fmqUwQtlV6ux4+lOoMsSGBJkkoYHW74lWPF1mVlsB+s4hXUfJ4vSAiWwe Tokaa4rBHvtOyvPlVUMsbJPCC8MgmX8myml9qxh7OMN+MdzLriC4u/Z4kn/GvepLk HMTg6gTAIo6lf7BDVY7Kx+qw6oemnFpR9Wmbq4zGm+p+SDOHaxQ7TEpTMuWcpALYd lJ3odWtL90jAqznyZWZVEtKRdXDZbfTkmkRZMi5z9ntaXi+zXUzlGp6AdVJwcq0+B 5lGHE5Me9dROoIYuvg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.37]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MRmjq-1sfV7U3e3e-00K5yQ; Thu, 01 Aug 2024 09:50:07 +0200 Message-ID: <c7b4367b-787e-4343-bb35-6304d642579f@HIDDEN> Date: Thu, 1 Aug 2024 09:50:04 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> <86r0b9tqo3.fsf@HIDDEN> <86plqswxyl.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86plqswxyl.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:KxfC1qKhGwhu+stf4k2govh5q0H36Q6sBHDoe3qGifTzRJnaYNy Swgo1D2X20cTmsTtFt4+d0NEnJ9eat7TBufLJfP3AUr+Vfw85wMbcmbJNK3oZg6VGf0W+UH VZGu/FkUODTqobE5KaVyfH26CF5TVQZCXt6NeSSjntkG4rWtNP+kpHQjCPs/NB73WxDQGrX Y7E2V9yj02gIRkC+E8NGA== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:LtmxZpzSR/8=;wRUPmenIBpU6kZoBI1OPTgyPNNF a5grvX1aRNW6WyEDC6SeDE1ltHzfuedv5ZevarPDqGZYYG1Xr8ONTzirzfqddbZdbehNTtrBe n9I+qM1orYuVHFNE2Rv3NLnJyv/zLMvps5vrRpwmmqxw/JnaCA4+IhEhjOBiA5wPlkTMgJo9H RNier7D1A+7p4ima803u73QAh42MvSUsQoBSpOIyufG0l+cjxaRtLQmc8JtNxxMYuQB5Xwx1S JnvavY4kYkI2Mu+HEnWWXYW7b8Tbfp6k3CNJmnxNe3+1YyFJeVSn8QPjz+1Q+Q2SNBibTdJia fkl0ssGpnmRS2zVZ/vD1vLPsG2xuAWMCdlIH8xR3ezydZHF+Ru/3MGyXnm8ho6nJVig+w+53o LZiQnSON9t1yG2x07N5y5Gs9o7JYI6WJFrwcKh21iJf1KTEC6D5qK92zc2XHA9vKmeccq17HN 0AZWEUK2d39BPaa0ZiMsiCj/CMAk95KBCAqPpfIr3S/2BQrUiUw0rio5YG/6B19QQFg1qugYo spwDPuVQqAAGCJfeuA4xsuzl9ppxl+GuFcLdSFH+Tji8ZIZQCxIxQ2T5HsLWfykc7k3sSoU9Y R8CWGG9HDqz2TkDLlS0jZcv4vqIfgr8U8OF/di81ndobx7sus8jM4HhC2JXUYc2ut+T81PKdt CbIby/r+LOl0evv/rAkDWET5dLMmEaPUlbIeUsb4ixZo7sebQHsoPnD7mzyZ9dkbQQ/s+bWH2 dQkYuLjfCEpv0HK+YSIESXfLuDouhwUC9Bo/cfmlQJ97OsHYJK5xgxe7X6ngXj3UaxoEoIROz R1wcdFWzJ793/b+zQRYs//8Q== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > Or maybe will use it for tabs, I don't know, need to try, > but not sure if you expect such try before you push or after. After, by now. martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 1 Aug 2024 07:50:23 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Aug 01 03:50:23 2024 Received: from localhost ([127.0.0.1]:50782 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sZQZq-0003dd-R7 for submit <at> debbugs.gnu.org; Thu, 01 Aug 2024 03:50:23 -0400 Received: from mout.gmx.net ([212.227.17.22]:45891) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sZQZp-0003dP-17 for 59862 <at> debbugs.gnu.org; Thu, 01 Aug 2024 03:50:22 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1722498595; x=1723103395; i=rudalics@HIDDEN; bh=k4/kqCrOY9okVKYIXJbswHPSGFvrT3V+qnfpEg7ZE64=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=LZwGNPCq9zIQV8+d4icVcQ822M2vNSsYW0gJcxdgU3M7mkG49oyCI1lBaTjS5NA7 CD54yCme3FF0HfrnJMyw8tPpPHkQNRyjbCN4l0tZAaQsiz27WFl9x46BwiIv0FM30 P4K6F7QTGhbKpluWqat3OBTVXUiT+L9dNRbVEaCFuBVV/EQxGRh7svqhNxNEyzYbj GGmdj7JGeQDTb0X96LKc+27XEkrAHLt73KH6CamodfNSgrMmZG99iSA8rC9SJXWoX zyfI4j4y1/WVBOo1eDcaSLbyE7j5yT7eHyr9XeVS3A3ES8LxGBLCvUNZtRqSsq/N1 JDUncfHPvZSnaRrpEA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.37]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MSc1B-1sfmN00OKn-00PhWh; Thu, 01 Aug 2024 09:49:55 +0200 Message-ID: <22c18c89-b288-4c2e-83ae-11fd7cb1ec24@HIDDEN> Date: Thu, 1 Aug 2024 09:49:52 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> <86r0b9tqo3.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86r0b9tqo3.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:EVdfc8C0iPQDKs6bZrg6EdxDnBdwWcP51+mhkKM22CDUp88LAFN jBRuQlnHXHBXIh/ZDaEESvPl9uHECwb+PNfXWVQCpymqkqxy9ea+YGpAOQFAeGaZK9xWIik ofhCqhuT3+N09kMfTeGWY59bRxq/fDETtdlvbAkLsPuRfxgrK1T4Zm+CAh3eHJeJCC+xKvH P73SUlGNrK85j5OTOQ45A== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:cUkyBR8jvy4=;P1iWYjH+MuS0vTvn35aKdXL6zUf NLMaAOVt2mUU3WaOppn6yYF9ylLqMFuntWhGVn02xpi1PGSLgF9Ri7V5ppb7tcD0X5cpeL01S oQCybi7baCSfM3vxR7lQXW/MPGE1ipdB1yBdItdcUdTYTj8kjQ/matJnZ/aJd/xF0yZfM+ybX kfjC/lPJW8hHUVVhBjMriymZROAcRuBlXP9HAVWVqefuQQ2UxULHEEM6aFHQfDy1dN3OepU3j tJ7EhblSanIs09aPAoFT+cnYO4pjbS991+k7xtTjb+17sPZFJgsEj9JEZg20NAVO6jSVNdEVO sRu/w1NXk2hgSnX1Qg5FtVHpxIfjOJPMG7GlIsaCohMREIeM0OGMwSb1AbzOzQijyaMELi87j oQDGc9gv7epqpJoEX9GWM3HEP53lU1O7MsaOBSKqayOVIrdgvtiubGvC2n6Z62tBGFJMOv54j QSItrxsYSnfSouRnGZSIvFlplj6AYt7nPiK2dUmp2vGlsdkBGdx8tq34N1eWj7pmcmmS5o3CP 8Q0tE6mb8WmQdmF5Ax3g0keJuAnSHn+PSkBTSHcU83nVfZVQGiJWR4xXi90BVfAWNxLRWwdgB qqFTQzwkIZl77f246e1kammCtwtxH9wsK84837RiRh7En/xDPtgBcPvvIxc/fx8znY04xA4M9 OxASSYR1/MWwTijGF7jY4RPpGd/EDuuwU4Qh3lRvGLz5U7vKlspoenVsgrs2gHVG1mhTN82pO TOebG8b0mobY/PZv7LN1Qegk1AtNJrA3jw8Uxkh90GwZgVC/ozLPcQiB1JozP2YpE0q9kTYNh YTKTNp4S48lLkrQbQNFHOz6w== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > I've tested your previous changes for a long time, > and everything works nicely. I hope your new patch is even > better. However, since it grew to an unmanageable size, > I will test it only after you will push it. Pushed now. Lets hope for the best. Please consider closing Bug#59862. It has become unmanageable for me as well. >> +*** New hook 'window-deletable-functions'. >> +This abnormal hook gives its client a way to save a window from getting >> +deleted implicitly by functions like 'kill-buffer', 'bury-buffer' and >> +'quit-restore-window', > > Maybe this hook is needed for bug#71386, but I have no plans > to use it for tab handling. Actually, this is the opposite of ... >> +*** New option 'quit-restore-window-no-switch'. >> +With this option set, 'quit-restore-window' will delete its window more >> +aggressively rather than switching to some other buffer in it. > > This option looks useful for some cases. ... that. So people may decide which of them suits their needs better. martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 1 Aug 2024 06:43:06 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Aug 01 02:43:06 2024 Received: from localhost ([127.0.0.1]:50710 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sZPWk-0001mG-E6 for submit <at> debbugs.gnu.org; Thu, 01 Aug 2024 02:43:06 -0400 Received: from relay3-d.mail.gandi.net ([217.70.183.195]:42277) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sZPWi-0001lk-DO for 59862 <at> debbugs.gnu.org; Thu, 01 Aug 2024 02:43:05 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id E253260002; Thu, 1 Aug 2024 06:42:40 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <86r0b9tqo3.fsf@HIDDEN> (Juri Linkov's message of "Wed, 31 Jul 2024 20:30:36 +0300") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> <86r0b9tqo3.fsf@HIDDEN> Date: Thu, 01 Aug 2024 09:37:06 +0300 Message-ID: <86plqswxyl.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) >> After fixing a few other inconsistencies find my final version of the >> patch here. The ChangeLog is below. If you see no further problems, >> I'll install it and you can add your changes on top of it. > > I've tested your previous changes for a long time, > and everything works nicely. I hope your new patch is even > better. However, since it grew to an unmanageable size, > I will test it only after you will push it. > >> +*** New hook 'window-deletable-functions'. >> +This abnormal hook gives its client a way to save a window from getting >> +deleted implicitly by functions like 'kill-buffer', 'bury-buffer' and >> +'quit-restore-window', > > Maybe this hook is needed for bug#71386, but I have no plans > to use it for tab handling. Or maybe will use it for tabs, I don't know, need to try, but not sure if you expect such try before you push or after.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 31 Jul 2024 17:32:56 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jul 31 13:32:56 2024 Received: from localhost ([127.0.0.1]:50239 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sZDC3-0006nC-Nb for submit <at> debbugs.gnu.org; Wed, 31 Jul 2024 13:32:56 -0400 Received: from relay8-d.mail.gandi.net ([217.70.183.201]:43963) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sZDC1-0006mq-7N for 59862 <at> debbugs.gnu.org; Wed, 31 Jul 2024 13:32:54 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id A304E1BF205; Wed, 31 Jul 2024 17:32:30 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> (martin rudalics's message of "Tue, 30 Jul 2024 10:20:37 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> Date: Wed, 31 Jul 2024 20:30:36 +0300 Message-ID: <86r0b9tqo3.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > After fixing a few other inconsistencies find my final version of the > patch here. The ChangeLog is below. If you see no further problems, > I'll install it and you can add your changes on top of it. I've tested your previous changes for a long time, and everything works nicely. I hope your new patch is even better. However, since it grew to an unmanageable size, I will test it only after you will push it. > +*** New hook 'window-deletable-functions'. > +This abnormal hook gives its client a way to save a window from getting > +deleted implicitly by functions like 'kill-buffer', 'bury-buffer' and > +'quit-restore-window', Maybe this hook is needed for bug#71386, but I have no plans to use it for tab handling. > +*** New option 'quit-restore-window-no-switch'. > +With this option set, 'quit-restore-window' will delete its window more > +aggressively rather than switching to some other buffer in it. This option looks useful for some cases.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 30 Jul 2024 08:21:12 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jul 30 04:21:12 2024 Received: from localhost ([127.0.0.1]:46919 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sYi6X-0006Fe-8N for submit <at> debbugs.gnu.org; Tue, 30 Jul 2024 04:21:12 -0400 Received: from mout.gmx.net ([212.227.17.22]:49359) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sYi6S-0006Ew-2g for 59862 <at> debbugs.gnu.org; Tue, 30 Jul 2024 04:21:07 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1722327638; x=1722932438; i=rudalics@HIDDEN; bh=EJzOaoPjLtw25aaZIfV0V+4JsC43KppegYOpA8roAWU=; h=X-UI-Sender-Class:Content-Type:Message-ID:Date:MIME-Version: Subject:To:Cc:References:From:In-Reply-To:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=ohyzahp4q20Qdm2/5fSLUAyLLVsiijU8ADSyLM/adMxoxsXU+xRAepkPlXH0BjV0 x4PhEJJLgbC/wqkUkPHI5IC8P0CRKeUhoBkDUcz9JUHzceyk6gCuBqVVgbYsl0lmO RsaDXxlgEN2UT/bu6bxjAVveJHxC0IcMf/C3gVShXRmJmcPW9+tQj6BYEg2AelSsh gfENaQJh4oA38jygSG1SUM7uZrBrsbNeVHex9wu/BOGrBVwOh/Cvfly5dwwNVaL5B Rb5pm16Xq1B/BR+n/2UJF80IXJ1heTnehLHjkhY5ed/7EJGKYyCu6iLFV/a6ZzRCl SD9YRXZkyu6oau7Q+Q== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.61]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MQMuX-1sv4Qp2Nnd-00VOiZ; Tue, 30 Jul 2024 10:20:38 +0200 Content-Type: multipart/mixed; boundary="------------RMD6CDRucDauQxOc8ngRmTVZ" Message-ID: <38aedd8d-8966-44eb-afc0-79b4db412483@HIDDEN> Date: Tue, 30 Jul 2024 10:20:37 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86h6csct0w.fsf@HIDDEN> X-Provags-ID: V03:K1:EF7UOoVpRzPKL03RYfTmOYJr1NHRkbKOUZIgbGQ6KQZl1KcfpGT tb+8a8skSi+mJYFwBM9aY8oMWvOiO3ZT+xsAo+R1Um3zEwG+SOZfEfW98c5GMre1mVufDMb LIDIMy0vuE3Xpz+RULrOgw9Yb34aDNQkrWqkFUsSy8ylsZhmyOtnPYmCqU6kUc7RmzwD2I+ VDY4TFvJqAORHD19cAWlA== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:D7RdHCJyu8M=;e8fsoZ/MiBoR0PlKsmhp8ICtj/6 XYKDBuZMObVUfXdYNU+7vRVFd01duqHGd9GUr4s1oe+qXTf5Y5Br3EF1cgBx40OrwsDdbxkU7 ZzbLFLiP0qD6vZ4KM08vFEd0tmbqWqz+a63rjxeKPEFauvIE01EoSE5sKJMrPU88D5xuoPWTk xQyL3PUdtX6BaYYIB/o1mvh9eLL5NoOzfbY8k+IgY5pSkCII9XXsohuqFyAQ9uzHrVuao3yy6 IbhlXkh1H3odjyDG7gRdSYSn+qgGIfMciKDRf3280gUpEpN3pFc7hrLT79+OVjChOR86+S9Yh xH9ZMYzvRA/LhRxjr28YrhcGUGLcGGNF5ofZo/ncGDIgYpA85YmjJkxCTqozR4Z33Cgl+lx7G xMsNGJgjXqcJzqDC61Du93Mbgl+Gl72XkD60FkATwpqpR3c+IFxKZM/CbJFNdqM5kyYTv0HCp GS3S+YYEt/hdSRJivAA9hkG+zL7jUC7QaT2eXI83A5q+ze+pGWKZdjy9UaMc08TdpqwOI8hDh uNMipCrXa19glxVUNrJixammKMn7F7t5VzyXp8P3HEd2KEzQXjMuN0vO31ptdr8HUcsoBtaAg i+CrXaUhLiJaL+08VXghJLrellcjhGdPygmv3L1XjXYFnryGLAexFLSJ9f/SrSHbjRAbQS/28 IRIobgAtG4+VDv85sMp12ErMlO0q4kb0Ju4FC/K3BPDX1RjY7b+btL13qs1CzGM2gN50eVMtY aczdyNjXQ7S3CB7SRjXrEHJOuP4olXhH7vCBGeNeVIxpfIvmzlpGBDtzzuHA/N+YAUasptVcf 5zbQdU68nUJJlIt6NHKPp9eA== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) This is a multi-part message in MIME format. --------------RMD6CDRucDauQxOc8ngRmTVZ Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit > OTOH, I tried to add the tab case handling to the same places > where the frame case is handled, and everything works nicely > with this patch applied over your previous patches: After fixing a few other inconsistencies find my final version of the patch here. The ChangeLog is below. If you see no further problems, I'll install it and you can add your changes on top of it. martin Improve window/buffer handling code The purpose of these changes is to improve the code handling the display of buffers in windows, switching to previous and next buffers in windows and restoring a previous state after quitting or killing buffers. In particular it does: - Add a new window parameter 'quit-restore-prev' so a window can keep its initial 'quit-restore' parameter and undoing a sequence of quit window operations becomes more reliable (Bug#59862). - Optionally have 'kill-buffer' call 'quit-restore-window' for all windows showing the argument buffer (Bug#59862). - Add a new hook so it's possible to avoid that a window gets deleted implicitly by functions like 'kill-buffer' (Bug#71386). - Add a new option to make 'quit-restore-window' delete windows more aggressively (Bug#59862). - Immediately remove killed buffers from all windows' previous and next buffers. For windows that are already dead, use a weak hash table to be used by 'kill-buffer'. This avoids any special handling of such windows by the garbage collector. - Immediately remove 'quit-restore' and 'quit-restore-prev' window parameters that reference killed buffers. These parameters have no more use once their buffers got killed. - Make sure that internal windows do not have any previous and next buffers. This fixes a silly memory leak. - Make sure that after set_window_buffer and some wset_buffer calls the buffer now shown in the window does not appear in the lists of that window's previous and next buffers. The old behavior could make functions investigating these lists erroneously believe that there still existed some other buffer to switch to. * src/alloc.c (mark_discard_killed_buffers): Remove function. (mark_window): No more filter previous and next buffer lists. * src/window.h (struct window): Move up prev_buffers and next-buffers in structure; they are now treated by the collector as usual. * src/window.c (window_discard_buffer_from_alist) (window_discard_buffer_from_list) (window_discard_buffer_from_window) (window_discard_buffer_from_dead_windows) (Fwindow_discard_buffer): New functions. (set_window_buffer): Discard BUFFER from WINDOW's previous and next buffers. (make_parent_window): Make sure internal windows have no previous and next buffers. (make_window): Don't initialize window's previous and next buffers, they are handled by allocate_window now. (Fdelete_window_internal): Add WINDOW to window_dead_windows_table. (Fset_window_configuration): Remove resurrected window from window_dead_windows_table. Make sure buffers set by wset_buffer calls are not recorded in window's previous and next buffers. (delete_all_child_windows): Add deleted windows to window_dead_windows_table. (window_dead_windows_table): New weak hash table to record dead windows that are stored in saved window configurations. * src/buffer.c (Fkill_buffer): Call new function 'window_discard_buffer_from_dead_windows'. * lisp/window.el (window-deletable-functions): New hook. (window-deletable-p): Update doc-string. Run 'window-deletable-functions' (Bug#71386). (unrecord-window-buffer): New argument ALL. Move body to 'window-discard-buffer-from-window' so that if ALL is non-nil, WINDOW's 'quit-restore' and 'quit-restore-prev' parameters get removed too. (switch-to-prev-buffer): Don't care about killed buffers here; 'replace-buffer-in-windows' should have done that already. Use 'unrecord-window-buffer'. (switch-to-next-buffer): Don't care about killed buffers here; 'replace-buffer-in-windows' should do that now. (kill-buffer-quit-windows): New option. (delete-windows-on): Update doc-string. Handle new option 'kill-buffer-quit-windows'. Update 'unrecord-window-buffer' calls. (replace-buffer-in-windows): Update doc-string. Handle new option 'kill-buffer-quit-windows' (Bug#59862). Update call to 'unrecord-window-buffer'. (quit-restore-window-no-switch): New option. (quit-restore-window): Update doc-string. Handle additional values of BURY-OR-KILL so to not kill a buffer about to be killed by the caller. Handle 'quit-restore-prev' parameter (Bug#59862). Handle new option 'quit-restore-window-no-switch' (Bug#59862). (quit-windows-on): Update doc-string. Call 'quit-window-hook' and call 'quit-restore-window' directly so that the buffer does not get buried or killed by the latter. Update 'unrecord-window-buffer' call. (display-buffer-record-window): Update doc-string. Handle new `quit-restore-prev' parameter (Bug#59862). (switch-to-buffer): Call 'display-buffer-record-window' so a latter 'quit-restore-window' can use its parameters. * doc/lispref/windows.texi (Deleting Windows): Describe implicit deletion of windows and new hook 'window-deletable-functions'. (Buffers and Windows): Update description of 'replace-buffer-in-windows'. Describe new option 'kill-buffer-quit-windows'. (Quitting Windows): Describe 'quit-restore-prev' parameter and new option 'quit-restore-window-no-switch'. Update description of 'quit-restore-window'. (Window Parameters): Mention 'quit-restore-prev' parameter. * etc/NEWS: Add entries for 'window-deletable-functions', 'kill-buffer-quit-windows', 'quit-restore-window-no-switch'. mention new parameter 'quit-restore-prev' and new argument values for 'quit-restore-window'. --------------RMD6CDRucDauQxOc8ngRmTVZ Content-Type: text/x-patch; charset=UTF-8; name="window-buffer-changes.diff" Content-Disposition: attachment; filename="window-buffer-changes.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2RvYy9saXNwcmVmL3dpbmRvd3MudGV4aSBiL2RvYy9saXNwcmVmL3dp bmRvd3MudGV4aQppbmRleCBmNTk2M2Q5ODRlOS4uNjU2YTQ0ZGZjYmYgMTAwNjQ0Ci0tLSBh L2RvYy9saXNwcmVmL3dpbmRvd3MudGV4aQorKysgYi9kb2MvbGlzcHJlZi93aW5kb3dzLnRl eGkKQEAgLTE2NDcsNiArMTY0Nyw0NSBAQCBEZWxldGluZyBXaW5kb3dzCiBhcmUgdGhlIG9w cG9zaXRlIG9mIHdoYXQgdGhleSBhcmUgaW4gdGhvc2Ugb3RoZXIgZnVuY3Rpb25zLgogQGVu ZCBkZWZmbgogCitAY2luZGV4IGltcGxpY2l0IGRlbGV0aW9uIG9mIHdpbmRvd3MKK0BjaW5k ZXggZGVsZXRpbmcgd2luZG93cyBpbXBsaWNpdGx5CisKKyAgVGhlIGFib3ZlIGNvbW1hbmRz IGRlbGV0ZSB3aW5kb3dzIGV4cGxpY2l0bHkuICBIb3dldmVyLCBFbWFjcyBtYXkgYWxzbwor ZGVsZXRlIGEgd2luZG93IGltcGxpY2l0bHkgd2hlbiBpdCB0aGlua3MgdGhhdCBpdCdzIG1v cmUgaW50dWl0aXZlIHRvCitlbGltaW5hdGUgaXQgcmF0aGVyIHRoYW4gc2hvd2luZyBzb21l IHVucmVsYXRlZCBidWZmZXIgaW4gaXQuICBGdW5jdGlvbnMKK3RoYXQgbWF5IGRlbGV0ZSB3 aW5kb3dzIGltcGxpY2l0bHkgYXJlIEBjb2Rle2tpbGwtYnVmZmVyfQorKEBweHJlZntLaWxs aW5nIEJ1ZmZlcnN9KSwgQGNvZGV7cXVpdC1yZXN0b3JlLXdpbmRvd30gKEBweHJlZntRdWl0 dGluZworV2luZG93c30pIGFuZCBAY29kZXtidXJ5LWJ1ZmZlcn0gKEBweHJlZntCdWZmZXIg TGlzdH0pLiAgU29tZSBvZiB0aGVzZQorZGVsZXRlIGEgd2luZG93IGlmIGFuZCBvbmx5IGlm IHRoYXQgd2luZG93IGlzIGRlZGljYXRlZCB0byBpdHMgYnVmZmVyCisoQHB4cmVme0RlZGlj YXRlZCBXaW5kb3dzfSkuICBPdGhlcnMgZGVsZXRlIGEgd2luZG93IHdoZW4gdGhhdCB3aW5k b3cKK2hhcyBiZWVuIGNyZWF0ZWQgYnkgQGNvZGV7ZGlzcGxheS1idWZmZXJ9IChAcHhyZWZ7 RGlzcGxheWluZyBCdWZmZXJzfSkuCitTb21lIHdpbGwgYWxzbyB0cnkgdG8gZGVsZXRlIGEg d2luZG93J3MgZnJhbWUgdG9nZXRoZXIgd2l0aCB0aGUgd2luZG93LAorcHJvdmlkZWQgdGhl cmUgYXJlIG90aGVyIGZyYW1lcyBvbiB0aGUgc2FtZSB0ZXJtaW5hbCBhbmQgdGhlIGZyYW1l IGRvZXMKK25vdCBob3N0IHRoZSBhY3RpdmUgbWluaWJ1ZmZlciB3aW5kb3cuCisKKyAgVGhl IGhvb2sgZGVzY3JpYmVkIG5leHQgY2FuIGJlIHVzZWQgdG8gYXZvaWQgdGhhdCBhIHdpbmRv dyBnZXRzCitkZWxldGVkIGJ5IHRoZXNlIGZ1bmN0aW9ucy4KKworQGRlZm9wdCB3aW5kb3ct ZGVsZXRhYmxlLWZ1bmN0aW9ucworVGhpcyBpcyBhbiBhYm5vcm1hbCBob29rIHRoYXQgY2Fu IGJlIHVzZWQgdG8gYXZvaWQgdGhhdCBhIHdpbmRvdyBnZXRzCitkZWxldGVkIGltcGxpY2l0 bHkuICBUaGUgdmFsdWUgc2hvdWxkIGJlIGEgbGlzdCBvZiBmdW5jdGlvbnMgdGhhdCB0YWtl Cit0d28gYXJndW1lbnRzLiAgVGhlIGZpcnN0IGFyZ3VtZW50IGlzIHRoZSB3aW5kb3cgYWJv dXQgdG8gYmUgZGVsZXRlZC4KK1RoZSBzZWNvbmQgYXJndW1lbnQsIGlmIG5vbi1AY29kZXtu aWx9LCBtZWFucyB0aGF0IHRoZSB3aW5kb3cgaXMgdGhlCitvbmx5IHdpbmRvdyBvbiBpdHMg ZnJhbWUgYW5kIHdvdWxkIGJlIGRlbGV0ZWQgdG9nZXRoZXIgd2l0aCBpdHMgZnJhbWUuCitU aGUgd2luZG93J3MgYnVmZmVyIGlzIGN1cnJlbnQgd2hlbiBydW5uaW5nIHRoaXMgaG9vay4K KworSWYgYW55IG9mIHRoZXNlIGZ1bmN0aW9ucyByZXR1cm5zIEBjb2Rle25pbH0sIHRoZSB3 aW5kb3cgd2lsbCBub3QgYmUKK2RlbGV0ZWQgYW5kIGFub3RoZXIgYnVmZmVyIHdpbGwgYmUg c2hvd24gaW4gaXQuICBUaGlzIGhvb2sgaXMgcnVuCisoaW5kaXJlY3RseSkgYnkgdGhlIGZ1 bmN0aW9ucyBAY29kZXtxdWl0LXJlc3RvcmUtd2luZG93fSwKK0Bjb2Rle2tpbGwtYnVmZmVy fSBhbmQgQGNvZGV7YnVyeS1idWZmZXJ9LiAgSXQgaXMgbm90IHJ1biBieSBmdW5jdGlvbnMK K3RoYXQgZGVsZXRlIHdpbmRvd3MgZXhwbGljaXRseSBsaWtlIEBjb2Rle2RlbGV0ZS13aW5k b3d9LAorQGNvZGV7ZGVsZXRlLW90aGVyLXdpbmRvd3N9IG9yIEBjb2Rle2RlbGV0ZS13aW5k b3dzLW9ufS4KKworVGhlIHB1cnBvc2Ugb2YgdGhpcyBob29rIGlzIHRvIGdpdmUgaXRzIGNs aWVudHMgYSBjaGFuY2UgdG8gc2F2ZSBhCit3aW5kb3cgb3IgaXRzIGZyYW1lIGZyb20gZGVs ZXRpb24gYmVjYXVzZSB0aGV5IG1pZ2h0IHN0aWxsIHdhbnQgdG8gdXNlCit0aGF0IHdpbmRv dyBvciBmcmFtZSBmb3IgdGhlaXIgb3duIHB1cnBvc2VzLgorQGVuZCBkZWZvcHQKKwogCiBA bm9kZSBSZWNvbWJpbmluZyBXaW5kb3dzCiBAc2VjdGlvbiBSZWNvbWJpbmluZyBXaW5kb3dz CkBAIC0yMjk3LDE2ICsyMzM2LDQxIEBAIEJ1ZmZlcnMgYW5kIFdpbmRvd3MKIHRoZSBuYW1l IG9mIGFuIGV4aXN0aW5nIGJ1ZmZlcjsgaWYgb21pdHRlZCBvciBAY29kZXtuaWx9LCBpdCBk ZWZhdWx0cyB0bwogdGhlIGN1cnJlbnQgYnVmZmVyLgogCi1UaGUgcmVwbGFjZW1lbnQgYnVm ZmVyIGluIGVhY2ggd2luZG93IGlzIGNob3NlbiB2aWEKK1RoZSByZXBsYWNlbWVudCBidWZm ZXIgaW4gZWFjaCB3aW5kb3cgaXMgdXN1YWxseSBjaG9zZW4gdmlhCiBAY29kZXtzd2l0Y2gt dG8tcHJldi1idWZmZXJ9IChAcHhyZWZ7V2luZG93IEhpc3Rvcnl9KS4gIFdpdGggdGhlCiBl eGNlcHRpb24gb2Ygc2lkZSB3aW5kb3dzIChAcHhyZWZ7U2lkZSBXaW5kb3dzfSksIGFueSBk ZWRpY2F0ZWQgd2luZG93CiBkaXNwbGF5aW5nIEB2YXJ7YnVmZmVyLW9yLW5hbWV9IGlzIGRl bGV0ZWQgaWYgcG9zc2libGUgKEBweHJlZntEZWRpY2F0ZWQKIFdpbmRvd3N9KS4gIElmIHN1 Y2ggYSB3aW5kb3cgaXMgdGhlIG9ubHkgd2luZG93IG9uIGl0cyBmcmFtZSBhbmQgdGhlcmUK LWFyZSBvdGhlciBmcmFtZXMgb24gdGhlIHNhbWUgdGVybWluYWwsIHRoZSBmcmFtZSBpcyBk ZWxldGVkIGFzIHdlbGwuCi1JZiB0aGUgZGVkaWNhdGVkIHdpbmRvdyBpcyB0aGUgb25seSB3 aW5kb3cgb24gdGhlIG9ubHkgZnJhbWUgb24gaXRzCithcmUgb3RoZXIgZnJhbWVzIG9uIHRo ZSBzYW1lIHRlcm1pbmFsLCB0aGUgZnJhbWUgaXMgZGVsZXRlZCBhcyB3ZWxsLiAgSWYKK3Ro ZSBkZWRpY2F0ZWQgd2luZG93IGlzIHRoZSBvbmx5IHdpbmRvdyBvbiB0aGUgb25seSBmcmFt ZSBvbiBpdHMKIHRlcm1pbmFsLCB0aGUgYnVmZmVyIGlzIHJlcGxhY2VkIGFueXdheS4KKwor VGhlIG1haW4gcHVycG9zZSBvZiB0aGlzIGZ1bmN0aW9uIGlzIHRvIGRlY2lkZSB3aGF0IHRv IGRvIHdpdGggd2luZG93cword2hvc2UgYnVmZmVycyBhcmUgYWJvdXQgdG8gYmUga2lsbGVk IGJ5IEBjb2Rle2tpbGwtYnVmZmVyfQorKEBweHJlZntLaWxsaW5nIEJ1ZmZlcnN9KS4gIEl0 IHdpbGwsIGhvd2V2ZXIsIGFsc28gcmVtb3ZlIHRoZSBidWZmZXIKK3NwZWNpZmllZCBieSBA dmFye2J1ZmZlci1vci1uYW1lfSBmcm9tIHRoZSBsaXN0cyBvZiBwcmV2aW91cyBhbmQgbmV4 dAorYnVmZmVycyAoQHB4cmVme1dpbmRvdyBIaXN0b3J5fSkgb2YgYWxsIHdpbmRvd3MgKGlu Y2x1ZGluZyBkZWFkIHdpbmRvd3MKK3RoYXQgYXJlIG9ubHkgcmVmZXJlbmNlZCBieSB3aW5k b3cgY29uZmlndXJhdGlvbnMpIGFuZCByZW1vdmUgYW55CitAY29kZXtxdWl0LXJlc3RvcmV9 IG9yIEBjb2Rle3F1aXQtcmVzdG9yZS1wcmV2fSBwYXJhbWV0ZXJzCisoQHB4cmVme1dpbmRv dyBQYXJhbWV0ZXJzfSkgcmVmZXJlbmNpbmcgdGhhdCBidWZmZXIuCiBAZW5kIGRlZmZuCiAK K0J5IGRlZmF1bHQsIEBjb2Rle3JlcGxhY2UtYnVmZmVyLWluLXdpbmRvd3N9IGRlbGV0ZXMg b25seSB3aW5kb3dzCitkZWRpY2F0ZWQgdG8gdGhlaXIgYnVmZmVycyBhbmQgaWdub3JlcyBh bnkgQGNvZGV7cXVpdC1yZXN0b3JlfSBvcgorQGNvZGV7cXVpdC1yZXN0b3JlLXByZXZ9IHBh cmFtZXRlcnMgb2YgdGhlIHdpbmRvd3MgaXQgd29ya3Mgb24uICBUaGUKK2ZvbGxvd2luZyBv cHRpb24gaXMgdXNlZnVsIGZvciBjaXJjdW12ZW50aW5nIHRoZXNlIHJlc3RyaWN0aW9ucy4K KworQGRlZm9wdCBraWxsLWJ1ZmZlci1xdWl0LXdpbmRvd3MKK0lmIHRoaXMgb3B0aW9uIGlz IEBjb2Rle25pbH0sIEBjb2Rle2tpbGwtYnVmZmVyfSAoYW5kIGluIGNvbnNlcXVlbmNlCitA Y29kZXtyZXBsYWNlLWJ1ZmZlci1pbi13aW5kb3dzfSkgbWF5IG9ubHkgZGVsZXRlIHdpbmRv d3MgdGhhdCBhcmUKK2RlZGljYXRlZCB0byB0aGUgYnVmZmVyIGFib3V0IHRvIGJlIGtpbGxl ZC4gIElmIHRoaXMgaXMgbm9uLUBjb2Rle25pbH0sCitAY29kZXtyZXBsYWNlLWJ1ZmZlci1p bi13aW5kb3dzfSBoYXMgQGNvZGV7cXVpdC1yZXN0b3JlLXdpbmRvd30KKyhAcHhyZWZ7UXVp dHRpbmcgV2luZG93c30pIGRlYWwgd2l0aCBhbnkgc3VjaCB3aW5kb3cuICBUaGF0IGZ1bmN0 aW9uIG1heQorZGVsZXRlIHN1Y2ggYSB3aW5kb3cgZXZlbiBpZiBpdCdzIG5vdCBkZWRpY2F0 ZWQgdG8gaXRzIGJ1ZmZlci4gIEFsc28sCitAY29kZXtkZWxldGUtd2luZG93cy1vbn0gd2ls bCB1c2UgQGNvZGV7cXVpdC1yZXN0b3JlLXdpbmRvd30gYXMgZmFsbGJhY2sKK3doZW4gYSB3 aW5kb3cgY2Fubm90IGJlIGRlbGV0ZWQgYW5kIGFub3RoZXIgYnVmZmVyIG11c3QgYmUgc2hv d24gaW4gaXQuCitAZW5kIGRlZm9wdAorCiAKIEBub2RlIFN3aXRjaGluZyBCdWZmZXJzCiBA c2VjdGlvbiBTd2l0Y2hpbmcgdG8gYSBCdWZmZXIgaW4gYSBXaW5kb3cKQEAgLTQ1MzIsNiAr NDU5NiwxNSBAQCBRdWl0dGluZyBXaW5kb3dzCiAKIEBpdGVtIGtpbGwKIFRoaXMgbWVhbnMg dG8ga2lsbCBAdmFye3dpbmRvd30ncyBidWZmZXIuCisKK0BpdGVtIGtpbGxpbmcKK1RoaXMg aXMgaGFuZGxlZCBsaWtlIEBjb2Rle2tpbGx9IGJ1dCBhc3N1bWVzIHRoYXQgQHZhcnt3aW5k b3d9J3MgYnVmZmVyCitnZXRzIGtpbGxlZCBlbHNld2hlcmUuICBUaGlzIHZhbHVlIGlzIHVz ZWQgYnkKK0Bjb2Rle3JlcGxhY2UtYnVmZmVyLWluLXdpbmRvd3N9IGFuZCBAY29kZXtxdWl0 LXdpbmRvd3Mtb259LgorCitAaXRlbSBidXJ5aW5nCitUaGlzIGlzIGhhbmRsZWQgbGlrZSBA Y29kZXtidXJ5fSBidXQgYXNzdW1lcyB0aGF0IEB2YXJ7d2luZG93fSdzIGJ1ZmZlcgorZ2V0 cyBidXJpZWQgZWxzZXdoZXJlLiAgVGhpcyB2YWx1ZSBpcyB1c2VkIGJ5IEBjb2Rle3F1aXQt d2luZG93cy1vbn0uCiBAZW5kIHRhYmxlCiAKIFRoZSBhcmd1bWVudCBAdmFye2J1cnktb3It a2lsbH0gYWxzbyBzcGVjaWZpZXMgd2hhdCB0byBkbyB3aXRoCkBAIC00NTQxLDE0ICs0NjE0 LDE4IEBAIFF1aXR0aW5nIFdpbmRvd3MKIGRlbGV0ZSB0aGUgZnJhbWUuICBPdGhlcndpc2Us IHRoZSBmYXRlIG9mIHRoZSBmcmFtZSBpcyBkZXRlcm1pbmVkIGJ5CiBjYWxsaW5nIEBjb2Rl e2ZyYW1lLWF1dG8taGlkZS1mdW5jdGlvbn0gKHNlZSBiZWxvdykgd2l0aCB0aGF0IGZyYW1l IGFzCiBzb2xlIGFyZ3VtZW50LgotCi1UaGlzIGZ1bmN0aW9uIGFsd2F5cyBzZXRzIEB2YXJ7 d2luZG93fSdzIEBjb2Rle3F1aXQtcmVzdG9yZX0gcGFyYW1ldGVyCi10byBAY29kZXtuaWx9 IHVubGVzcyBpdCBkZWxldGVzIHRoZSB3aW5kb3cuCiBAZW5kIGRlZnVuCiAKLVRoZSB3aW5k b3cgQHZhcnt3aW5kb3d9J3MgQGNvZGV7cXVpdC1yZXN0b3JlfSBwYXJhbWV0ZXIgKEBweHJl ZntXaW5kb3cKLVBhcmFtZXRlcnN9KSBzaG91bGQgYmUgQGNvZGV7bmlsfSBvciBhIGxpc3Qg b2YgZm91ciBlbGVtZW50czoKLUBjIEZJWE1FOiBkZXNjcmliZSB3aGF0IHF1aXQtcmVzdG9y ZS13aW5kb3cgZG9lcyBpZiB0aGlzIGlzIG5pbC4KKyAgQSB3aW5kb3cncyBAY29kZXtxdWl0 LXJlc3RvcmV9IGFuZCBAY29kZXtxdWl0LXJlc3RvcmUtcHJldn0gcGFyYW1ldGVycworKEBw eHJlZntXaW5kb3cgUGFyYW1ldGVyc30pIGd1aWRlIEBjb2Rle3F1aXQtcmVzdG9yZS13aW5k b3d9IHRocm91Z2ggaXRzCitwcm9jZXNzIG9mIGRlYWxpbmcgd2l0aCBpdHMgQHZhcnt3aW5k b3d9IGFyZ3VtZW50LiAgSWYgc3VjaCBhIHBhcmFtZXRlcgoraXMgYWJzZW50IG9yIEBjb2Rl e25pbH0sIHRoaXMgdXN1YWxseSBtZWFucyB0aGF0IHRoZSB3aW5kb3cgaGFzIGJlZW4KK2Ny ZWF0ZWQgYnkgYSBjb21tYW5kIGxpa2UgQGNvZGV7c3BsaXQtd2luZG93LWJlbG93fSBvcgor QGNvZGV7c3BsaXQtd2luZG93LXJpZ2h0fSAoQHB4cmVme1NwbGl0IFdpbmRvdywsLCBlbWFj cywgVGhlIEdOVSBFbWFjcworTWFudWFsfSkgYW5kIEBjb2Rle3F1aXQtcmVzdG9yZS13aW5k b3d9IHdpbGwgZGVsZXRlIHRoZSB3aW5kb3cgb25seSBpZgoraXQgd2FzIGRlZGljYXRlZCB0 byBpdHMgYnVmZmVyLgorCisgIElmIG5vbi1AY29kZXtuaWx9LCBhbnkgc3VjaCBwYXJhbWV0 ZXIgaXMgYSBsaXN0IG9mIGZvdXIgZWxlbWVudHM6CiAKIEBsaXNwCiAoQHZhcnttZXRob2R9 IEB2YXJ7b2J1ZmZlcn0gQHZhcntvd2luZG93fSBAdmFye3RoaXMtYnVmZmVyfSkKQEAgLTQ1 ODYsMTcgKzQ2NjMsMTcgQEAgUXVpdHRpbmcgV2luZG93cwogQHZhcnt3aW5kb3d9LCBpdCB0 cmllcyB0byBzZWxlY3QgQHZhcntvd2luZG93fS4KIAogVGhlIGZvdXJ0aCBlbGVtZW50LCBA dmFye3RoaXMtYnVmZmVyfSwgaXMgdGhlIGJ1ZmZlciB3aG9zZSBkaXNwbGF5aW5nCi1zZXQg dGhlIEBjb2Rle3F1aXQtcmVzdG9yZX0gcGFyYW1ldGVyLiAgUXVpdHRpbmcgQHZhcnt3aW5k b3d9IG1heSBkZWxldGUKLXRoYXQgd2luZG93IG9ubHkgaWYgaXQgc3RpbGwgc2hvd3MgdGhh dCBidWZmZXIuCi0KLVF1aXR0aW5nIEB2YXJ7d2luZG93fSB0cmllcyB0byBkZWxldGUgaXQg aWYgYW5kIG9ubHkgaWYgKDEpCi1AdmFye21ldGhvZH0gaXMgZWl0aGVyIEBjb2Rle3dpbmRv d30gb3IgQGNvZGV7ZnJhbWV9LCAoMikgdGhlIHdpbmRvdwotaGFzIG5vIGhpc3Rvcnkgb2Yg cHJldmlvdXNseS1kaXNwbGF5ZWQgYnVmZmVycyBhbmQgKDMpCi1AdmFye3RoaXMtYnVmZmVy fSBlcXVhbHMgdGhlIGJ1ZmZlciBjdXJyZW50bHkgZGlzcGxheWVkIGluCi1AdmFye3dpbmRv d30uICBJZiBAdmFye3dpbmRvd30gaXMgcGFydCBvZiBhbiBhdG9taWMgd2luZG93Ci0oQHB4 cmVme0F0b21pYyBXaW5kb3dzfSksIHF1aXR0aW5nIHdpbGwgdHJ5IHRvIGRlbGV0ZSB0aGUg cm9vdCBvZiB0aGF0Ci1hdG9taWMgd2luZG93IGluc3RlYWQuICBJbiBlaXRoZXIgY2FzZSwg aXQgdHJpZXMgdG8gYXZvaWQgc2lnbmFsaW5nIGFuCi1lcnJvciB3aGVuIEB2YXJ7d2luZG93 fSBjYW5ub3QgYmUgZGVsZXRlZC4KK3NldCB0aGUgQGNvZGV7cXVpdC1yZXN0b3JlfSBwYXJh bWV0ZXIuICBRdWl0dGluZyBAdmFye3dpbmRvd30gd2lsbCB1c2UKK3RoZSBpbmZvcm1hdGlv biBzdG9yZWQgYnkgdGhhdCBwYXJhbWV0ZXIgaWYgYW5kIG9ubHkgaWYgaXQgc3RpbGwgc2hv d3MKK3RoYXQgYnVmZmVyLgorCitAY29kZXtxdWl0LXJlc3RvcmUtd2luZG93fSB0cmllcyB0 byBkZWxldGUgaXRzIEB2YXJ7d2luZG93fSBpZiAoMSkKK0B2YXJ7bWV0aG9kfSBpcyBlaXRo ZXIgQGNvZGV7d2luZG93fSBvciBAY29kZXtmcmFtZX0sICgyKSB0aGUgd2luZG93IGhhcwor bm8gaGlzdG9yeSBvZiBwcmV2aW91c2x5LWRpc3BsYXllZCBidWZmZXJzIGFuZCAoMykgQHZh cnt0aGlzLWJ1ZmZlcn0KK2VxdWFscyB0aGUgYnVmZmVyIGN1cnJlbnRseSBkaXNwbGF5ZWQg aW4gQHZhcnt3aW5kb3d9LiAgSWYgQHZhcnt3aW5kb3d9CitpcyBwYXJ0IG9mIGFuIGF0b21p YyB3aW5kb3cgKEBweHJlZntBdG9taWMgV2luZG93c30pLCBpdCB3aWxsIHRyeSB0bworZGVs ZXRlIHRoZSByb290IG9mIHRoYXQgYXRvbWljIHdpbmRvdyBpbnN0ZWFkLiAgSW4gZWl0aGVy IGNhc2UsIGl0IHRyaWVzCit0byBhdm9pZCBzaWduYWxpbmcgYW4gZXJyb3Igd2hlbiBAdmFy e3dpbmRvd30gY2Fubm90IGJlIGRlbGV0ZWQuCiAKIElmIEB2YXJ7b2J1ZmZlcn0gaXMgYSBs aXN0LCBhbmQgQHZhcntwcmV2LWJ1ZmZlcn0gaXMgc3RpbGwgbGl2ZSwKIHF1aXR0aW5nIGRp c3BsYXlzIEB2YXJ7cHJldi1idWZmZXJ9IGluIEB2YXJ7d2luZG93fSBhY2NvcmRpbmcgdG8g dGhlCkBAIC00NjA4LDYgKzQ2ODUsNTggQEAgUXVpdHRpbmcgV2luZG93cwogYnVmZmVycyAo QHB4cmVme1dpbmRvdyBIaXN0b3J5fSksIHRoZSBtb3N0IHJlY2VudCBidWZmZXIgaW4gdGhh dAogaGlzdG9yeSB3aWxsIGJlIGRpc3BsYXllZC4KIAorICBDb25jZXB0dWFsbHksIHRoZSBA Y29kZXtxdWl0LXJlc3RvcmV9IHBhcmFtZXRlciBpcyB1c2VkIGZvciB1bmRvaW5nCit0aGUg Zmlyc3QgYnVmZmVyIGRpc3BsYXkgb3BlcmF0aW9uIGZvciBhIHNwZWNpZmljIHdpbmRvdy4g IFRoZQorQGNvZGV7cXVpdC1yZXN0b3JlLXByZXZ9IHBhcmFtZXRlciBpcyB1c2VkIGZvciB1 bmRvaW5nIHRoZSBsYXN0IGJ1ZmZlcgorZGlzcGxheSBvcGVyYXRpb24gaW4gYSByb3cgb2Yg c3VjaCBvcGVyYXRpb25zIGZvciBhIHNwZWNpZmljIHdpbmRvdy4KK0FueSBidWZmZXIgZGlz cGxheSBvcGVyYXRpb24gZm9yIHRoYXQgd2luZG93IHRoYXQgaGFwcGVuZWQgaW4gYmV0d2Vl biwKK2lzIHVuZG9uZSBieSBkaXNwbGF5aW5nIHRoZSBidWZmZXIgcHJldmlvdXNseSBzaG93 biBpbiB0aGF0IHdpbmRvdy4KKworICBAY29kZXtkaXNwbGF5LWJ1ZmZlcn0gc2V0cyB1cCB0 aGUgQGNvZGV7cXVpdC1yZXN0b3JlfSBwYXJhbWV0ZXIgb2YgYW55Cit3aW5kb3cgaXQgdXNl cyB3aGVuIHRoYXQgd2luZG93IGhhcyBiZWVuIGVpdGhlciBjcmVhdGVkIGJ5IGl0IG9yIGhh cyBubworbm9uLUBjb2Rle25pbH0gQGNvZGV7cXVpdC1yZXN0b3JlfSBwYXJhbWV0ZXIuICBJ ZiB0aGUgd2luZG93IGFscmVhZHkgaGFzCithIEBjb2Rle3F1aXQtcmVzdG9yZX0gcGFyYW1l dGVyLCBAY29kZXtkaXNwbGF5LWJ1ZmZlcn0gYWRkcyBhCitAY29kZXtxdWl0LXJlc3RvcmUt cHJldn0gcGFyYW1ldGVyIHdob3NlIEB2YXJ7bWV0aG9kfSBlbGVtZW50IGlzIGVpdGhlcgor QGNvZGV7c2FtZX0gb3IgQGNvZGV7b3RoZXJ9LiAgSW4gZWl0aGVyIGNhc2UsIGlmIHRoZSB3 aW5kb3cgYWxyZWFkeSBoYXMKK2EgQGNvZGV7cXVpdC1yZXN0b3JlLXByZXZ9IG9yIEBjb2Rl e3F1aXQtcmVzdG9yZX0gcGFyYW1ldGVyLCBpdCBtYXkKK3VwZGF0ZSB0aGF0IHBhcmFtZXRl cidzIGNvbnRlbnRzLgorCisgIEBjb2Rle3F1aXQtcmVzdG9yZS13aW5kb3d9IG5vdyBmaXJz dCB0cmllcyB0byBmaW5kIGEgc3VpdGFibGUKK0Bjb2Rle3F1aXQtcmVzdG9yZS1wcmV2fSBw YXJhbWV0ZXIgZm9yIGl0cyB3aW5kb3cgdGVsbGluZyB3aGljaCBidWZmZXIKK3RvIHNob3cg aW5zdGVhZC4gIElmIGl0IGRvZXNuJ3QgZmluZCBvbmUsIGl0IHdpbGwgbG9vayBmb3IgYSBz dWl0YWJsZQorQGNvZGV7cXVpdC1yZXN0b3JlfSBwYXJhbWV0ZXIgdG8gZWl0aGVyIGRlbGV0 ZSB0aGUgd2luZG93IG9yIHNob3cKK2Fub3RoZXIgYnVmZmVyIGluIGl0LgorCisgIE9uY2Ug aXQgaGFzIHVzZWQgb25lIG9mIHRoZXNlIHBhcmFtZXRlcnMsIEBjb2Rle3F1aXQtcmVzdG9y ZS13aW5kb3d9CityZXNldHMgaXQgdG8gQGNvZGV7bmlsfS4gIFBhcmFtZXRlcnMgaXQgZGlk IG5vdCB1c2UgYXJlIGxlZnQgYWxvbmUuICBBbnkKK29mIHRoZXNlIHBhcmFtZXRlcnMgYXJl IGFsc28gcmVzZXQgYnkgQGNvZGV7cmVwbGFjZS1idWZmZXItaW4td2luZG93c30KKyhAcHhy ZWZ7QnVmZmVycyBhbmQgV2luZG93c30pIHdoZW4gdGhleSByZWZlcmVuY2UgYSBidWZmZXIg dGhhdCBpcyBhYm91dAordG8gYmUga2lsbGVkLCBlaXRoZXIgYXMgdGhlIGJ1ZmZlciBzcGVj aWZpZWQgYnkgQHZhcntwcmV2LWJ1ZmZlcn0gb3IgYXMKK3RoZSBidWZmZXIgc3BlY2lmaWVk IGJ5IEB2YXJ7dGhpcy1idWZmZXJ9LgorCisgIEFsbCBvcGVyYXRpb25zIG9uIHRoZXNlIHBh cmFtZXRlcnMgYXJlIHN1cHBvc2VkIHRvIHByZXNlcnZlIHRoZQorZm9sbG93aW5nIGludmFy aWFudDogSWYgYSB3aW5kb3cgaGFzIGEgbm9uLUBjb2Rle25pbH0KK0Bjb2Rle3F1aXQtcmVz dG9yZS1wcmV2fSBwYXJhbWV0ZXIsIGl0IGFsc28gaGFzIGEgbm9uLUBjb2Rle25pbH0KK0Bj b2Rle3F1aXQtcmVzdG9yZX0gcGFyYW1ldGVyLgorCitUaGUgZm9sbG93aW5nIG9wdGlvbiBh bGxvd3MgQGNvZGV7cXVpdC1yZXN0b3JlLXdpbmRvd30gdG8gZGVsZXRlIGl0cword2luZG93 IG1vcmUgYWdncmVzc2l2ZWx5LgorCitAZGVmb3B0IHF1aXQtcmVzdG9yZS13aW5kb3ctbm8t c3dpdGNoCitJZiB0aGlzIG9wdGlvbiBpcyBAY29kZXtuaWx9LCBAY29kZXtxdWl0LXJlc3Rv cmUtd2luZG93fSB3aWxsIGFsd2F5cworY2FsbCBAY29kZXtzd2l0Y2gtdG8tcHJldi1idWZm ZXJ9IHVubGVzcyB0aGUgd2luZG93IGhhcyBiZWVuIG1hZGUgYnkKK0Bjb2Rle2Rpc3BsYXkt YnVmZmVyfS4gIElmIHRoaXMgaXMgQGNvZGV7dH0sIEBjb2Rle3F1aXQtcmVzdG9yZS13aW5k b3d9Cit3aWxsIHRyeSBoYXJkIHRvIHN3aXRjaCBvbmx5IHRvIGJ1ZmZlcnMgcHJldmlvdXNs eSBzaG93biBpbiB0aGF0IHdpbmRvdy4KK0lmIHRoaXMgaXMgdGhlIHN5bWJvbCBAY29kZXtz a2lwLWZpcnN0fSwgaXQgd2lsbCBzd2l0Y2ggdG8gYSBwcmV2aW91cworYnVmZmVyIGlmIGFu ZCBvbmx5IHRoZSB3aW5kb3cgaGFzIGF0IGxlYXN0IHR3byBwcmV2aW91cyBidWZmZXJzLgor CitJbiBlaXRoZXIgY2FzZSwgaWYgQGNvZGV7cXVpdC1yZXN0b3JlLXdpbmRvd30gZG9lc24n dCBzd2l0Y2ggdG8gYQorcHJldmlvdXMgYnVmZmVyLCBpdCB3aWxsIHRyeSB0byBkZWxldGUg dGhlIHdpbmRvdyAoYW5kIG1heWJlIGl0cworZnJhbWUpIGluc3RlYWQuICBOb3RlIGFsc28g dGhhdCBpZiBhIHdpbmRvdyBpcyBkZWRpY2F0ZWQsCitAY29kZXtxdWl0LXJlc3RvcmUtd2lu ZG93fSB3aWxsIHVzdWFsbHkgbm90IHN3aXRjaCB0byBhIHByZXZpb3VzCitidWZmZXIgaW4g aXQgZWl0aGVyLgorQGVuZCBkZWZvcHQKKwogQGlnbm9yZQogQGMgRklYTUU6IFNob3VsZCB3 ZSBkb2N1bWVudCBkaXNwbGF5LWJ1ZmZlci1yZXVzZS13aW5kb3c/CiBJZiB3ZSBkb2N1bWVu dCBkaXNwbGF5LWJ1ZmZlci1yZWNvcmQtd2luZG93LCBpdCBzaG91bGQgYmUgd2l0aCBAZGVm dW4uCkBAIC02NjY4LDEyICs2Nzk3LDE0IEBAIFdpbmRvdyBQYXJhbWV0ZXJzCiBAY29kZXt3 aW5kb3ctcHJlc2VydmUtc2l6ZX0gKEBweHJlZntQcmVzZXJ2aW5nIFdpbmRvdyBTaXplc30p LgogCiBAaXRlbSBxdWl0LXJlc3RvcmUKK0BpdGVtIHF1aXQtcmVzdG9yZS1wcmV2CiBAdmlu ZGV4IHF1aXQtcmVzdG9yZUByeywgYSB3aW5kb3cgcGFyYW1ldGVyfQotVGhpcyBwYXJhbWV0 ZXIgaXMgaW5zdGFsbGVkIGJ5IHRoZSBidWZmZXIgZGlzcGxheSBmdW5jdGlvbnMKK0B2aW5k ZXggcXVpdC1yZXN0b3JlLXByZXZAcnssIGEgd2luZG93IHBhcmFtZXRlcn0KK1RoZXNlIHBh cmFtZXRlcnMgYXJlcyBpbnN0YWxsZWQgYnkgdGhlIGJ1ZmZlciBkaXNwbGF5IGZ1bmN0aW9u cwogKEBweHJlZntDaG9vc2luZyBXaW5kb3d9KSBhbmQgY29uc3VsdGVkIGJ5IEBjb2Rle3F1 aXQtcmVzdG9yZS13aW5kb3d9Ci0oQHB4cmVme1F1aXR0aW5nIFdpbmRvd3N9KS4gIEl0IGlz IGEgbGlzdCBvZiBmb3VyIGVsZW1lbnRzLCBzZWUgdGhlCi1kZXNjcmlwdGlvbiBvZiBAY29k ZXtxdWl0LXJlc3RvcmUtd2luZG93fSBpbiBAcmVme1F1aXR0aW5nIFdpbmRvd3N9Ci1mb3Ig ZGV0YWlscy4KKyhAcHhyZWZ7UXVpdHRpbmcgV2luZG93c30pLiAgVGhleSBhcmUgbGlzdHMg b2YgZm91ciBlbGVtZW50cywgc2VlIHRoZQorZGVzY3JpcHRpb24gb2YgQGNvZGV7cXVpdC1y ZXN0b3JlLXdpbmRvd30gaW4gQHJlZntRdWl0dGluZyBXaW5kb3dzfSBmb3IKK2RldGFpbHMu CiAKIEBpdGVtIHdpbmRvdy1zaWRlCiBAaXRlbXggd2luZG93LXNsb3QKZGlmZiAtLWdpdCBh L2V0Yy9ORVdTIGIvZXRjL05FV1MKaW5kZXggYzkwN2VjNDBmYTEuLmRlN2FlN2IwMzI2IDEw MDY0NAotLS0gYS9ldGMvTkVXUworKysgYi9ldGMvTkVXUwpAQCAtNDMsNiArNDMsMzcgQEAg VGhlICdmaW5kLWZ1bmN0aW9uJywgJ2ZpbmQtbGlicmFyeScsICdmaW5kLWZhY2UtZGVmaW5p dGlvbicsIGFuZAogJ2ZpbmQtdmFyaWFibGUnIGNvbW1hbmRzIG5vdyBhbGxvdyByZXRyaWV2 aW5nIHByZXZpb3VzIGlucHV0IHVzaW5nIHRoZQogdXN1YWwgbWluaWJ1ZmZlciBoaXN0b3J5 IGNvbW1hbmRzLiAgRWFjaCBjb21tYW5kIGhhcyBhIHNlcGFyYXRlIGhpc3RvcnkuCiAKKwwK KyoqIFdpbmRvd3MKKworKysrCisqKiogTmV3IGhvb2sgJ3dpbmRvdy1kZWxldGFibGUtZnVu Y3Rpb25zJy4KK1RoaXMgYWJub3JtYWwgaG9vayBnaXZlcyBpdHMgY2xpZW50IGEgd2F5IHRv IHNhdmUgYSB3aW5kb3cgZnJvbSBnZXR0aW5nCitkZWxldGVkIGltcGxpY2l0bHkgYnkgZnVu Y3Rpb25zIGxpa2UgJ2tpbGwtYnVmZmVyJywgJ2J1cnktYnVmZmVyJyBhbmQKKydxdWl0LXJl c3RvcmUtd2luZG93JywKKworKysrCisqKiogTmV3IG9wdGlvbiAna2lsbC1idWZmZXItcXVp dC13aW5kb3dzJy4KK1RoaXMgb3B0aW9uIGhhcyAna2lsbC1idWZmZXInIGNhbGwgJ3F1aXQt cmVzdG9yZS13aW5kb3cnIHRvIGhhbmRsZSB0aGUKK2Z1cnRoZXIgZGVzdGlueSBvZiBhbnkg d2luZG93IHNob3dpbmcgdGhlIGJ1ZmZlciB0byBiZSBraWxsZWQuCisKKysrKworKioqIE5l dyB3aW5kb3cgcGFyYW1ldGVyICdxdWl0LXJlc3RvcmUtcHJldicuCitUaGlzIHBhcmFtZXRl ciBpcyBzZXQgdXAgYnkgJ2Rpc3BsYXktYnVmZmVyJyB3aGVuIGl0IGRldGVjdHMgdGhhdCB0 aGUKK3dpbmRvdyB1c2VkIGFscmVhZHkgaGFzIGEgJ3F1aXQtcmVzdG9yZScgcGFyYW1ldGVy LiAgSXRzIHByZXNlbmNlIGdpdmVzCisncXVpdC1yZXN0b3JlLXdpbmRvdycgYSB3YXkgdG8g dW5kbyBhIHNlcXVlbmNlIG9mIGJ1ZmZlciBkaXNwbGF5CitvcGVyYXRpb25zIG1vcmUgaW50 dWl0aXZlbHkuCisKKysrKworKioqICdxdWl0LXJlc3RvcmUtd2luZG93JyBub3cgaGFuZGxl cyB0aGUgdmFsdWVzICdraWxsaW5nJyBhbmQgJ2J1cnlpbmcnCitmb3IgaXRzIEJVUlktT1It S0lMTCBhcmd1bWVudCBqdXN0IGxpa2UgJ2tpbGwnIGFuZCAnYnVyeScgYnV0IGFzc3VtZXMK K3RoYXQgdGhlIGFjdHVhbCBraWxsaW5nIG9yIGJ1cnlpbmcgb2YgdGhlIGJ1ZmZlciBpcyBk b25lIGJ5IHRoZSBjYWxsZXIuCisKKysrKworKioqIE5ldyBvcHRpb24gJ3F1aXQtcmVzdG9y ZS13aW5kb3ctbm8tc3dpdGNoJy4KK1dpdGggdGhpcyBvcHRpb24gc2V0LCAncXVpdC1yZXN0 b3JlLXdpbmRvdycgd2lsbCBkZWxldGUgaXRzIHdpbmRvdyBtb3JlCithZ2dyZXNzaXZlbHkg cmF0aGVyIHRoYW4gc3dpdGNoaW5nIHRvIHNvbWUgb3RoZXIgYnVmZmVyIGluIGl0LgorCiAM CiAqIEVkaXRpbmcgQ2hhbmdlcyBpbiBFbWFjcyAzMS4xCiAKZGlmZiAtLWdpdCBhL2xpc3Av d2luZG93LmVsIGIvbGlzcC93aW5kb3cuZWwKaW5kZXggMDA2Y2ZhMTk1MjUuLjQ2ODc4NjBk YjExIDEwMDY0NAotLS0gYS9saXNwL3dpbmRvdy5lbAorKysgYi9saXNwL3dpbmRvdy5lbApA QCAtNDEwNCwxMiArNDEwNCwzNSBAQCBvbmUtd2luZG93LXAKIAkobmV4dC13aW5kb3cgYmFz ZS13aW5kb3cgKGlmIG5vbWluaSAnYXJnKSBhbGwtZnJhbWVzKSkpKQogDAogOzs7IERlbGV0 aW5nIHdpbmRvd3MuCi0oZGVmdW4gd2luZG93LWRlbGV0YWJsZS1wICgmb3B0aW9uYWwgd2lu ZG93KQorKGRlZmN1c3RvbSB3aW5kb3ctZGVsZXRhYmxlLWZ1bmN0aW9ucyBuaWwKKyAgICJB Ym5vcm1hbCBob29rIHRvIGRlY2lkZSB3aGV0aGVyIGEgd2luZG93IG1heSBiZSBpbXBsaWNp dGx5IGRlbGV0ZWQuCitUaGUgdmFsdWUgc2hvdWxkIGJlIGEgbGlzdCBvZiBmdW5jdGlvbnMg dGhhdCB0YWtlIHR3byBhcmd1bWVudHMuICBUaGUKK2ZpcnN0IGFyZ3VtZW50IGlzIHRoZSB3 aW5kb3cgYWJvdXQgdG8gYmUgZGVsZXRlZC4gIFRoZSBzZWNvbmQgYXJndW1lbnQKK2lmIG5v bi1uaWwsIG1lYW5zIHRoYXQgdGhlIHdpbmRvdyBpcyB0aGUgb25seSB3aW5kb3cgb24gaXRz IGZyYW1lIGFuZAorc2hvdWxkIGJlIGRlbGV0ZWQgdG9nZXRoZXIgd2l0aCBpdHMgZnJhbWUu ICBUaGUgd2luZG93J3MgYnVmZmVyIGlzCitjdXJyZW50IHdoZW4gcnVubmluZyB0aGlzIGhv b2suCisKK0lmIGFueSBvZiB0aGVzZSBmdW5jdGlvbnMgcmV0dXJucyBuaWwsIHRoZSB3aW5k b3cgd2lsbCBub3QgYmUgZGVsZXRlZAorYW5kIGFub3RoZXIgYnVmZmVyIHdpbGwgYmUgc2hv d24gaW4gaXQuICBUaGlzIGhvb2sgaXMgcnVuIGltcGxpY2l0bHkgYnkKK3RoZSBmdW5jdGlv bnMgYHF1aXQtcmVzdG9yZS13aW5kb3cnLCBga2lsbC1idWZmZXInIGFuZCBgYnVyeS1idWZm ZXInLgorSXQgaXMgbm90IHJ1biBieSBgZGVsZXRlLXdpbmRvdycgYW5kIGBkZWxldGUtd2lu ZG93cy1vbicuICBUaGUgcHVycG9zZQorb2YgdGhpcyBob29rIGlzIHRvIGdpdmUgaXRzIGNs aWVudHMgYSBjaGFuY2UgdG8gc2F2ZSBhIHdpbmRvdyBvciBpdHMKK2ZyYW1lIGZyb20gZGVs ZXRpb24gYmVjYXVzZSB0aGV5IG1pZ2h0IHN0aWxsIHdhbnQgdG8gdXNlIHRoYXQgd2luZG93 IG9yCitmcmFtZSBmb3IgdGhlaXIgb3duIHB1cnBvc2VzLiIKKyAgOnR5cGUgJ2hvb2sKKyAg OnZlcnNpb24gIjMxLjEiCisgIDpncm91cCAnd2luZG93cykKKworKGRlZnVuIHdpbmRvdy1k ZWxldGFibGUtcCAoJm9wdGlvbmFsIHdpbmRvdyBuby1ydW4pCiAgICJSZXR1cm4gdCBpZiBX SU5ET1cgY2FuIGJlIHNhZmVseSBkZWxldGVkIGZyb20gaXRzIGZyYW1lLgogV0lORE9XIG11 c3QgYmUgYSB2YWxpZCB3aW5kb3cgYW5kIGRlZmF1bHRzIHRvIHRoZSBzZWxlY3RlZCBvbmUu CiAKIFJldHVybiBgZnJhbWUnIGlmIFdJTkRPVyBpcyB0aGUgcm9vdCB3aW5kb3cgb2YgaXRz IGZyYW1lIGFuZCB0aGF0Ci1mcmFtZSBjYW4gYmUgc2FmZWx5IGRlbGV0ZWQuIgorZnJhbWUg Y2FuIGJlIHNhZmVseSBkZWxldGVkLgorCitVbmxlc3MgdGhlIG9wdGlvbmFsIGFyZ3VtZW50 IE5PLVJVTiBpcyBub24tbmlsLCBydW4gdGhlIGFibm9ybWFsIGhvb2sKK2B3aW5kb3ctZGVs ZXRhYmxlLWZ1bmN0aW9ucycgYW5kIHJldHVybiBuaWwgaWYgYW55IGZ1bmN0aW9uIG9uIHRo YXQgaG9vaworcmV0dXJucyBuaWwuIgogICAoc2V0cSB3aW5kb3cgKHdpbmRvdy1ub3JtYWxp emUtd2luZG93IHdpbmRvdykpCiAKICAgKHVubGVzcyAob3IgaWdub3JlLXdpbmRvdy1wYXJh bWV0ZXJzCkBAIC00MTM3LDE0ICs0MTYwLDIyIEBAIHdpbmRvdy1kZWxldGFibGUtcAogCQkg ICAgKGFuZCBtaW5pYnVmIChlcSBmcmFtZSAod2luZG93LWZyYW1lIG1pbmlidWYpKQogICAg ICAgICAgICAgICAgICAgICAgICAgIChub3QgKGVxIChkZWZhdWx0LXRvcGxldmVsLXZhbHVl CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbWluaWJ1ZmZlci1mb2xs b3dzLXNlbGVjdGVkLWZyYW1lKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHQpKSkpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHQpKSkpCisJCSAg KG9yIG5vLXJ1bgorCQkgICAgICAobm90ICh3aXRoLWN1cnJlbnQtYnVmZmVyICh3aW5kb3ct YnVmZmVyIHdpbmRvdykKKwkJCSAgICAgKHJ1bi1ob29rLXdpdGgtYXJncy11bnRpbC1mYWls dXJlCisJCQkgICAgICAnd2luZG93LWRlbGV0YWJsZS1mdW5jdGlvbnMgd2luZG93IHQpKSkp KQogCSdmcmFtZSkpCiAgICAgICgod2luZG93LW1pbmlidWZmZXItcCB3aW5kb3cpCiAgICAg ICA7OyBJZiBXSU5ET1cgaXMgdGhlIG1pbmlidWZmZXIgd2luZG93IG9mIGEgbm9uLW1pbmli dWZmZXItb25seQogICAgICAgOzsgZnJhbWUsIGl0IGNhbm5vdCBiZSBkZWxldGVkIHNlcGFy YXRlbHkuCiAgICAgICBuaWwpCi0gICAgICgob3IgaWdub3JlLXdpbmRvdy1wYXJhbWV0ZXJz Ci0JICAobm90IChlcSB3aW5kb3cgKHdpbmRvdy1tYWluLXdpbmRvdyBmcmFtZSkpKSkKKyAg ICAgKChhbmQgKG9yIGlnbm9yZS13aW5kb3ctcGFyYW1ldGVycworCSAgICAgICAobm90IChl cSB3aW5kb3cgKHdpbmRvdy1tYWluLXdpbmRvdyBmcmFtZSkpKSkKKwkgICAob3Igbm8tcnVu CisJICAgICAgICh3aXRoLWN1cnJlbnQtYnVmZmVyICh3aW5kb3ctYnVmZmVyIHdpbmRvdykK KwkJIChydW4taG9vay13aXRoLWFyZ3MtdW50aWwtZmFpbHVyZQorCQkgICd3aW5kb3ctZGVs ZXRhYmxlLWZ1bmN0aW9ucyB3aW5kb3cgbmlsKSkpKQogICAgICAgOzsgT3RoZXJ3aXNlLCBX SU5ET1cgY2FuIGJlIGRlbGV0ZWQgdW5sZXNzIGl0IGlzIHRoZSBtYWluIHdpbmRvdwogICAg ICAgOzsgb2YgaXRzIGZyYW1lLgogICAgICAgdCkpKSkKQEAgLTQ1MTUsMTcgKzQ1NDYsMjYg QEAgcmVjb3JkLXdpbmRvdy1idWZmZXIKICAgICAgIChwdXNoLXdpbmRvdy1idWZmZXItb250 by1wcmV2IHdpbmRvdykKICAgICAgIChydW4taG9va3MgJ2J1ZmZlci1saXN0LXVwZGF0ZS1o b29rKSkpKQogCi0oZGVmdW4gdW5yZWNvcmQtd2luZG93LWJ1ZmZlciAoJm9wdGlvbmFsIHdp bmRvdyBidWZmZXIpCisoZGVmdW4gdW5yZWNvcmQtd2luZG93LWJ1ZmZlciAoJm9wdGlvbmFs IHdpbmRvdyBidWZmZXIgYWxsKQogICAiVW5yZWNvcmQgQlVGRkVSIGluIFdJTkRPVy4KLVdJ TkRPVyBtdXN0IGJlIGEgbGl2ZSB3aW5kb3cgYW5kIGRlZmF1bHRzIHRvIHRoZSBzZWxlY3Rl ZCBvbmUuCi1CVUZGRVIgbXVzdCBiZSBhIGxpdmUgYnVmZmVyIGFuZCBkZWZhdWx0cyB0byB0 aGUgYnVmZmVyIG9mCi1XSU5ET1cuIgorV0lORE9XIG11c3QgYmUgYSBsaXZlIHdpbmRvdyBh bmQgZGVmYXVsdHMgdG8gdGhlIHNlbGVjdGVkIG9uZS4gIEJVRkZFUgorbXVzdCBiZSBhIGxp dmUgYnVmZmVyIGFuZCBkZWZhdWx0cyB0byB0aGUgYnVmZmVyIG9mIFdJTkRPVyAoYWx0aG91 Z2gKK3RoYXQgZGVmYXVsdCBoYXJkbHkgbWFrZXMgYW55IHNlbnNlKS4KKworTWFrZSBCVUZG RVIgZGlzYXBwZWFyIGZyb20gbW9zdCBjb21wb25lbnRzIHNwZWNpZmllZCBieSB0aGUgb2Jq ZWN0IG9mCitXSU5ET1cuICBUaGlzIGluY2x1ZGVzIHRoZSBidWZmZXJzIHByZXZpb3VzbHkg c2hvd24gaW4gV0lORE9XIGFzIHdlbGwgYXMKK2FueSBidWZmZXJzIG1lbnRpb25lZCBieSBX SU5ET1cncyBgcXVpdC1yZXN0b3JlJyBhbmQgYHF1aXQtcmVzdG9yZS1wcmV2JworcGFyYW1l dGVycy4KKworVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgYnkgYHJlcGxhY2UtYnVmZmVyLWlu LXdpbmRvd3MnIHdoaWNoIGlzIG1haW5seQorY29uY2VybmVkIHdpdGggZmluZGluZyBhbm90 aGVyIGJ1ZmZlciBmb3IgYWxsIHdpbmRvd3Mgc2hvd2luZyBhIGJ1ZmZlcgorYWJvdXQgdG8g YmUga2lsbGVkLiAgSXQncyBhbHNvIGNhbGxlZCBieSBgZGVsZXRlLXdpbmRvd3Mtb24nIGFu ZAorYHF1aXQtd2luZG93cy1vbicgYW5kIHNob3VsZCBiZSBjYWxsZWQgd2hlcmV2ZXIgdGhl IHRyYWNlcyBvZiBhIGJ1ZmZlcgorc2hvdWxkIGJlIGVyYXNlZCBmcm9tIHRoZSB3aW5kb3cg aGFuZGxpbmcgc3Vic3lzdGVtLiIKICAgKGxldCogKCh3aW5kb3cgKHdpbmRvdy1ub3JtYWxp emUtd2luZG93IHdpbmRvdyB0KSkKIAkgKGJ1ZmZlciAob3IgYnVmZmVyICh3aW5kb3ctYnVm ZmVyIHdpbmRvdykpKSkKLSAgICAoc2V0LXdpbmRvdy1wcmV2LWJ1ZmZlcnMKLSAgICAgd2lu ZG93IChhc3NxLWRlbGV0ZS1hbGwgYnVmZmVyICh3aW5kb3ctcHJldi1idWZmZXJzIHdpbmRv dykpKQotICAgIChzZXQtd2luZG93LW5leHQtYnVmZmVycwotICAgICB3aW5kb3cgKGRlbHEg YnVmZmVyICh3aW5kb3ctbmV4dC1idWZmZXJzIHdpbmRvdykpKSkpCisgICAgKHdoZW4gKGJ1 ZmZlci1saXZlLXAgYnVmZmVyKQorICAgICAgKHdpbmRvdy1kaXNjYXJkLWJ1ZmZlci1mcm9t LXdpbmRvdyBidWZmZXIgd2luZG93IGFsbCkpKSkKIAogKGRlZnVuIHNldC13aW5kb3ctYnVm ZmVyLXN0YXJ0LWFuZC1wb2ludCAod2luZG93IGJ1ZmZlciAmb3B0aW9uYWwgc3RhcnQgcG9p bnQpCiAgICJTZXQgV0lORE9XJ3MgYnVmZmVyIHRvIEJVRkZFUi4KQEAgLTQ2ODMsNyArNDcy Myw3IEBAIHN3aXRjaC10by1wcmV2LWJ1ZmZlcgogICAgICAgICAgICAoKG9yIHN3aXRjaC10 by1wcmV2LWJ1ZmZlci1za2lwCiAgICAgICAgICAgICAgICAgKG5vdCBzd2l0Y2gtdG8tdmlz aWJsZS1idWZmZXIpKQogICAgICAgICAgICAgZnJhbWUpKSkKLSAgICAgICAgIGVudHJ5IG5l dy1idWZmZXIga2lsbGVkLWJ1ZmZlcnMgc2tpcHBlZCkKKyAgICAgICAgIGVudHJ5IG5ldy1i dWZmZXIgc2tpcHBlZCkKICAgICAod2hlbiAod2luZG93LW1pbmlidWZmZXItcCB3aW5kb3cp CiAgICAgICA7OyBEb24ndCBzd2l0Y2ggaW4gbWluaWJ1ZmZlciB3aW5kb3cuCiAgICAgICAo dW5sZXNzIChzZXRxIHdpbmRvdyAobWluaWJ1ZmZlci1zZWxlY3RlZC13aW5kb3cpKQpAQCAt NDY5OSwxNCArNDczOSwxNCBAQCBzd2l0Y2gtdG8tcHJldi1idWZmZXIKICAgICAgIChkb2xp c3QgKGVudHJ5ICh3aW5kb3ctcHJldi1idWZmZXJzIHdpbmRvdykpCiAJKHdoZW4gKGFuZCAo bm90IChlcSAoY2FyIGVudHJ5KSBvbGQtYnVmZmVyKSkKICAgICAgICAgICAgICAgICAgICAo c2V0cSBuZXctYnVmZmVyIChjYXIgZW50cnkpKQotCQkgICAob3IgKGJ1ZmZlci1saXZlLXAg bmV3LWJ1ZmZlcikKLQkJICAgICAgIChub3QgKHNldHEga2lsbGVkLWJ1ZmZlcnMKLQkJCQkg IChjb25zIG5ldy1idWZmZXIga2lsbGVkLWJ1ZmZlcnMpKSkpCi0gICAgICAgICAgICAgICAg ICAgKG9yIChudWxsIHByZWQpIChmdW5jYWxsIHByZWQgbmV3LWJ1ZmZlcikpCisJCSAgIDs7 IEJld2FyZTogbmV3LWJ1ZmZlciBtaWdodCBoYXZlIGJlZW4ga2lsbGVkIGJ5CisJCSAgIDs7 IGEgZnVuY3Rpb24gb24gJ2J1ZmZlci1wcmVkaWNhdGUnLgorCQkgICAoYnVmZmVyLWxpdmUt cCBuZXctYnVmZmVyKQorCQkgICAob3IgKG51bGwgcHJlZCkgKGZ1bmNhbGwgcHJlZCBuZXct YnVmZmVyKSkKIAkJICAgOzsgV2hlbiBCVVJZLU9SLUtJTEwgaXMgbmlsLCBhdm9pZCBzd2l0 Y2hpbmcgdG8gYQogCQkgICA7OyBidWZmZXIgaW4gV0lORE9XJ3MgbmV4dCBidWZmZXJzIGxp c3QuCiAJCSAgIChvciBidXJ5LW9yLWtpbGwgKG5vdCAobWVtcSBuZXctYnVmZmVyIG5leHQt YnVmZmVycykpKSkKLSAgICAgICAgICAoaWYgKHN3aXRjaC10by1wcmV2LWJ1ZmZlci1za2lw LXAgc2tpcCB3aW5kb3cgbmV3LWJ1ZmZlciBidXJ5LW9yLWtpbGwpCisJICAoaWYgKHN3aXRj aC10by1wcmV2LWJ1ZmZlci1za2lwLXAgc2tpcCB3aW5kb3cgbmV3LWJ1ZmZlciBidXJ5LW9y LWtpbGwpCiAJICAgICAgKHNldHEgc2tpcHBlZCBuZXctYnVmZmVyKQogCSAgICAoc2V0LXdp bmRvdy1idWZmZXItc3RhcnQtYW5kLXBvaW50CiAJICAgICB3aW5kb3cgbmV3LWJ1ZmZlciAo bnRoIDEgZW50cnkpIChudGggMiBlbnRyeSkpCkBAIC00NzQwLDExICs0NzgwLDcgQEAgc3dp dGNoLXRvLXByZXYtYnVmZmVyCiAJOzsgU2NhbiByZXZlcnRlZCBuZXh0IGJ1ZmZlcnMgbGFz dCAobXVzdCBub3QgdXNlIG5yZXZlcnNlCiAJOzsgaGVyZSEpLgogCShkb2xpc3QgKGJ1ZmZl ciAocmV2ZXJzZSBuZXh0LWJ1ZmZlcnMpKQotCSAgOzsgQWN0dWFsbHksIGJ1ZmZlciBfbXVz dF8gYmUgbGl2ZSBoZXJlIHNpbmNlIG90aGVyd2lzZSBpdAotCSAgOzsgd291bGQgaGF2ZSBi ZWVuIGNhdWdodCBpbiB0aGUgc2NhbiBvZiBwcmV2aW91cyBidWZmZXJzLgotCSAgKHdoZW4g KGFuZCAob3IgKGJ1ZmZlci1saXZlLXAgYnVmZmVyKQotCQkJIChub3QgKHNldHEga2lsbGVk LWJ1ZmZlcnMKLQkJCQkgICAgKGNvbnMgYnVmZmVyIGtpbGxlZC1idWZmZXJzKSkpKQorCSAg KHdoZW4gKGFuZCAoYnVmZmVyLWxpdmUtcCBidWZmZXIpCiAJCSAgICAgKG5vdCAoZXEgYnVm ZmVyIG9sZC1idWZmZXIpKQogICAgICAgICAgICAgICAgICAgICAgKG9yIChudWxsIHByZWQp IChmdW5jYWxsIHByZWQgYnVmZmVyKSkKIAkJICAgICAoc2V0cSBlbnRyeSAoYXNzcSBidWZm ZXIgKHdpbmRvdy1wcmV2LWJ1ZmZlcnMgd2luZG93KSkpKQpAQCAtNDc2NSw5ICs0ODAxLDcg QEAgc3dpdGNoLXRvLXByZXYtYnVmZmVyCiAJCQkgIChhc3NxIG9sZC1idWZmZXIgKHdpbmRv dy1wcmV2LWJ1ZmZlcnMgd2luZG93KSkpKSkKIAkgIDs7IFJlbW92ZSBgb2xkLWJ1ZmZlcicg ZnJvbSBXSU5ET1cncyBwcmV2aW91cyBhbmQgKHJlc3RvcmVkIGxpc3QKIAkgIDs7IG9mKSBu ZXh0IGJ1ZmZlcnMuCi0JICAoc2V0LXdpbmRvdy1wcmV2LWJ1ZmZlcnMKLQkgICB3aW5kb3cg KGFzc3EtZGVsZXRlLWFsbCBvbGQtYnVmZmVyICh3aW5kb3ctcHJldi1idWZmZXJzIHdpbmRv dykpKQotCSAgKHNldC13aW5kb3ctbmV4dC1idWZmZXJzIHdpbmRvdyAoZGVscSBvbGQtYnVm ZmVyIG5leHQtYnVmZmVycykpCisJICAodW5yZWNvcmQtd2luZG93LWJ1ZmZlciB3aW5kb3cg b2xkLWJ1ZmZlcikKIAkgICh3aGVuIGVudHJ5CiAJICAgIDs7IEFwcGVuZCBvbGQtYnVmZmVy J3MgZW50cnkgdG8gbGlzdCBvZiBXSU5ET1cncyBwcmV2aW91cwogCSAgICA7OyBidWZmZXJz IHNvIGl0J3MgbGVzcyBsaWtlbHkgdG8gZ2V0IHN3aXRjaGVkIHRvIHNvb24gYnV0CkBAIC00 NzgwLDE0ICs0ODE0LDYgQEAgc3dpdGNoLXRvLXByZXYtYnVmZmVyCiAgICAgICAoc2V0LXdp bmRvdy1uZXh0LWJ1ZmZlcnMKICAgICAgICB3aW5kb3cgKGNvbnMgb2xkLWJ1ZmZlciAoZGVs cSBvbGQtYnVmZmVyIG5leHQtYnVmZmVycykpKSkKIAotICAgIDs7IFJlbW92ZSBraWxsZWQg YnVmZmVycyBmcm9tIFdJTkRPVydzIHByZXZpb3VzIGFuZCBuZXh0IGJ1ZmZlcnMuCi0gICAg KHdoZW4ga2lsbGVkLWJ1ZmZlcnMKLSAgICAgIChkb2xpc3QgKGJ1ZmZlciBraWxsZWQtYnVm ZmVycykKLQkoc2V0LXdpbmRvdy1wcmV2LWJ1ZmZlcnMKLQkgd2luZG93IChhc3NxLWRlbGV0 ZS1hbGwgYnVmZmVyICh3aW5kb3ctcHJldi1idWZmZXJzIHdpbmRvdykpKQotCShzZXQtd2lu ZG93LW5leHQtYnVmZmVycwotCSB3aW5kb3cgKGRlbHEgYnVmZmVyICh3aW5kb3ctbmV4dC1i dWZmZXJzIHdpbmRvdykpKSkpCi0KICAgICA7OyBSZXR1cm4gbmV3LWJ1ZmZlci4KICAgICBu ZXctYnVmZmVyKSkKIApAQCAtNDgxOSw3ICs0ODQ1LDcgQEAgc3dpdGNoLXRvLW5leHQtYnVm ZmVyCiAgICAgICAgICAgICgob3Igc3dpdGNoLXRvLXByZXYtYnVmZmVyLXNraXAKICAgICAg ICAgICAgICAgICAobm90IHN3aXRjaC10by12aXNpYmxlLWJ1ZmZlcikpCiAgICAgICAgICAg ICBmcmFtZSkpKQotCSBuZXctYnVmZmVyIGVudHJ5IGtpbGxlZC1idWZmZXJzIHNraXBwZWQp CisJIG5ldy1idWZmZXIgZW50cnkgc2tpcHBlZCkKICAgICAod2hlbiAod2luZG93LW1pbmli dWZmZXItcCB3aW5kb3cpCiAgICAgICA7OyBEb24ndCBzd2l0Y2ggaW4gbWluaWJ1ZmZlciB3 aW5kb3cuCiAgICAgICAodW5sZXNzIChzZXRxIHdpbmRvdyAobWluaWJ1ZmZlci1zZWxlY3Rl ZC13aW5kb3cpKQpAQCAtNDgzMiw5ICs0ODU4LDcgQEAgc3dpdGNoLXRvLW5leHQtYnVmZmVy CiAgICAgKGNhdGNoICdmb3VuZAogICAgICAgOzsgU2NhbiBXSU5ET1cncyBuZXh0IGJ1ZmZl cnMgZmlyc3QuCiAgICAgICAoZG9saXN0IChidWZmZXIgbmV4dC1idWZmZXJzKQotCSh3aGVu IChhbmQgKG9yIChidWZmZXItbGl2ZS1wIGJ1ZmZlcikKLQkJICAgICAgIChub3QgKHNldHEg a2lsbGVkLWJ1ZmZlcnMKLQkJCQkgIChjb25zIGJ1ZmZlciBraWxsZWQtYnVmZmVycykpKSkK Kwkod2hlbiAoYW5kIChidWZmZXItbGl2ZS1wIGJ1ZmZlcikKIAkJICAgKG5vdCAoZXEgYnVm ZmVyIG9sZC1idWZmZXIpKQogICAgICAgICAgICAgICAgICAgIChvciAobnVsbCBwcmVkKSAo ZnVuY2FsbCBwcmVkIGJ1ZmZlcikpCiAJCSAgIChzZXRxIGVudHJ5IChhc3NxIGJ1ZmZlciAo d2luZG93LXByZXYtYnVmZmVycyB3aW5kb3cpKSkpCkBAIC00ODY3LDkgKzQ4OTEsNyBAQCBz d2l0Y2gtdG8tbmV4dC1idWZmZXIKIAkod2hlbiAoYW5kIChub3QgKGVxIG5ldy1idWZmZXIg KGNhciBlbnRyeSkpKQogICAgICAgICAgICAgICAgICAgIChub3QgKGVxIG9sZC1idWZmZXIg KGNhciBlbnRyeSkpKQogICAgICAgICAgICAgICAgICAgIChzZXRxIG5ldy1idWZmZXIgKGNh ciBlbnRyeSkpCi0JCSAgIChvciAoYnVmZmVyLWxpdmUtcCBuZXctYnVmZmVyKQotCQkgICAg ICAgKG5vdCAoc2V0cSBraWxsZWQtYnVmZmVycwotCQkJCSAgKGNvbnMgbmV3LWJ1ZmZlciBr aWxsZWQtYnVmZmVycykpKSkKKwkJICAgKGJ1ZmZlci1saXZlLXAgbmV3LWJ1ZmZlcikKICAg ICAgICAgICAgICAgICAgICAob3IgKG51bGwgcHJlZCkgKGZ1bmNhbGwgcHJlZCBuZXctYnVm ZmVyKSkpCiAgICAgICAgICAgKGlmIChzd2l0Y2gtdG8tcHJldi1idWZmZXItc2tpcC1wIHNr aXAgd2luZG93IG5ldy1idWZmZXIpCiAJICAgICAgKHNldHEgc2tpcHBlZCAob3Igc2tpcHBl ZCBuZXctYnVmZmVyKSkKQEAgLTQ4ODUsMTQgKzQ5MDcsNiBAQCBzd2l0Y2gtdG8tbmV4dC1i dWZmZXIKICAgICA7OyBSZW1vdmUgYG5ldy1idWZmZXInIGZyb20gYW5kIHJlc3RvcmUgV0lO RE9XJ3MgbmV4dCBidWZmZXJzLgogICAgIChzZXQtd2luZG93LW5leHQtYnVmZmVycyB3aW5k b3cgKGRlbHEgbmV3LWJ1ZmZlciBuZXh0LWJ1ZmZlcnMpKQogCi0gICAgOzsgUmVtb3ZlIGtp bGxlZCBidWZmZXJzIGZyb20gV0lORE9XJ3MgcHJldmlvdXMgYW5kIG5leHQgYnVmZmVycy4K LSAgICAod2hlbiBraWxsZWQtYnVmZmVycwotICAgICAgKGRvbGlzdCAoYnVmZmVyIGtpbGxl ZC1idWZmZXJzKQotCShzZXQtd2luZG93LXByZXYtYnVmZmVycwotCSB3aW5kb3cgKGFzc3Et ZGVsZXRlLWFsbCBidWZmZXIgKHdpbmRvdy1wcmV2LWJ1ZmZlcnMgd2luZG93KSkpCi0JKHNl dC13aW5kb3ctbmV4dC1idWZmZXJzCi0JIHdpbmRvdyAoZGVscSBidWZmZXIgKHdpbmRvdy1u ZXh0LWJ1ZmZlcnMgd2luZG93KSkpKSkKLQogICAgIDs7IFJldHVybiBuZXctYnVmZmVyLgog ICAgIG5ldy1idWZmZXIpKQogCkBAIC01MDQ0LDYgKzUwNTgsMTggQEAgcHJldmlvdXMtYnVm ZmVyCiAgICAgICAgICAgICAgICAgIChub3QgKG9yIGV4ZWN1dGluZy1rYmQtbWFjcm8gbm9u aW50ZXJhY3RpdmUpKSkKICAgICAgICAgKHVzZXItZXJyb3IgIk5vIHByZXZpb3VzIGJ1ZmZl ciIpKSkpKSkKIAorKGRlZmN1c3RvbSBraWxsLWJ1ZmZlci1xdWl0LXdpbmRvd3MgbmlsCisg ICJOb24tbmlsIG1lYW5zIGtpbGxpbmcgYnVmZmVycyBzaGFsbCBxdWl0IHdpbmRvd3MuCitJ ZiB0aGlzIGlzIG5pbCwga2lsbGluZyBhIGJ1ZmZlciBtYXkgb25seSBkZWxldGUgd2luZG93 cyBkZWRpY2F0ZWQgdG8KK3RoYXQgYnVmZmVyLiAgT3RoZXJ3aXNlLCBga2lsbC1idWZmZXIn IGhhcyBgcXVpdC1yZXN0b3JlLXdpbmRvdycgZGVhbAord2l0aCBhbnkgd2luZG93IHNob3dp bmcgdGhlIGJ1ZmZlciB0byBiZSBraWxsZWQuICBUaGF0IGZ1bmN0aW9uIG1heQorZGVsZXRl IHN1Y2ggYSB3aW5kb3cgZXZlbiBpZiBpdCdzIG5vdCBkZWRpY2F0ZWQgdG8gaXRzIGJ1ZmZl ci4gIEFsc28sCitgZGVsZXRlLXdpbmRvd3Mtb24nIHdpbGwgdXNlIGBxdWl0LXJlc3RvcmUt d2luZG93JyBhcyBmYWxsYmFjayB3aGVuIGEKK3dpbmRvdyBjYW5ub3QgYmUgZGVsZXRlZCBv dGhlcndpc2UuIgorICA6dHlwZSAnYm9vbGVhbgorICA6dmVyc2lvbiAiMzEuMSIKKyAgOmdy b3VwICd3aW5kb3dzKQorCiAoZGVmdW4gZGVsZXRlLXdpbmRvd3Mtb24gKCZvcHRpb25hbCBi dWZmZXItb3ItbmFtZSBmcmFtZSkKICAgIkRlbGV0ZSBhbGwgd2luZG93cyBzaG93aW5nIEJV RkZFUi1PUi1OQU1FLgogQlVGRkVSLU9SLU5BTUUgbWF5IGJlIGEgYnVmZmVyIG9yIHRoZSBu YW1lIG9mIGFuIGV4aXN0aW5nIGJ1ZmZlcgpAQCAtNTA3NSwyMSArNTEwMSwyMiBAQCBkZWxl dGUtd2luZG93cy1vbgogdXNlIFxcW3VuaXZlcnNhbC1hcmd1bWVudF0gMCB0byBzcGVjaWZ5 IGFsbCB3aW5kb3dzIG9ubHkgb24KIHRoZSBjdXJyZW50IHRlcm1pbmFsJ3MgZnJhbWVzLgog Ci1JZiBhIGZyYW1lJ3Mgcm9vdCB3aW5kb3cgc2hvd3MgdGhlIGJ1ZmZlciBzcGVjaWZpZWQg YnkKLUJVRkZFUi1PUi1OQU1FIGFuZCBpcyBkZWRpY2F0ZWQgdG8gdGhhdCBidWZmZXIgYW5k IHRoYXQgZnJhbWUKLWRvZXMgbm90IGhvc3QgdGhlIGFjdGl2ZSBtaW5pYnVmZmVyIHdpbmRv dyBhbmQgdGhlcmUgaXMgYXQgbGVhc3QKLW9uZSBvdGhlciBmcmFtZSBvbiB0aGF0IGZyYW1l J3MgdGVybWluYWwsIGRlbGV0ZSB0aGF0IGZyYW1lLgotT3RoZXJ3aXNlLCBkbyBub3QgZGVs ZXRlIGEgZnJhbWUncyByb290IHdpbmRvdyBpZiBpdCBzaG93cyB0aGUKLWJ1ZmZlciBzcGVj aWZpZWQgYnkgQlVGRkVSLU9SLU5BTUUgYW5kIGRvIG5vdCBkZWxldGUgYW55IGZyYW1lJ3MK LW1haW4gd2luZG93IHNob3dpbmcgdGhhdCBidWZmZXIgZWl0aGVyLiAgUmF0aGVyLCBpbiBh bnkgc3VjaAotY2FzZSwgY2FsbCBgc3dpdGNoLXRvLXByZXYtYnVmZmVyJyB0byBzaG93IGFu b3RoZXIgYnVmZmVyIGluIHRoYXQKLXdpbmRvdyBhbmQgbWFrZSBzdXJlIHRoZSB3aW5kb3cg aXMgbm8gbW9yZSBkZWRpY2F0ZWQgdG8gaXRzCi1idWZmZXIuCi0KLUlmIHRoZSBidWZmZXIg c3BlY2lmaWVkIGJ5IEJVRkZFUi1PUi1OQU1FIGlzIHNob3duIGluIGEKLW1pbmlidWZmZXIg d2luZG93LCBkbyBub3RoaW5nIGZvciB0aGF0IHdpbmRvdy4gIEZvciBhbnkgd2luZG93Ci10 aGF0IGRvZXMgbm90IHNob3cgdGhhdCBidWZmZXIsIHJlbW92ZSB0aGUgYnVmZmVyIGZyb20g dGhhdAotd2luZG93J3MgbGlzdHMgb2YgcHJldmlvdXMgYW5kIG5leHQgYnVmZmVycy4iCitJ ZiBhIGZyYW1lJ3Mgcm9vdCB3aW5kb3cgc2hvd3MgdGhlIGJ1ZmZlciBzcGVjaWZpZWQgYnkg QlVGRkVSLU9SLU5BTUUsCitpcyBkZWRpY2F0ZWQgdG8gdGhhdCBidWZmZXIsIHRoYXQgZnJh bWUgZG9lcyBub3QgaG9zdCB0aGUgYWN0aXZlCittaW5pYnVmZmVyIHdpbmRvdyBhbmQgdGhl cmUgaXMgYXQgbGVhc3Qgb25lIG90aGVyIGZyYW1lIG9uIHRoYXQgZnJhbWUncwordGVybWlu YWwsIGRlbGV0ZSB0aGF0IGZyYW1lLiAgT3RoZXJ3aXNlLCBkbyBub3QgZGVsZXRlIGEgZnJh bWUncyByb290Cit3aW5kb3cgaWYgaXQgc2hvd3MgdGhlIGJ1ZmZlciBzcGVjaWZpZWQgYnkg QlVGRkVSLU9SLU5BTUUgYW5kIGRvIG5vdAorZGVsZXRlIGFueSBmcmFtZSdzIG1haW4gd2lu ZG93IHNob3dpbmcgdGhhdCBidWZmZXIgZWl0aGVyLiAgUmF0aGVyLCBpbgorYW55IHN1Y2gg Y2FzZSwgY2FsbCBlaXRoZXIgYHF1aXQtcmVzdG9yZS13aW5kb3cnIChwcm92aWRlZAorYGtp bGwtYnVmZmVyLXF1aXQtd2luZG93cycgaXMgbm9uLW5pbCkgb3IgYHN3aXRjaC10by1wcmV2 LWJ1ZmZlcicgdG8KK3Nob3cgYW5vdGhlciBidWZmZXIgaW4gdGhhdCB3aW5kb3cgYW5kIG1h a2Ugc3VyZSB0aGUgd2luZG93IGlzIG5vIG1vcmUKK2RlZGljYXRlZCB0byBpdHMgYnVmZmVy LgorCitJZiB0aGUgYnVmZmVyIHNwZWNpZmllZCBieSBCVUZGRVItT1ItTkFNRSBpcyBzaG93 biBpbiBhIG1pbmlidWZmZXIKK3dpbmRvdywgZG8gbm90aGluZyBmb3IgdGhhdCB3aW5kb3cu ICBGb3IgYW55IHdpbmRvdyB0aGF0IGRvZXMgbm90IHNob3cKK3RoYXQgYnVmZmVyLCByZW1v dmUgdGhlIGJ1ZmZlciBmcm9tIHRoYXQgd2luZG93J3MgbGlzdHMgb2YgcHJldmlvdXMgYW5k CituZXh0IGJ1ZmZlcnMgYW5kIHJlbW92ZSBhbnkgYHF1aXQtcmVzdG9yZScgYW5kIGBxdWl0 LXJlc3RvcmUtcHJldicKK3BhcmFtZXRlcnMgbmFtaW5nIGl0LiIKICAgKGludGVyYWN0aXZl CiAgICAobGV0ICgoZnJhbWUgKGNvbmQKICAgICAgICAgICAgICAgICAgKChhbmQgKG51bWJl cnAgY3VycmVudC1wcmVmaXgtYXJnKQpAQCAtNTEwNywxMSArNTEzNCwxMiBAQCBkZWxldGUt d2luZG93cy1vbgogICAgICAgICAgICBmcmFtZSkpKQogICAobGV0ICgoYnVmZmVyICh3aW5k b3ctbm9ybWFsaXplLWJ1ZmZlciBidWZmZXItb3ItbmFtZSkpCiAJOzsgSGFuZGxlIHRoZSAi aW52ZXJ0ZWQiIG1lYW5pbmcgb2YgdGhlIEZSQU1FIGFyZ3VtZW50IHdydCBvdGhlcgotCTs7 IGB3aW5kb3ctbGlzdC0xJyBiYXNlZCBmdW5jdGlvbi4KLQkoYWxsLWZyYW1lcyAoY29uZCAo KG5vdCBmcmFtZSkgdCkgKChlcSBmcmFtZSB0KSBuaWwpICh0IGZyYW1lKSkpKQotICAgIChk b2xpc3QgKHdpbmRvdyAod2luZG93LWxpc3QtMSBuaWwgbmlsIGFsbC1mcmFtZXMpKQorCTs7 IGB3aW5kb3ctbGlzdC0xJyBiYXNlZCBmdW5jdGlvbnMuCisJKGZyYW1lcyAoY29uZCAoKG5v dCBmcmFtZSkgdCkgKChlcSBmcmFtZSB0KSBuaWwpICh0IGZyYW1lKSkpKQorICAgIChkb2xp c3QgKHdpbmRvdyAod2luZG93LWxpc3QtMSBuaWwgJ25vbWluaSBmcmFtZXMpKQogICAgICAg KGlmIChlcSAod2luZG93LWJ1ZmZlciB3aW5kb3cpIGJ1ZmZlcikKLQkgIChsZXQgKChkZWxl dGFibGUgKHdpbmRvdy1kZWxldGFibGUtcCB3aW5kb3cpKQorCSAgOzsgRG9uJ3QgcnVuICd3 aW5kb3ctZGVsZXRhYmxlLWZ1bmN0aW9ucycuCisJICAobGV0ICgoZGVsZXRhYmxlICh3aW5k b3ctZGVsZXRhYmxlLXAgd2luZG93IHQpKQogICAgICAgICAgICAgICAgIChkZWRpY2F0ZWQg KHdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cpKSkKIAkgICAgKGNvbmQKIAkgICAgICgoYW5k IChlcSBkZWxldGFibGUgJ2ZyYW1lKSBkZWRpY2F0ZWQpCkBAIC01MTIwLDQzICs1MTQ4LDc3 IEBAIGRlbGV0ZS13aW5kb3dzLW9uCiAJICAgICAoKGVxIGRlbGV0YWJsZSB0KQogCSAgICAg IDs7IERlbGV0ZSB3aW5kb3cuCiAJICAgICAgKGRlbGV0ZS13aW5kb3cgd2luZG93KSkKKwkg ICAgIChraWxsLWJ1ZmZlci1xdWl0LXdpbmRvd3MKKwkgICAgICAocXVpdC1yZXN0b3JlLXdp bmRvdyB3aW5kb3cgJ2J1cnkpCisJICAgICAgKHdoZW4gKHdpbmRvdy1saXZlLXAgd2luZG93 KQorCQk7OyBVbnJlY29yZCBCVUZGRVIgaW4gdGhpcyB3aW5kb3cuCisJCSh1bnJlY29yZC13 aW5kb3ctYnVmZmVyIHdpbmRvdyBidWZmZXIgdCkpKQogCSAgICAgKHQKIAkgICAgICA7OyBJ biB3aW5kb3cgc3dpdGNoIHRvIHByZXZpb3VzIGJ1ZmZlci4KIAkgICAgICAoc2V0LXdpbmRv dy1kZWRpY2F0ZWQtcCB3aW5kb3cgbmlsKQogCSAgICAgIChzd2l0Y2gtdG8tcHJldi1idWZm ZXIgd2luZG93ICdidXJ5KQotICAgICAgICAgICAgICA7OyBSZXN0b3JlIHRoZSBkZWRpY2F0 ZWQgJ3NpZGUnIGZsYWcuCi0gICAgICAgICAgICAgICh3aGVuIChlcSBkZWRpY2F0ZWQgJ3Np ZGUpCi0gICAgICAgICAgICAgICAgKHNldC13aW5kb3ctZGVkaWNhdGVkLXAgd2luZG93ICdz aWRlKSkpKSkKKwkgICAgICA7OyBSZXN0b3JlIHRoZSBkZWRpY2F0ZWQgJ3NpZGUnIGZsYWcu CisJICAgICAgKHdoZW4gKGVxIGRlZGljYXRlZCAnc2lkZSkKKyAgICAgICAgICAgICAgICAo c2V0LXdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cgJ3NpZGUpKQorCSAgICAgICh3aGVuICh3 aW5kb3ctbGl2ZS1wIHdpbmRvdykKKwkJOzsgVW5yZWNvcmQgQlVGRkVSIGluIHRoaXMgd2lu ZG93LgorCQkodW5yZWNvcmQtd2luZG93LWJ1ZmZlciB3aW5kb3cgYnVmZmVyIHQpKSkpKQog CTs7IElmIGEgd2luZG93IGRvZXNuJ3Qgc2hvdyBCVUZGRVIsIHVucmVjb3JkIEJVRkZFUiBp biBpdC4KLQkodW5yZWNvcmQtd2luZG93LWJ1ZmZlciB3aW5kb3cgYnVmZmVyKSkpKSkKKwko dW5yZWNvcmQtd2luZG93LWJ1ZmZlciB3aW5kb3cgYnVmZmVyIHQpKSkpKQogCiAoZGVmdW4g cmVwbGFjZS1idWZmZXItaW4td2luZG93cyAoJm9wdGlvbmFsIGJ1ZmZlci1vci1uYW1lKQog ICAiUmVwbGFjZSBCVUZGRVItT1ItTkFNRSB3aXRoIHNvbWUgb3RoZXIgYnVmZmVyIGluIGFs bCB3aW5kb3dzIHNob3dpbmcgaXQuCi1CVUZGRVItT1ItTkFNRSBtYXkgYmUgYSBidWZmZXIg b3IgdGhlIG5hbWUgb2YgYW4gZXhpc3RpbmcgYnVmZmVyCi1hbmQgZGVmYXVsdHMgdG8gdGhl IGN1cnJlbnQgYnVmZmVyLgotCi1XaXRoIHRoZSBleGNlcHRpb24gb2Ygc2lkZSB3aW5kb3dz LCB3aGVuIGEgd2luZG93IHNob3dpbmcgQlVGRkVSLU9SLU5BTUUKLWlzIGRlZGljYXRlZCwg dGhhdCB3aW5kb3cgaXMgZGVsZXRlZC4gIElmIHRoYXQgd2luZG93IGlzIHRoZSBvbmx5IHdp bmRvdwotb24gaXRzIGZyYW1lLCB0aGUgZnJhbWUgaXMgZGVsZXRlZCB0b28gd2hlbiB0aGVy ZSBhcmUgb3RoZXIgZnJhbWVzIGxlZnQuCi1JZiB0aGVyZSBhcmUgbm8gb3RoZXIgZnJhbWVz IGxlZnQsIHNvbWUgb3RoZXIgYnVmZmVyIGlzIGRpc3BsYXllZCBpbiB0aGF0CitCVUZGRVIt T1ItTkFNRSBtYXkgYmUgYSBidWZmZXIgb3IgdGhlIG5hbWUgb2YgYW4gZXhpc3RpbmcgYnVm ZmVyIGFuZAorZGVmYXVsdHMgdG8gdGhlIGN1cnJlbnQgYnVmZmVyLiAgTWluaWJ1ZmZlciB3 aW5kb3dzIGFyZSBub3QgY29uc2lkZXJlZC4KKworSWYgdGhlIG9wdGlvbiBga2lsbC1idWZm ZXItcXVpdC13aW5kb3dzJyBpcyBuaWwsIGJlaGF2ZSBhcyBmb2xsb3dzOiBXaXRoCit0aGUg ZXhjZXB0aW9uIG9mIHNpZGUgd2luZG93cywgd2hlbiBhIHdpbmRvdyBzaG93aW5nIEJVRkZF Ui1PUi1OQU1FIGlzCitkZWRpY2F0ZWQsIGRlbGV0ZSB0aGF0IHdpbmRvdy4gIElmIHRoYXQg d2luZG93IGlzIHRoZSBvbmx5IHdpbmRvdyBvbiBpdHMKK2ZyYW1lLCBkZWxldGUgaXRzIGZy YW1lIHdoZW4gdGhlcmUgYXJlIG90aGVyIGZyYW1lcyBsZWZ0LiAgSW4gYW55IG90aGVyCitj YXNlLCBjYWxsIGBzd2l0Y2gtdG8tcHJldi1idWZmZXInIHRvIGRpc3BsYXkgc29tZSBvdGhl ciBidWZmZXIgaW4gdGhhdAogd2luZG93LgogCi1UaGlzIGZ1bmN0aW9uIHJlbW92ZXMgdGhl IGJ1ZmZlciBkZW5vdGVkIGJ5IEJVRkZFUi1PUi1OQU1FIGZyb20KLWFsbCB3aW5kb3ctbG9j YWwgYnVmZmVyIGxpc3RzLiIKK0lmIGBraWxsLWJ1ZmZlci1xdWl0LXdpbmRvd3MnIGlzIG5v bi1uaWwsIGNhbGwgYHF1aXQtcmVzdG9yZS13aW5kb3cnIGZvcgorYW55IHdpbmRvdyBzaG93 aW5nIEJVRkZFUi1PUi1OQU1FIHdpdGggdGhlIGFyZ3VtZW50IEJVUlktT1ItS0lMTCBzZXQg dG8KK2BraWxsaW5nJyB0byBhdm9pZCB0aGF0IHRoZSBsYXR0ZXIga2lsbHMgdGhlIGJ1ZmZl ciBwcmVtYXR1cmVseS4KKworSW4gZWl0aGVyIGNhc2UsIHJlbW92ZSB0aGUgYnVmZmVyIGRl bm90ZWQgYnkgQlVGRkVSLU9SLU5BTUUgZnJvbSB0aGUKK2xpc3RzIG9mIHByZXZpb3VzIGFu ZCBuZXh0IGJ1ZmZlcnMgb2YgYWxsIHdpbmRvd3MgYW5kIHJlbW92ZSBhbnkKK2BxdWl0LXJl c3RvcmUnIG9yIGBxdWl0LXJlc3RvcmUtcHJldicgcGFyYW1ldGVycyBtZW50aW9uaW5nIGl0 LgorCitJZiwgZm9yIGFueSB3aW5kb3cgc2hvd2luZyBCVUZGRVItT1ItTkFNRSBydW5uaW5n IHRoZSBhYm5vcm1hbCBob29rCitgd2luZG93LWRlbGV0YWJsZS1mdW5jdGlvbnMnIHJldHVy bnMgbmlsLCBkbyBub3QgZGVsZXRlIHRoYXQgd2luZG93IGJ1dAorc2hvdyBzb21lIG90aGVy IGJ1ZmZlciBpbiB0aGF0IHdpbmRvdy4KKworVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgYnkg YGtpbGwtYnVmZmVyJyB3aGljaCBraWxscyB0aGUgYnVmZmVyCitzcGVjaWZpZWQgYnkgYGJ1 ZmZlci1vci1uYW1lJyBhZnRlcndhcmRzLiAgSXQgbmV2ZXIga2lsbHMgYSBidWZmZXIgYnkK K2l0c2VsZi4iCiAgIChpbnRlcmFjdGl2ZSAiYkJ1ZmZlciB0byByZXBsYWNlOiAiKQogICAo bGV0ICgoYnVmZmVyICh3aW5kb3ctbm9ybWFsaXplLWJ1ZmZlciBidWZmZXItb3ItbmFtZSkp KQorICAgIDs7IFNjYW4gYWxsIHdpbmRvd3MuICBXZSBoYXZlIHRvIHVucmVjb3JkIEJVRkZF Ui1PUi1OQU1FIGluIHRob3NlCisgICAgOzsgbm90IHNob3dpbmcgaXQuCiAgICAgKGRvbGlz dCAod2luZG93ICh3aW5kb3ctbGlzdC0xIG5pbCBuaWwgdCkpCi0gICAgICAoaWYgKGVxICh3 aW5kb3ctYnVmZmVyIHdpbmRvdykgYnVmZmVyKQotICAgICAgICAgIDs7IERlbGV0ZSBhIGRl ZGljYXRlZCB3aW5kb3cgdW5sZXNzIGl0IGlzIGEgc2lkZSB3aW5kb3cuCi0gICAgICAgICAg KGxldCAoKGRlZGljYXRlZC1zaWRlIChlcSAod2luZG93LWRlZGljYXRlZC1wIHdpbmRvdykg J3NpZGUpKSkKLSAgICAgICAgICAgICh3aGVuIChvciBkZWRpY2F0ZWQtc2lkZSAobm90ICh3 aW5kb3ctLWRlbGV0ZSB3aW5kb3cgdCB0KSkpCi0gICAgICAgICAgICAgIDs7IFN3aXRjaCB0 byBhbm90aGVyIGJ1ZmZlciBpbiB0aGF0IHdpbmRvdy4KLSAgICAgICAgICAgICAgKHNldC13 aW5kb3ctZGVkaWNhdGVkLXAgd2luZG93IG5pbCkKLSAgICAgICAgICAgICAgKGlmIChzd2l0 Y2gtdG8tcHJldi1idWZmZXIgd2luZG93ICdraWxsKQorICAgICAgKHdoZW4gKGVxICh3aW5k b3ctYnVmZmVyIHdpbmRvdykgYnVmZmVyKQorCShpZiBraWxsLWJ1ZmZlci1xdWl0LXdpbmRv d3MKKwkgICAgKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93ICdraWxsaW5nKQorCSAgKGxl dCAoKGRlZGljYXRlZC1zaWRlIChlcSAod2luZG93LWRlZGljYXRlZC1wIHdpbmRvdykgJ3Np ZGUpKSkKKyAgICAgICAgICAgICh3aGVuIChvciBkZWRpY2F0ZWQtc2lkZSAobm90ICh3aW5k b3ctLWRlbGV0ZSB3aW5kb3cgdCAna2lsbCkpKQorCSAgICAgIDs7IFN3aXRjaCB0byBhbm90 aGVyIGJ1ZmZlciBpbiB0aGF0IHdpbmRvdy4KKwkgICAgICAoc2V0LXdpbmRvdy1kZWRpY2F0 ZWQtcCB3aW5kb3cgbmlsKQorCSAgICAgIChpZiAoc3dpdGNoLXRvLXByZXYtYnVmZmVyIHdp bmRvdyAna2lsbCkKICAgICAgICAgICAgICAgICAgIChhbmQgZGVkaWNhdGVkLXNpZGUgKHNl dC13aW5kb3ctZGVkaWNhdGVkLXAgd2luZG93ICdzaWRlKSkKLSAgICAgICAgICAgICAgICAo d2luZG93LS1kZWxldGUgd2luZG93IG5pbCAna2lsbCkpKSkKLQk7OyBVbnJlY29yZCBCVUZG RVIgaW4gV0lORE9XLgotCSh1bnJlY29yZC13aW5kb3ctYnVmZmVyIHdpbmRvdyBidWZmZXIp KSkpKQorCQkod2luZG93LS1kZWxldGUgd2luZG93IG5pbCAna2lsbCkpKSkpKQorCisJKHdo ZW4gKHdpbmRvdy1saXZlLXAgd2luZG93KQorCSAgOzsgSWYgdGhlIGZvdXJ0aCBlbGVtZW50 cyBvZiB0aGUgJ3F1aXQtcmVzdG9yZScgb3IKKwkgIDs7ICdxdWl0LXJlc3RvcmUtcHJldicg cGFyYW1ldGVycyBlcXVhbCBCVUZGRVIsIHRoZXNlCisJICA7OyBwYXJhbWV0ZXJzIGJlY29t ZSB1c2VsZXNzIC0gaW4gJ3F1aXQtcmVzdG9yZS13aW5kb3cnIHRoZQorCSAgOzsgZm91cnRo IGVsZW1lbnQgbXVzdCBlcXVhbCB0aGUgYnVmZmVyIG9mIFdJTkRPVyBpbiBvcmRlciB0bwor CSAgOzsgdXNlIHRoYXQgcGFyYW1ldGVyLiAgSWYgQlVGRkVSIGlzIG1lbnRpb25lZCBpbiB0 aGUgc2Vjb25kCisJICA7OyBlbGVtZW50IG9mIHRoZSBwYXJhbWV0ZXIsICdxdWl0LXJlc3Rv cmUtd2luZG93JyBjYW5ub3QKKwkgIDs7IHBvc3NpYmx5IHNob3cgQlVGRkVSIGluc3RlYWQ7 IHNvIHRoaXMgcGFyYW1ldGVyIGJlY29tZXMKKwkgIDs7IHVzZWxlc3MgdG9vLgorCSAgKHVu cmVjb3JkLXdpbmRvdy1idWZmZXIgd2luZG93IGJ1ZmZlciB0KSkpKSkKIAogKGRlZmN1c3Rv bSBxdWl0LXdpbmRvdy1ob29rIG5pbAogICAiSG9vayBydW4gYmVmb3JlIHBlcmZvcm1pbmcg YW55IG90aGVyIGFjdGlvbnMgaW4gdGhlIGBxdWl0LXdpbmRvdycgY29tbWFuZC4iCkBAIC01 MTY0LDYgKzUyMjYsMjMgQEAgcXVpdC13aW5kb3ctaG9vawogICA6dmVyc2lvbiAiMjcuMSIK ICAgOmdyb3VwICd3aW5kb3dzKQogCisoZGVmY3VzdG9tIHF1aXQtcmVzdG9yZS13aW5kb3ct bm8tc3dpdGNoIG5pbAorICAiTm9uLW5pbCBtZWFucyBgcXVpdC1yZXN0b3JlLXdpbmRvdycg cHJlZmVyYWJseSB3b24ndCBzd2l0Y2ggYnVmZmVycy4KK0lmIHRoaXMgaXMgbmlsLCBgcXVp dC1yZXN0b3JlLXdpbmRvdycgdW5jb25kaXRpb25hbGx5IGNhbGxzCitgc3dpdGNoLXRvLXBy ZXYtYnVmZmVyJyB1bmxlc3MgdGhlIHdpbmRvdyBpcyBkZWRpY2F0ZWQgb3IgaGFzIGJlZW4g bWFkZQorYnkgYGRpc3BsYXktYnVmZmVyJy4gIElmIHRoaXMgaXMgdCwgYHF1aXQtcmVzdG9y ZS13aW5kb3cnIHdpbGwgdHJ5IHRvCitkZWxldGUgdGhlIHdpbmRvdyB1bmxlc3MgYSBsaXZl IGJ1ZmZlciBleGlzdHMgdGhhdCB3YXMgcHJldmlvdXNseSBzaG93bgoraW4gdGhhdCB3aW5k b3cuICBJZiB0aGlzIGlzIHRoZSBzeW1ib2wgYHNraXAtZmlyc3QnLCBpdCB3aWxsIHN3aXRj aCB0byBhCitwcmV2aW91cyBidWZmZXIgb25seSBpZiB0aGVyZSBhcmUgYXQgbGVhc3QgdHdv IG9mIHRoZW0uCisKK1RoZSBuZXQgZWZmZWN0IG9mIG1ha2luZyB0aGlzIG5vbi1uaWwgaXMg dGhhdCBpZiBgcXVpdC1yZXN0b3JlLXdpbmRvdycKK2RvZXNuJ3QgZmluZCBhIHN1aXRhYmxl IGJ1ZmZlciBwcmV2aW91c2x5IHNob3duIGluIHRoZSB3aW5kb3csIGl0IHdpbGwKK3JhdGhl ciB0cnkgdG8gZGVsZXRlIHRoZSB3aW5kb3cgKGFuZCBtYXliZSBpdHMgZnJhbWUpIHRoYW4g c2hvdyBhIGJ1ZmZlcgordGhlIHdpbmRvdyBoYXMgbmV2ZXIgc2hvd24gYmVmb3JlLiIKKyAg OnR5cGUgJ2Jvb2xlYW4KKyAgOnZlcnNpb24gIjMxLjEiCisgIDpncm91cCAnd2luZG93cykK KwogKGRlZnVuIHdpbmRvdy0tcXVpdC1yZXN0b3JlLXNlbGVjdC13aW5kb3cgKHdpbmRvdykK ICAgIlNlbGVjdCBXSU5ET1cgYWZ0ZXIgaGF2aW5nIHF1aXQgYW5vdGhlciBvbmUuCiBEbyBu b3Qgc2VsZWN0IGFuIGluYWN0aXZlIG1pbmlidWZmZXIgd2luZG93LiIKQEAgLTUxNzYsMTcg KzUyNTUsMjEgQEAgcXVpdC1yZXN0b3JlLXdpbmRvdwogICAiUXVpdCBXSU5ET1cgYW5kIGRl YWwgd2l0aCBpdHMgYnVmZmVyLgogV0lORE9XIG11c3QgYmUgYSBsaXZlIHdpbmRvdyBhbmQg ZGVmYXVsdHMgdG8gdGhlIHNlbGVjdGVkIG9uZS4KIAotQWNjb3JkaW5nIHRvIGluZm9ybWF0 aW9uIHN0b3JlZCBpbiBXSU5ET1cncyBgcXVpdC1yZXN0b3JlJyB3aW5kb3cKLXBhcmFtZXRl ciBlaXRoZXIgKDEpIGRlbGV0ZSBXSU5ET1cgYW5kIGl0cyBmcmFtZSwgKDIpIGRlbGV0ZQot V0lORE9XIGJ1dCBsZWF2ZSBpdHMgZnJhbWUgYWxvbmUsICgzKSByZXN0b3JlIHRoZSBidWZm ZXIKLXByZXZpb3VzbHkgc2hvd24gaW4gV0lORE9XLCBvciAoNCkgbWFrZSBXSU5ET1cgZGlz cGxheSBzb21lIG90aGVyCi1idWZmZXIuICBJZiBXSU5ET1cgaXMgbm90IGRlbGV0ZWQsIHJl c2V0IGl0cyBgcXVpdC1yZXN0b3JlJwotcGFyYW1ldGVyIHRvIG5pbC4gIFNlZSBJbmZvIG5v ZGUgYChlbGlzcCkgUXVpdHRpbmcgV2luZG93cycgZm9yCi1tb3JlIGRldGFpbHMuCitBY2Nv cmRpbmcgdG8gaW5mb3JtYXRpb24gc3RvcmVkIGluIFdJTkRPVydzIGBxdWl0LXJlc3RvcmUn IGFuZAorYHF1aXQtcmVzdG9yZS1wcmV2JyBwYXJhbWV0ZXJzIGVpdGhlciAoMSkgZGVsZXRl IFdJTkRPVyBhbmQgaXRzCitmcmFtZSwgKDIpIGRlbGV0ZSBXSU5ET1cgYnV0IGxlYXZlIGl0 cyBmcmFtZSBhbG9uZSwgKDMpIHJlc3RvcmUgdGhlCitidWZmZXIgcHJldmlvdXNseSBzaG93 biBpbiBXSU5ET1csIG9yICg0KSBtYWtlIFdJTkRPVyBkaXNwbGF5IHNvbWUgb3RoZXIKK2J1 ZmZlci4gIEluIGNhc2UgKDMpIHNldCBhbnkgb2YgdGhlc2UgcGFyYW1ldGVycyB0byBuaWwg aWYgaXQgaGFzIGJlZW4KK3VzZWQgdG8gcmVzdG9yZSB0aGUgcHJldmlvdXNseSBzaG93biBi dWZmZXIuICBTZWUgSW5mbyBub2RlIGAoZWxpc3ApCitRdWl0dGluZyBXaW5kb3dzJyBmb3Ig bW9yZSBkZXRhaWxzLgogCi1JZiBXSU5ET1cncyBkZWRpY2F0ZWQgZmxhZyBpcyB0LCB0cnkg dG8gZGVsZXRlIFdJTkRPVy4gIElmIGl0Ci1lcXVhbHMgdGhlIHZhbHVlIGBzaWRlJywgcmVz dG9yZSB0aGF0IHZhbHVlIHdoZW4gV0lORE9XIGlzIG5vdAotZGVsZXRlZC4KK0lmIFdJTkRP VydzIGRlZGljYXRlZCBmbGFnIGlzIHQsIHRyeSB0byBkZWxldGUgV0lORE9XLiAgSWYgaXQg ZXF1YWxzIHRoZQordmFsdWUgYHNpZGUnLCByZXN0b3JlIHRoYXQgdmFsdWUgd2hlbiBXSU5E T1cgaXMgbm90IGRlbGV0ZWQuICBXaGV0aGVyCitXSU5ET1cgb3IgaXRzIGZyYW1lIGdldCBk ZWxldGVkIGNhbiBiZSBmdXJ0aGVyIGNvbnRyb2xsZWQgdmlhIHRoZSBvcHRpb24KK2BxdWl0 LXJlc3RvcmUtd2luZG93LW5vLXN3aXRjaCcuCisKK0lmIHJ1bm5pbmcgdGhlIGFibm9ybWFs IGhvb2sgYHdpbmRvdy1kZWxldGFibGUtZnVuY3Rpb25zJyByZXR1cm5zIG5pbCwKK2RvIG5v dCBkZWxldGUgV0lORE9XIGJ1dCBzaG93IHNvbWUgb3RoZXIgYnVmZmVyIGluIGl0LgogCiBP cHRpb25hbCBzZWNvbmQgYXJndW1lbnQgQlVSWS1PUi1LSUxMIHRlbGxzIGhvdyB0byBwcm9j ZWVkIHdpdGgKIHRoZSBidWZmZXIgb2YgV0lORE9XLiAgVGhlIGZvbGxvd2luZyB2YWx1ZXMg YXJlIGhhbmRsZWQ6CkBAIC01MjA2LDIxICs1Mjg5LDMxIEBAIHF1aXQtcmVzdG9yZS13aW5k b3cKICAgbW9zdCByZWxpYWJsZSByZW1lZHkgdG8gbm90IGhhdmUgYHN3aXRjaC10by1wcmV2 LWJ1ZmZlcicgc3dpdGNoCiAgIHRvIHRoaXMgYnVmZmVyIGFnYWluIHdpdGhvdXQga2lsbGlu ZyB0aGUgYnVmZmVyLgogCi1ga2lsbCcgbWVhbnMgdG8ga2lsbCBXSU5ET1cncyBidWZmZXIu IgorYGtpbGwnIG1lYW5zIHRvIGtpbGwgV0lORE9XJ3MgYnVmZmVyLgorCitga2lsbGluZycg aXMgbGlrZSBga2lsbCcgYnV0IG1lYW5zIHRoYXQgV0lORE9XJ3MgYnVmZmVyIHdpbGwgZ2V0 IGtpbGxlZAorZWxzZXdoZXJlLiAgVGhpcyB2YWx1ZSBpcyB1c2VkIGJ5IGByZXBsYWNlLWJ1 ZmZlci1pbi13aW5kb3dzJyBhbmQKK2BxdWl0LXdpbmRvd3Mtb24nLgorCitgYnVyeWluZycg aXMgbGlrZSBgYnVyeScgYnV0IG1lYW5zIHRoYXQgV0lORE9XJ3MgYnVmZmVyIHdpbGwgZ2V0 IGJ1cmllZAorZWxzZXdoZXJlLiAgVGhpcyB2YWx1ZSBpcyB1c2VkIGJ5IGBxdWl0LXdpbmRv d3Mtb24nLiIKICAgKHNldHEgd2luZG93ICh3aW5kb3ctbm9ybWFsaXplLXdpbmRvdyB3aW5k b3cgdCkpCiAgIChsZXQqICgoYnVmZmVyICh3aW5kb3ctYnVmZmVyIHdpbmRvdykpCiAJIChx dWl0LXJlc3RvcmUgKHdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUpKQor CSAocXVpdC1yZXN0b3JlLXByZXYgKHdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJl c3RvcmUtcHJldikpCiAJIChxdWl0LXJlc3RvcmUtMiAobnRoIDIgcXVpdC1yZXN0b3JlKSkK KwkgKHF1aXQtcmVzdG9yZS1wcmV2LTIgKG50aCAyIHF1aXQtcmVzdG9yZS1wcmV2KSkKICAg ICAgICAgIChwcmV2LWJ1ZmZlciAoY2F0Y2ggJ3ByZXYtYnVmZmVyCiAgICAgICAgICAgICAg ICAgICAgICAgICAoZG9saXN0IChidWYgKHdpbmRvdy1wcmV2LWJ1ZmZlcnMgd2luZG93KSkK ICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVubGVzcyAoZXEgKGNhciBidWYpIGJ1ZmZl cikKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodGhyb3cgJ3ByZXYtYnVmZmVyIChj YXIgYnVmKSkpKSkpCiAgICAgICAgICAoZGVkaWNhdGVkICh3aW5kb3ctZGVkaWNhdGVkLXAg d2luZG93KSkKLQkgcXVhZCBlbnRyeSkKKwkgcXVhZCBlbnRyeSByZXNldC1wcmV2KQogICAg IChjb25kCiAgICAgIDs7IEZpcnN0IHRyeSB0byBkZWxldGUgZGVkaWNhdGVkIHdpbmRvd3Mg dGhhdCBhcmUgbm90IHNpZGUgd2luZG93cy4KICAgICAgKChhbmQgZGVkaWNhdGVkIChub3Qg KGVxIGRlZGljYXRlZCAnc2lkZSkpCi0gICAgICAgICAgICh3aW5kb3ctLWRlbGV0ZSB3aW5k b3cgJ2RlZGljYXRlZCAoZXEgYnVyeS1vci1raWxsICdraWxsKSkpCisgICAgICAgICAgICh3 aW5kb3ctLWRlbGV0ZQorCSAgICB3aW5kb3cgJ2RlZGljYXRlZCAobWVtcSBidXJ5LW9yLWtp bGwgJyhraWxsIGtpbGxpbmcpKSkpCiAgICAgICA7OyBJZiB0aGUgcHJldmlvdXNseSBzZWxl Y3RlZCB3aW5kb3cgaXMgc3RpbGwgYWxpdmUsIHNlbGVjdCBpdC4KICAgICAgICh3aW5kb3ct LXF1aXQtcmVzdG9yZS1zZWxlY3Qtd2luZG93IHF1aXQtcmVzdG9yZS0yKSkKICAgICAgKChh bmQgKG5vdCBwcmV2LWJ1ZmZlcikKQEAgLTUyNDEsMTAgKzUzMzQsMjcgQEAgcXVpdC1yZXN0 b3JlLXdpbmRvdwogCSAgICh3aW5kb3ctLWRlbGV0ZSB3aW5kb3cgbmlsIChlcSBidXJ5LW9y LWtpbGwgJ2tpbGwpKSkKICAgICAgIDs7IElmIHRoZSBwcmV2aW91c2x5IHNlbGVjdGVkIHdp bmRvdyBpcyBzdGlsbCBhbGl2ZSwgc2VsZWN0IGl0LgogICAgICAgKHdpbmRvdy0tcXVpdC1y ZXN0b3JlLXNlbGVjdC13aW5kb3cgcXVpdC1yZXN0b3JlLTIpKQotICAgICAoKGFuZCAobGlz dHAgKHNldHEgcXVhZCAobnRoIDEgcXVpdC1yZXN0b3JlKSkpCi0JICAgKGJ1ZmZlci1saXZl LXAgKGNhciBxdWFkKSkKLQkgICAoZXEgKG50aCAzIHF1aXQtcmVzdG9yZSkgYnVmZmVyKSkK LSAgICAgIDs7IFNob3cgYW5vdGhlciBidWZmZXIgc3RvcmVkIGluIHF1aXQtcmVzdG9yZSBw YXJhbWV0ZXIuCisgICAgICgoYW5kIChvciAoYW5kIHF1aXQtcmVzdG9yZS13aW5kb3ctbm8t c3dpdGNoIChub3QgcHJldi1idWZmZXIpKQorCSAgICAgICA7OyBJZ25vcmUgZmlyc3Qgb2Yg dGhlIHByZXZpb3VzIGJ1ZmZlcnMgaWYKKwkgICAgICAgOzsgJ3F1aXQtcmVzdG9yZS13aW5k b3ctbm8tc3dpdGNoJyBzYXlzIHNvLgorCSAgICAgICAoYW5kIChlcSBxdWl0LXJlc3RvcmUt d2luZG93LW5vLXN3aXRjaCAnc2tpcC1maXJzdCkKKwkJICAgIChub3QgKGNkciAod2luZG93 LXByZXYtYnVmZmVycyB3aW5kb3cpKSkpKQorCSAgIDs7IERlbGV0ZSBXSU5ET1cgaWYgcG9z c2libGUuCisJICAgKHdpbmRvdy0tZGVsZXRlCisJICAgIHdpbmRvdyBuaWwgKG1lbXEgYnVy eS1vci1raWxsICcoa2lsbCBraWxsaW5nKSkpKQorICAgICAgOzsgSWYgdGhlIHByZXZpb3Vz bHkgc2VsZWN0ZWQgd2luZG93IGlzIHN0aWxsIGFsaXZlLCBzZWxlY3QgaXQuCisgICAgICAo d2luZG93LS1xdWl0LXJlc3RvcmUtc2VsZWN0LXdpbmRvdyBxdWl0LXJlc3RvcmUtMikpCisg ICAgICgob3IgKGFuZCAobGlzdHAgKHNldHEgcXVhZCAobnRoIDEgcXVpdC1yZXN0b3JlLXBy ZXYpKSkKKwkgICAgICAgKGJ1ZmZlci1saXZlLXAgKGNhciBxdWFkKSkKKwkgICAgICAgKGVx IChudGggMyBxdWl0LXJlc3RvcmUtcHJldikgYnVmZmVyKQorCSAgICAgICA7OyBVc2Ugc2Vs ZWN0ZWQgd2luZG93IGZyb20gcXVpdC1yZXN0b3JlLXByZXYuCisJICAgICAgIChzZXRxIHF1 aXQtcmVzdG9yZS0yIHF1aXQtcmVzdG9yZS1wcmV2LTIpCisJICAgICAgIDs7IFdlIHdhbnQg dG8gcmVzZXQgcXVpdC1yZXN0b3JlLXByZXYgb25seS4KKwkgICAgICAgKHNldHEgcmVzZXQt cHJldiB0KSkKKwkgIChhbmQgKGxpc3RwIChzZXRxIHF1YWQgKG50aCAxIHF1aXQtcmVzdG9y ZSkpKQorCSAgICAgICAoYnVmZmVyLWxpdmUtcCAoY2FyIHF1YWQpKQorCSAgICAgICAoZXEg KG50aCAzIHF1aXQtcmVzdG9yZSkgYnVmZmVyKSkpCisgICAgICA7OyBTaG93IGFub3RoZXIg YnVmZmVyIHN0b3JlZCBpbiBxdWl0LXJlc3RvcmUoLXByZXYpIHBhcmFtZXRlci4KICAgICAg ICh3aGVuIChhbmQgKGludGVnZXJwIChudGggMyBxdWFkKSkKIAkJIChpZiAod2luZG93LWNv bWJpbmVkLXAgd2luZG93KQogICAgICAgICAgICAgICAgICAgICAgKC89IChudGggMyBxdWFk KSAod2luZG93LXRvdGFsLWhlaWdodCB3aW5kb3cpKQpAQCAtNTI2OSwyNyArNTM3OSwyNiBA QCBxdWl0LXJlc3RvcmUtd2luZG93CiAgICAgICA7OyBEZWFsIHdpdGggdGhlIGJ1ZmZlciB3 ZSBqdXN0IHJlbW92ZWQgZnJvbSBXSU5ET1cuCiAgICAgICAoc2V0cSBlbnRyeSAoYW5kIChl cSBidXJ5LW9yLWtpbGwgJ2FwcGVuZCkKIAkJICAgICAgIChhc3NxIGJ1ZmZlciAod2luZG93 LXByZXYtYnVmZmVycyB3aW5kb3cpKSkpCi0gICAgICAod2hlbiBidXJ5LW9yLWtpbGwKKyAg ICAgICh3aGVuIChtZW1xIGJ1cnktb3Ita2lsbCAnKGJ1cnkgYnVyeWluZyBraWxsIGtpbGxp bmcpKQogCTs7IFJlbW92ZSBidWZmZXIgZnJvbSBXSU5ET1cncyBwcmV2aW91cyBhbmQgbmV4 dCBidWZmZXJzLgotCShzZXQtd2luZG93LXByZXYtYnVmZmVycwotCSB3aW5kb3cgKGFzc3Et ZGVsZXRlLWFsbCBidWZmZXIgKHdpbmRvdy1wcmV2LWJ1ZmZlcnMgd2luZG93KSkpCi0JKHNl dC13aW5kb3ctbmV4dC1idWZmZXJzCi0JIHdpbmRvdyAoZGVscSBidWZmZXIgKHdpbmRvdy1u ZXh0LWJ1ZmZlcnMgd2luZG93KSkpKQorCSh1bnJlY29yZC13aW5kb3ctYnVmZmVyIHdpbmRv dyBidWZmZXIpKQogICAgICAgKHdoZW4gZW50cnkKIAk7OyBBcHBlbmQgb2xkIGJ1ZmZlcidz IGVudHJ5IHRvIGxpc3Qgb2YgV0lORE9XJ3MgcHJldmlvdXMKIAk7OyBidWZmZXJzIHNvIGl0 J3MgbGVzcyBsaWtlbHkgdG8gZ2V0IHN3aXRjaGVkIHRvIHNvb24gYnV0CiAJOzsgYGRpc3Bs YXktYnVmZmVyLWluLXByZXZpb3VzLXdpbmRvdycgY2FuIG5ldmVydGhlbGVzcyBmaW5kIGl0 LgogCShzZXQtd2luZG93LXByZXYtYnVmZmVycwogCSB3aW5kb3cgKGFwcGVuZCAod2luZG93 LXByZXYtYnVmZmVycyB3aW5kb3cpIChsaXN0IGVudHJ5KSkpKQotICAgICAgOzsgUmVzZXQg dGhlIHF1aXQtcmVzdG9yZSBwYXJhbWV0ZXIuCi0gICAgICAoc2V0LXdpbmRvdy1wYXJhbWV0 ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUgbmlsKQotICAgICAgOzsgU2VsZWN0IG9sZCB3aW5k b3cuCisgICAgICA7OyBSZXNldCB0aGUgcXVpdC1yZXN0b3JlKC1wcmV2KSBwYXJhbWV0ZXIu CisgICAgICAoc2V0LXdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUtcHJl diBuaWwpCisgICAgICAodW5sZXNzIHJlc2V0LXByZXYKKwk7OyBJZiBxdWl0LXJlc3RvcmUt cHJldiB3YXMgbm90IHVzZWQsIHJlc2V0IHRoZSBxdWl0LXJlc3RvcmUKKwk7OyBwYXJhbWV0 ZXIKKwkoc2V0LXdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUgbmlsKSkK ICAgICAgIDs7IElmIHRoZSBwcmV2aW91c2x5IHNlbGVjdGVkIHdpbmRvdyBpcyBzdGlsbCBh bGl2ZSwgc2VsZWN0IGl0LgogICAgICAgKHdpbmRvdy0tcXVpdC1yZXN0b3JlLXNlbGVjdC13 aW5kb3cgcXVpdC1yZXN0b3JlLTIpKQogICAgICAodAotICAgICAgOzsgU2hvdyBzb21lIG90 aGVyIGJ1ZmZlciBpbiBXSU5ET1cgYW5kIHJlc2V0IHRoZSBxdWl0LXJlc3RvcmUKLSAgICAg IDs7IHBhcmFtZXRlci4KLSAgICAgIChzZXQtd2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1 aXQtcmVzdG9yZSBuaWwpCisgICAgICA7OyBTaG93IHNvbWUgb3RoZXIgYnVmZmVyIGluIFdJ TkRPVyBhbmQgbGVhdmUgdGhlCisgICAgICA7OyBxdWl0LXJlc3RvcmUoLXByZXYpIHBhcmFt ZXRlcnMgYWxvbmUgKEp1cmkncyBpZGVhKS4KICAgICAgIDs7IE1ha2Ugc3VyZSB0aGF0IFdJ TkRPVyBpcyBubyBtb3JlIGRlZGljYXRlZC4KICAgICAgIChzZXQtd2luZG93LWRlZGljYXRl ZC1wIHdpbmRvdyBuaWwpCiAgICAgICA7OyBUcnkgdG8gc3dpdGNoIHRvIGEgcHJldmlvdXMg YnVmZmVyLiAgRGVsZXRlIHRoZSB3aW5kb3cgb25seSBpZgpAQCAtNTI5NywxNiArNTQwNiwx NCBAQCBxdWl0LXJlc3RvcmUtd2luZG93CiAgICAgICAoaWYgKHN3aXRjaC10by1wcmV2LWJ1 ZmZlciB3aW5kb3cgYnVyeS1vci1raWxsKQogICAgICAgICAgICh3aGVuIChlcSBkZWRpY2F0 ZWQgJ3NpZGUpCiAgICAgICAgICAgICAoc2V0LXdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cg J3NpZGUpKQotICAgICAgICAod2luZG93LS1kZWxldGUgd2luZG93IG5pbCAoZXEgYnVyeS1v ci1raWxsICdraWxsKSkKLSAgICAgIDs7IElmIHRoZSBwcmV2aW91c2x5IHNlbGVjdGVkIHdp bmRvdyBpcyBzdGlsbCBhbGl2ZSwgc2VsZWN0IGl0LgotICAgICAgKHdpbmRvdy0tcXVpdC1y ZXN0b3JlLXNlbGVjdC13aW5kb3cgcXVpdC1yZXN0b3JlLTIpKSkpCi0KKyAgICAgICAgKHdp bmRvdy0tZGVsZXRlCisJIHdpbmRvdyBuaWwgKG1lbXEgYnVyeS1vci1raWxsICcoa2lsbCBr aWxsaW5nKSkpKSkpCiAgICAgOzsgRGVhbCB3aXRoIHRoZSBidWZmZXIuCiAgICAgKGNvbmQK ICAgICAgKChub3QgKGJ1ZmZlci1saXZlLXAgYnVmZmVyKSkpCiAgICAgICgoZXEgYnVyeS1v ci1raWxsICdraWxsKQogICAgICAgKGtpbGwtYnVmZmVyIGJ1ZmZlcikpCi0gICAgIChidXJ5 LW9yLWtpbGwKKyAgICAgKChlcSBidXJ5LW9yLWtpbGwgJ2J1cnkpCiAgICAgICAoYnVyeS1i dWZmZXItaW50ZXJuYWwgYnVmZmVyKSkpKSkKIAogKGRlZnVuIHF1aXQtd2luZG93ICgmb3B0 aW9uYWwga2lsbCB3aW5kb3cpCkBAIC01MzM2LDE4ICs1NDQzLDMxIEBAIHF1aXQtd2luZG93 cy1vbgogQlVGRkVSLU9SLU5BTUUuICBPcHRpb25hbCBhcmd1bWVudCBGUkFNRSBpcyBoYW5k bGVkIGFzIGJ5CiBgZGVsZXRlLXdpbmRvd3Mtb24nLgogCi1UaGlzIGZ1bmN0aW9uIGNhbGxz IGBxdWl0LXdpbmRvdycgb24gYWxsIGNhbmRpZGF0ZSB3aW5kb3dzCi1zaG93aW5nIEJVRkZF Ui1PUi1OQU1FLiIKK1RoaXMgZnVuY3Rpb24gY2FsbHMgYHF1aXQtcmVzdG9yZS13aW5kb3cn IG9uIGFsbCBjYW5kaWRhdGUgd2luZG93cworc2hvd2luZyBCVUZGRVItT1ItTkFNRS4gIElu IGFkZGl0aW9uLCBpdCByZW1vdmVzIHRoZSBidWZmZXIgZGVub3RlZCBieQorQlVGRkVSLU9S LU5BTUUgZnJvbSBhbGwgd2luZG93LWxvY2FsIGJ1ZmZlciBsaXN0cyBhbmQgcmVtb3ZlcyBh bnkKK2BxdWl0LXJlc3RvcmUnIG9yIGBxdWl0LXJlc3RvcmUtcHJldicgcGFyYW1ldGVycyBt ZW50aW9uaW5nIGl0LiIKICAgKGludGVyYWN0aXZlICJiUXVpdCB3aW5kb3dzIG9uIChidWZm ZXIpOlxuUCIpCiAgIChsZXQgKChidWZmZXIgKHdpbmRvdy1ub3JtYWxpemUtYnVmZmVyIGJ1 ZmZlci1vci1uYW1lKSkKIAk7OyBIYW5kbGUgdGhlICJpbnZlcnRlZCIgbWVhbmluZyBvZiB0 aGUgRlJBTUUgYXJndW1lbnQgd3J0IG90aGVyCi0JOzsgYHdpbmRvdy1saXN0LTEnIGJhc2Vk IGZ1bmN0aW9uLgotCShhbGwtZnJhbWVzIChjb25kICgobm90IGZyYW1lKSB0KSAoKGVxIGZy YW1lIHQpIG5pbCkgKHQgZnJhbWUpKSkpCi0gICAgKGRvbGlzdCAod2luZG93ICh3aW5kb3ct bGlzdC0xIG5pbCBuaWwgYWxsLWZyYW1lcykpCi0gICAgICAoaWYgKGVxICh3aW5kb3ctYnVm ZmVyIHdpbmRvdykgYnVmZmVyKQotCSAgKHF1aXQtd2luZG93IGtpbGwgd2luZG93KQotCTs7 IElmIGEgd2luZG93IGRvZXNuJ3Qgc2hvdyBCVUZGRVIsIHVucmVjb3JkIEJVRkZFUiBpbiBp dC4KLQkodW5yZWNvcmQtd2luZG93LWJ1ZmZlciB3aW5kb3cgYnVmZmVyKSkpKSkKKwk7OyBg d2luZG93LWxpc3QnIGJhc2VkIGZ1bmN0aW9uLgorCShmcmFtZXMgKGNvbmQgKChub3QgZnJh bWUpIHQpICgoZXEgZnJhbWUgdCkgbmlsKSAodCBmcmFtZSkpKSkKKyAgICAoZG9saXN0ICh3 aW5kb3cgKHdpbmRvdy1saXN0LTEgbmlsIG5pbCBmcmFtZXMpKQorICAgICAgKHdoZW4gKGVx ICh3aW5kb3ctYnVmZmVyIHdpbmRvdykgYnVmZmVyKQorCSh3aXRoLWN1cnJlbnQtYnVmZmVy IGJ1ZmZlcgorCSAgKHJ1bi1ob29rcyAncXVpdC13aW5kb3ctaG9vaykpCisJKHF1aXQtcmVz dG9yZS13aW5kb3cKKwkgd2luZG93IChpZiBraWxsICdraWxsaW5nICdidXJ5aW5nKSkpCisK KyAgICAgICh3aGVuICh3aW5kb3ctbGl2ZS1wIHdpbmRvdykKKwk7OyBVbnJlY29yZCBCVUZG RVIgaW4gdGhpcyB3aW5kb3cuCisJKHVucmVjb3JkLXdpbmRvdy1idWZmZXIgd2luZG93IGJ1 ZmZlciB0KSkpCisKKyAgICA7OyBEZWFsIHdpdGggQlVGRkVSLU9SLU5BTUUuCisgICAgKGNv bmQKKyAgICAgKChub3QgKGJ1ZmZlci1saXZlLXAgYnVmZmVyKSkpCisgICAgIChraWxsIChr aWxsLWJ1ZmZlciBidWZmZXIpKQorICAgICAodCAoYnVyeS1idWZmZXItaW50ZXJuYWwgYnVm ZmVyKSkpKSkKIAwKIChkZWZ1biB3aW5kb3ctLWNvbWJpbmF0aW9uLXJlc2l6YWJsZSAocGFy ZW50ICZvcHRpb25hbCBob3Jpem9udGFsKQogICAiUmV0dXJuIG51bWJlciBvZiBwaXhlbHMg cmVjb3ZlcmFibGUgZnJvbSBoZWlnaHQgb2Ygd2luZG93IFBBUkVOVC4KQEAgLTY2NTcsMzQg KzY3NzcsNDIgQEAgZGlzcGxheS1idWZmZXItcmVjb3JkLXdpbmRvdwogcHJldmlvdXNseSBz aG93biBpbiB0aGUgd2luZG93LCB0aGF0IGJ1ZmZlcidzIHdpbmRvdyBzdGFydCBhbmQKIHdp bmRvdyBwb2ludCwgYW5kIHRoZSB3aW5kb3cncyBoZWlnaHQuICBUaGUgdGhpcmQgZWxlbWVu dCBpcyB0aGUKIHdpbmRvdyBzZWxlY3RlZCBhdCB0aGUgdGltZSB0aGUgcGFyYW1ldGVyIHdh cyBjcmVhdGVkLiAgVGhlCi1mb3VydGggZWxlbWVudCBpcyBCVUZGRVIuIgorZm91cnRoIGVs ZW1lbnQgaXMgQlVGRkVSLgorCitJZiBUWVBFIGlzIGByZXVzZScsIEJVRkZFUiBpcyBkaWZm ZXJlbnQgZnJvbSB0aGUgb25lIGN1cnJlbnRseSBkaXNwbGF5ZWQKK2luIFdJTkRPVywgYW5k IFdJTkRPVyBhbHJlYWR5IGhhcyBhIGBxdWl0LXJlc3RvcmUnIHBhcmFtZXRlciwgaW5zdGFs bCBvcgordXBkYXRlIGEgYHF1aXQtcmVzdG9yZS1wcmV2JyBwYXJhbWV0ZXIgZm9yIHRoaXMg d2luZG93LiAgVGhpcyBhbGxvd3MgZm9yCitxdWl0dGluZyBXSU5ET1cgaW4gYSBzaW1pbGFy IGZhc2hpb24gYnV0IGFsc28ga2VlcHMgdGhlIHZlcnkgZmlyc3QKK2BxdWl0LXJlc3RvcmUn IHBhcmFtZXRlciBzdG9yZWQgZm9yIHRoaXMgd2luZG93IGFyb3VuZC4gIENvbnNlcXVlbnRs eSwKK1dJTkRPVyAob3IgaXRzIGZyYW1lKSBjYW4gYmUgZXZlbnR1YWxseSBkZWxldGVkIGJ5 IGBxdWl0LXJlc3RvcmUtd2lkb3cnCitpZiB0aGF0IHBhcmFtZXRlcidzIGZvdXJ0aCBlbGVt ZW50IGVxdWFscyBXSU5ET1cncyBidWZmZXIuIgogICAoY29uZAogICAgKChlcSB0eXBlICdy ZXVzZSkKLSAgICAoaWYgKGVxICh3aW5kb3ctYnVmZmVyIHdpbmRvdykgYnVmZmVyKQotCTs7 IFdJTkRPVyBzaG93cyBCVUZGRVIgYWxyZWFkeS4gIFVwZGF0ZSBXSU5ET1cncyBxdWl0LXJl c3RvcmUKLQk7OyBwYXJhbWV0ZXIsIGlmIGFueS4KLQkobGV0ICgocXVpdC1yZXN0b3JlICh3 aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVpdC1yZXN0b3JlKSkpCisgICAgKGxldCAoKHF1 aXQtcmVzdG9yZSAod2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZSkpKQor ICAgICAgKGlmIChlcSAod2luZG93LWJ1ZmZlciB3aW5kb3cpIGJ1ZmZlcikKKwkgIDs7IFdJ TkRPVyBzaG93cyBCVUZGRVIgYWxyZWFkeS4gIFVwZGF0ZSBXSU5ET1cncyBxdWl0LXJlc3Rv cmUKKwkgIDs7IHBhcmFtZXRlciwgaWYgYW55LgogCSAgKHdoZW4gKGNvbnNwIHF1aXQtcmVz dG9yZSkKIAkgICAgKHNldGNhciBxdWl0LXJlc3RvcmUgJ3NhbWUpCiAJICAgIDs7IFRoZSBz ZWxlY3RlZC13aW5kb3cgbWlnaHQgaGF2ZSBjaGFuZ2VkIGluCiAJICAgIDs7IGJldHdlZW4g KEJ1ZyMyMDM1MykuCiAJICAgICh1bmxlc3MgKG9yIChlcSB3aW5kb3cgKHNlbGVjdGVkLXdp bmRvdykpCi0gICAgICAgICAgICAgICAgICAgICAgICAoZXEgd2luZG93IChudGggMiBxdWl0 LXJlc3RvcmUpKSkKLQkgICAgICAoc2V0Y2FyIChjZGRyIHF1aXQtcmVzdG9yZSkgKHNlbGVj dGVkLXdpbmRvdykpKSkpCi0gICAgICA7OyBXSU5ET1cgc2hvd3MgYW5vdGhlciBidWZmZXIu Ci0gICAgICAod2l0aC1jdXJyZW50LWJ1ZmZlciAod2luZG93LWJ1ZmZlciB3aW5kb3cpCi0J KHNldC13aW5kb3ctcGFyYW1ldGVyCi0JIHdpbmRvdyAncXVpdC1yZXN0b3JlCi0JIChsaXN0 ICdvdGhlcgotCSAgICAgICA7OyBBIHF1YWRydXBsZSBvZiBXSU5ET1cncyBidWZmZXIsIHN0 YXJ0LCBwb2ludCBhbmQgaGVpZ2h0LgotCSAgICAgICAobGlzdCAoY3VycmVudC1idWZmZXIp ICh3aW5kb3ctc3RhcnQgd2luZG93KQotCQkgICAgIDs7IFByZXNlcnZlIHdpbmRvdy1wb2lu dC1pbnNlcnRpb24tdHlwZSAoQnVnIzEyODU1KS4KLQkJICAgICAoY29weS1tYXJrZXIKLQkJ ICAgICAgKHdpbmRvdy1wb2ludCB3aW5kb3cpIHdpbmRvdy1wb2ludC1pbnNlcnRpb24tdHlw ZSkKLQkJICAgICAoaWYgKHdpbmRvdy1jb21iaW5lZC1wIHdpbmRvdykKLSAgICAgICAgICAg ICAgICAgICAgICAgICAod2luZG93LXRvdGFsLWhlaWdodCB3aW5kb3cpCi0gICAgICAgICAg ICAgICAgICAgICAgICh3aW5kb3ctdG90YWwtd2lkdGggd2luZG93KSkpCi0JICAgICAgIChz ZWxlY3RlZC13aW5kb3cpIGJ1ZmZlcikpKSkpCisJCQkoZXEgd2luZG93IChudGggMiBxdWl0 LXJlc3RvcmUpKSkKKwkgICAgICAoc2V0Y2FyIChjZGRyIHF1aXQtcmVzdG9yZSkgKHNlbGVj dGVkLXdpbmRvdykpKSkKKwk7OyBXSU5ET1cgc2hvd3MgYW5vdGhlciBidWZmZXIuCisJKHdp dGgtY3VycmVudC1idWZmZXIgKHdpbmRvdy1idWZmZXIgd2luZG93KQorCSAgKHNldC13aW5k b3ctcGFyYW1ldGVyCisJICAgd2luZG93IChpZiBxdWl0LXJlc3RvcmUgJ3F1aXQtcmVzdG9y ZS1wcmV2ICdxdWl0LXJlc3RvcmUpCisJICAgKGxpc3QgJ290aGVyCisJCSA7OyBBIHF1YWRy dXBsZSBvZiBXSU5ET1cncyBidWZmZXIsIHN0YXJ0LCBwb2ludCBhbmQgaGVpZ2h0LgorCQkg KGxpc3QgKGN1cnJlbnQtYnVmZmVyKSAod2luZG93LXN0YXJ0IHdpbmRvdykKKwkJICAgICAg IDs7IFByZXNlcnZlIHdpbmRvdy1wb2ludC1pbnNlcnRpb24tdHlwZSAoQnVnIzEyODU1KS4K KwkJICAgICAgIChjb3B5LW1hcmtlcgorCQkJKHdpbmRvdy1wb2ludCB3aW5kb3cpIHdpbmRv dy1wb2ludC1pbnNlcnRpb24tdHlwZSkKKwkJICAgICAgIChpZiAod2luZG93LWNvbWJpbmVk LXAgd2luZG93KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKHdpbmRvdy10b3RhbC1o ZWlnaHQgd2luZG93KQorCQkJICh3aW5kb3ctdG90YWwtd2lkdGggd2luZG93KSkpCisJCSAo c2VsZWN0ZWQtd2luZG93KSBidWZmZXIpKSkpKSkKICAgICgoZXEgdHlwZSAnd2luZG93KQog ICAgIDs7IFdJTkRPVyBoYXMgYmVlbiBjcmVhdGVkIG9uIGFuIGV4aXN0aW5nIGZyYW1lLgog ICAgIChzZXQtd2luZG93LXBhcmFtZXRlcgpAQCAtOTEyOSw2ICs5MjU3LDkgQEAgc3dpdGNo LXRvLWJ1ZmZlcgogYXMgcHJlc2NyaWJlZCBieSB0aGUgb3B0aW9uIGBzd2l0Y2gtdG8tYnVm ZmVyLXByZXNlcnZlLXdpbmRvdy1wb2ludCcuCiBPdGhlcndpc2UsIHRoZXNlIGFyZSBsZWZ0 IGFsb25lLgogCitJbiBlaXRoZXIgY2FzZSwgY2FsbCBgZGlzcGxheS1idWZmZXItcmVjb3Jk LXdpbmRvdycgdG8gYXZvaWQgZGlzcnVwdGluZworYSBzZXF1ZW5jZSBvZiBgZGlzcGxheS1i dWZmZXInIG9wZXJhdGlvbnMgdXNpbmcgdGhpcyB3aW5kb3cuCisKIFJldHVybiB0aGUgYnVm ZmVyIHN3aXRjaGVkIHRvLiIKICAgKGludGVyYWN0aXZlCiAgICAobGV0ICgoZm9yY2Utc2Ft ZS13aW5kb3cKQEAgLTkxODksNiArOTMyMCwxMSBAQCBzd2l0Y2gtdG8tYnVmZmVyCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWZmZXIpKQogCSAgICAgICAoZGlz cGxheWVkIChhbmQgKGVxIHByZXNlcnZlLXdpbi1wb2ludCAnYWxyZWFkeS1kaXNwbGF5ZWQp CiAJCQkgICAgICAgKGdldC1idWZmZXItd2luZG93IGJ1ZmZlciAwKSkpKQorCisJICA7OyBN YWtlIHN1cmUgcXVpdHRpbmcgdGhlIHdpbmRvdyB3b3Jrcy4KKwkgICh1bmxlc3Mgc3dpdGNo LXRvLWJ1ZmZlci1vYmV5LWRpc3BsYXktYWN0aW9ucworCSAgICAoZGlzcGxheS1idWZmZXIt cmVjb3JkLXdpbmRvdyAncmV1c2UgKHNlbGVjdGVkLXdpbmRvdykgYnVmZmVyKSkKKwogCSAg KHNldC13aW5kb3ctYnVmZmVyIG5pbCBidWZmZXIpCiAJICAod2hlbiAoYW5kIGVudHJ5IChv ciAoZXEgcHJlc2VydmUtd2luLXBvaW50IHQpIGRpc3BsYXllZCkpCiAJICAgIDs7IFRyeSB0 byByZXN0b3JlIHN0YXJ0IGFuZCBwb2ludCBvZiBidWZmZXIgaW4gdGhlIHNlbGVjdGVkCmRp ZmYgLS1naXQgYS9zcmMvYWxsb2MuYyBiL3NyYy9hbGxvYy5jCmluZGV4IDQ4YjE3MGI4NjZm Li4wNmZlMTJjZmYzZCAxMDA2NDQKLS0tIGEvc3JjL2FsbG9jLmMKKysrIGIvc3JjL2FsbG9j LmMKQEAgLTcwMDksMzMgKzcwMDksNiBAQCBtYXJrX2ZhY2VfY2FjaGUgKHN0cnVjdCBmYWNl X2NhY2hlICpjKQogICAgIH0KIH0KIAotLyogUmVtb3ZlIGtpbGxlZCBidWZmZXJzIG9yIGl0 ZW1zIHdob3NlIGNhciBpcyBhIGtpbGxlZCBidWZmZXIgZnJvbQotICAgTElTVCwgYW5kIG1h cmsgb3RoZXIgaXRlbXMuICBSZXR1cm4gY2hhbmdlZCBMSVNULCB3aGljaCBpcyBtYXJrZWQu ICAqLwotCi1zdGF0aWMgTGlzcF9PYmplY3QKLW1hcmtfZGlzY2FyZF9raWxsZWRfYnVmZmVy cyAoTGlzcF9PYmplY3QgbGlzdCkKLXsKLSAgTGlzcF9PYmplY3QgdGFpbCwgKnByZXYgPSAm bGlzdDsKLQotICBmb3IgKHRhaWwgPSBsaXN0OyBDT05TUCAodGFpbCkgJiYgIWNvbnNfbWFy a2VkX3AgKFhDT05TICh0YWlsKSk7Ci0gICAgICAgdGFpbCA9IFhDRFIgKHRhaWwpKQotICAg IHsKLSAgICAgIExpc3BfT2JqZWN0IHRlbSA9IFhDQVIgKHRhaWwpOwotICAgICAgaWYgKENP TlNQICh0ZW0pKQotCXRlbSA9IFhDQVIgKHRlbSk7Ci0gICAgICBpZiAoQlVGRkVSUCAodGVt KSAmJiAhQlVGRkVSX0xJVkVfUCAoWEJVRkZFUiAodGVtKSkpCi0JKnByZXYgPSBYQ0RSICh0 YWlsKTsKLSAgICAgIGVsc2UKLQl7Ci0JICBzZXRfY29uc19tYXJrZWQgKFhDT05TICh0YWls KSk7Ci0JICBtYXJrX29iamVjdCAoWENBUiAodGFpbCkpOwotCSAgcHJldiA9IHhjZHJfYWRk ciAodGFpbCk7Ci0JfQotICAgIH0KLSAgbWFya19vYmplY3QgKHRhaWwpOwotICByZXR1cm4g bGlzdDsKLX0KLQogc3RhdGljIHZvaWQKIG1hcmtfZnJhbWUgKHN0cnVjdCBMaXNwX1ZlY3Rv ciAqcHRyKQogewpAQCAtNzA5MCwxNSArNzA2Myw2IEBAIG1hcmtfd2luZG93IChzdHJ1Y3Qg TGlzcF9WZWN0b3IgKnB0cikKICAgICAgIG1hcmtfZ2x5cGhfbWF0cml4ICh3LT5jdXJyZW50 X21hdHJpeCk7CiAgICAgICBtYXJrX2dseXBoX21hdHJpeCAody0+ZGVzaXJlZF9tYXRyaXgp OwogICAgIH0KLQotICAvKiBGaWx0ZXIgb3V0IGtpbGxlZCBidWZmZXJzIGZyb20gYm90aCBi dWZmZXIgbGlzdHMKLSAgICAgaW4gYXR0ZW1wdCB0byBoZWxwIEdDIHRvIHJlY2xhaW0ga2ls bGVkIGJ1ZmZlcnMgZmFzdGVyLgotICAgICBXZSBjYW4gZG8gaXQgZWxzZXdoZXJlIGZvciBs aXZlIHdpbmRvd3MsIGJ1dCB0aGlzIGlzIHRoZQotICAgICBiZXN0IHBsYWNlIHRvIGRvIGl0 IGZvciBkZWFkIHdpbmRvd3MuICAqLwotICB3c2V0X3ByZXZfYnVmZmVycwotICAgICh3LCBt YXJrX2Rpc2NhcmRfa2lsbGVkX2J1ZmZlcnMgKHctPnByZXZfYnVmZmVycykpOwotICB3c2V0 X25leHRfYnVmZmVycwotICAgICh3LCBtYXJrX2Rpc2NhcmRfa2lsbGVkX2J1ZmZlcnMgKHct Pm5leHRfYnVmZmVycykpOwogfQogCiAvKiBFbnRyeSBvZiB0aGUgbWFyayBzdGFjay4gICov CmRpZmYgLS1naXQgYS9zcmMvYnVmZmVyLmMgYi9zcmMvYnVmZmVyLmMKaW5kZXggNzQ0YjBl ZjU1NDguLjZlYzQwYWZmNjQ2IDEwMDY0NAotLS0gYS9zcmMvYnVmZmVyLmMKKysrIGIvc3Jj L2J1ZmZlci5jCkBAIC0yMDEyLDYgKzIwMTIsMTMgQEAgREVGVU4gKCJraWxsLWJ1ZmZlciIs IEZraWxsX2J1ZmZlciwgU2tpbGxfYnVmZmVyLCAwLCAxLCAiYktpbGwgYnVmZmVyOiAiLAog ICAgICBidWZmZXIgKGJ1ZyMxMDExNCkuICAqLwogICByZXBsYWNlX2J1ZmZlcl9pbl93aW5k b3dzIChidWZmZXIpOwogCisgIC8qIEZvciBkZWFkIHdpbmRvd3MgdGhhdCBoYXZlIG5vdCBi ZWVuIGNvbGxlY3RlZCB5ZXQsIHJlbW92ZSB0aGlzCisgICAgIGJ1ZmZlciBmcm9tIHRob3Nl IHdpbmRvd3MnIGxpc3RzIG9mIHByZXZpb3VzbHkgYW5kIG5leHQgc2hvd24KKyAgICAgYnVm ZmVycyBhbmQgcmVtb3ZlIGFueSAncXVpdC1yZXN0b3JlJyBvciAncXVpdC1yZXN0b3JlLXBy ZXYnCisgICAgIHBhcmFtZXRlcnMgbWVudGlvbmluZyB0aGUgYnVmZmVyLiAgKi8KKyAgaWYg KFhGSVhOVU0gKEJWQVIgKGIsIGRpc3BsYXlfY291bnQpKSA+IDApCisgICAgd2luZG93X2Rp c2NhcmRfYnVmZmVyX2Zyb21fZGVhZF93aW5kb3dzIChidWZmZXIpOworCiAgIC8qIEV4aXQg aWYgcmVwbGFjaW5nIHRoZSBidWZmZXIgaW4gd2luZG93cyBoYXMga2lsbGVkIG91ciBidWZm ZXIuICAqLwogICBpZiAoIUJVRkZFUl9MSVZFX1AgKGIpKQogICAgIHJldHVybiBRdDsKZGlm ZiAtLWdpdCBhL3NyYy93aW5kb3cuYyBiL3NyYy93aW5kb3cuYwppbmRleCA0YmIzNmI2NzMz YS4uNTU5OTE5Njg5YTMgMTAwNjQ0Ci0tLSBhL3NyYy93aW5kb3cuYworKysgYi9zcmMvd2lu ZG93LmMKQEAgLTMyNzcsNiArMzI3NywxMTMgQEAgd2luZG93X3BpeGVsX3RvX3RvdGFsIChM aXNwX09iamVjdCBmcmFtZSwgTGlzcF9PYmplY3QgaG9yaXpvbnRhbCkKIH0KIAogCisvKiog UmVtb3ZlIGFsbCBvY2N1cnJlbmNlcyBvZiBlbGVtZW50IHdob3NlIGNhciBpcyBCVUZGRVIg ZnJvbSBBTElTVC4KKyAgICBSZXR1cm4gY2hhbmdlZCBBTElTVC4gICovCitzdGF0aWMgTGlz cF9PYmplY3QKK3dpbmRvd19kaXNjYXJkX2J1ZmZlcl9mcm9tX2FsaXN0IChMaXNwX09iamVj dCBidWZmZXIsIExpc3BfT2JqZWN0IGFsaXN0KQoreworICBMaXNwX09iamVjdCB0YWlsLCAq cHJldiA9ICZhbGlzdDsKKworICBmb3IgKHRhaWwgPSBhbGlzdDsgQ09OU1AgKHRhaWwpOyB0 YWlsID0gWENEUiAodGFpbCkpCisgICAgeworICAgICAgTGlzcF9PYmplY3QgdGVtID0gWENB UiAodGFpbCk7CisKKyAgICAgIHRlbSA9IFhDQVIgKHRlbSk7CisKKyAgICAgIGlmIChFUSAo dGVtLCBidWZmZXIpKQorCSpwcmV2ID0gWENEUiAodGFpbCk7CisgICAgICBlbHNlCisJcHJl diA9IHhjZHJfYWRkciAodGFpbCk7CisgICAgfQorCisgIHJldHVybiBhbGlzdDsKK30KKwor LyoqIFJlbW92ZSBhbGwgb2NjdXJyZW5jZXMgb2YgQlVGRkVSIGZyb20gTElTVC4gIFJldHVy biBjaGFuZ2VkCisgICAgTElTVC4gICovCitzdGF0aWMgTGlzcF9PYmplY3QKK3dpbmRvd19k aXNjYXJkX2J1ZmZlcl9mcm9tX2xpc3QgKExpc3BfT2JqZWN0IGJ1ZmZlciwgTGlzcF9PYmpl Y3QgbGlzdCkKK3sKKyAgTGlzcF9PYmplY3QgdGFpbCwgKnByZXYgPSAmbGlzdDsKKworICBm b3IgKHRhaWwgPSBsaXN0OyBDT05TUCAodGFpbCk7IHRhaWwgPSBYQ0RSICh0YWlsKSkKKyAg ICBpZiAoRVEgKFhDQVIgKHRhaWwpLCBidWZmZXIpKQorICAgICAgKnByZXYgPSBYQ0RSICh0 YWlsKTsKKyAgICBlbHNlCisgICAgICBwcmV2ID0geGNkcl9hZGRyICh0YWlsKTsKKworICBy ZXR1cm4gbGlzdDsKK30KKworLyoqIFJlbW92ZSBCVUZGRVIgZnJvbSB0aGUgbGlzdHMgb2Yg cHJldmlvdXMgYW5kIG5leHQgYnVmZmVycyBvZiBvYmplY3QKKyAgICBXSU5ET1cuICBBTEwg dHJ1ZSBtZWFucyByZW1vdmUgYW55IGBxdWl0LXJlc3RvcmUnIGFuZAorICAgIGBxdWl0LXJl c3RvcmUtcHJldicgcGFyYW1ldGVyIG9mIFdJTkRPVyByZWZlcmVuY2luZyBCVUZGRVIgdG9v LiAgKi8KK3N0YXRpYyB2b2lkCit3aW5kb3dfZGlzY2FyZF9idWZmZXJfZnJvbV93aW5kb3cg KExpc3BfT2JqZWN0IGJ1ZmZlciwgTGlzcF9PYmplY3Qgd2luZG93LCBib29sIGFsbCkKK3sK KyAgc3RydWN0IHdpbmRvdyAqdyA9IFhXSU5ET1cgKHdpbmRvdyk7CisKKyAgd3NldF9wcmV2 X2J1ZmZlcnMKKyAgICAodywgd2luZG93X2Rpc2NhcmRfYnVmZmVyX2Zyb21fYWxpc3QgKGJ1 ZmZlciwgdy0+cHJldl9idWZmZXJzKSk7CisgIHdzZXRfbmV4dF9idWZmZXJzCisgICAgKHcs IHdpbmRvd19kaXNjYXJkX2J1ZmZlcl9mcm9tX2xpc3QgKGJ1ZmZlciwgdy0+bmV4dF9idWZm ZXJzKSk7CisKKyAgaWYgKGFsbCkKKyAgICB7CisgICAgICBMaXNwX09iamVjdCBxdWl0X3Jl c3RvcmUgPSB3aW5kb3dfcGFyYW1ldGVyICh3LCBRcXVpdF9yZXN0b3JlKTsKKyAgICAgIExp c3BfT2JqZWN0IHF1aXRfcmVzdG9yZV9wcmV2ID0gd2luZG93X3BhcmFtZXRlciAodywgUXF1 aXRfcmVzdG9yZV9wcmV2KTsKKyAgICAgIExpc3BfT2JqZWN0IHF1YWQ7CisKKyAgICAgIGlm IChFUSAoYnVmZmVyLCBGbnRoIChtYWtlX2ZpeG51bSAoMyksIHF1aXRfcmVzdG9yZV9wcmV2 KSkKKwkgIHx8IChDT05TUCAocXVhZCA9IEZjYXIgKEZjZHIgKHF1aXRfcmVzdG9yZV9wcmV2 KSkpCisJICAgICAgJiYgRVEgKEZjYXIgKHF1YWQpLCBidWZmZXIpKSkKKwlGc2V0X3dpbmRv d19wYXJhbWV0ZXIgKHdpbmRvdywgUXF1aXRfcmVzdG9yZV9wcmV2LCBRbmlsKTsKKworICAg ICAgaWYgKEVRIChidWZmZXIsIEZudGggKG1ha2VfZml4bnVtICgzKSwgcXVpdF9yZXN0b3Jl KSkKKwkgIHx8IChDT05TUCAocXVhZCA9IEZjYXIgKEZjZHIgKHF1aXRfcmVzdG9yZSkpKQor CSAgICAgICYmIEVRIChGY2FyIChxdWFkKSwgYnVmZmVyKSkpCisJeworCSAgRnNldF93aW5k b3dfcGFyYW1ldGVyICh3aW5kb3csIFFxdWl0X3Jlc3RvcmUsCisJCQkJIHdpbmRvd19wYXJh bWV0ZXIgKHcsIFFxdWl0X3Jlc3RvcmVfcHJldikpOworCSAgRnNldF93aW5kb3dfcGFyYW1l dGVyICh3aW5kb3csIFFxdWl0X3Jlc3RvcmVfcHJldiwgUW5pbCk7CisJfQorICAgIH0KK30K KworLyoqIFJlbW92ZSBCVUZGRVIgZnJvbSB0aGUgbGlzdHMgb2YgcHJldmlvdXMgYW5kIG5l eHQgYnVmZmVycyBhbmQgdGhlCisgICAgYHF1aXQtcmVzdG9yZScgYW5kIGBxdWl0LXJlc3Rv cmUtcHJldicgcGFyYW1ldGVycyBvZiBhbnkgZGVhZAorICAgIFdJTkRPVy4gICovCit2b2lk Cit3aW5kb3dfZGlzY2FyZF9idWZmZXJfZnJvbV9kZWFkX3dpbmRvd3MgKExpc3BfT2JqZWN0 IGJ1ZmZlcikKK3sKKyAgc3RydWN0IExpc3BfSGFzaF9UYWJsZSAqaCA9IFhIQVNIX1RBQkxF ICh3aW5kb3dfZGVhZF93aW5kb3dzX3RhYmxlKTsKKworICBET0hBU0ggKGgsIGssIHYpCisg ICAgd2luZG93X2Rpc2NhcmRfYnVmZmVyX2Zyb21fd2luZG93IChidWZmZXIsIHYsIHRydWUp OworfQorCitERUZVTiAoIndpbmRvdy1kaXNjYXJkLWJ1ZmZlci1mcm9tLXdpbmRvdyIsIEZ3 aW5kb3dfZGlzY2FyZF9idWZmZXIsCisgICAgICAgU3dpbmRvd19kaXNjYXJkX2J1ZmZlciwg MiwgMywgMCwKKyAgICAgICBkb2M6IC8qIERpc2NhcmQgQlVGRkVSIGZyb20gV0lORE9XLgor RGlzY2FyZCBzcGVjaWZpZWQgbGl2ZSBCVUZGRVIgZnJvbSB0aGUgbGlzdHMgb2YgcHJldmlv dXMgYW5kIG5leHQKK2J1ZmZlcnMgb2Ygc3BlY2lmaWVkIGxpdmUgV0lORE9XLgorCitPcHRp b25hbCBhcmd1bWVudCBBTEwgbm9uLW5pbCBtZWFucyBkaXNjYXJkIGFueSBgcXVpdC1yZXN0 b3JlJyBhbmQKK2BxdWl0LXJlc3RvcmUtcHJldicgcGFyYW1ldGVycyBvZiBXSU5ET1cgcmVm ZXJlbmNpbmcgQlVGRkVSIHRvby4gICovKQorICAoTGlzcF9PYmplY3QgYnVmZmVyLCBMaXNw X09iamVjdCB3aW5kb3csIExpc3BfT2JqZWN0IGFsbCkKK3sKKyAgaWYgKCFCVUZGRVJfTElW RV9QIChYQlVGRkVSIChidWZmZXIpKSkKKyAgICBlcnJvciAoIk5vdCBhIGxpdmUgYnVmZmVy Iik7CisKKyAgaWYgKCFXSU5ET1dfTElWRV9QICh3aW5kb3cpKQorICAgIGVycm9yICgiTm90 IGEgbGl2ZSB3aW5kb3ciKTsKKworICB3aW5kb3dfZGlzY2FyZF9idWZmZXJfZnJvbV93aW5k b3cgKGJ1ZmZlciwgd2luZG93LCAhTklMUCAoYWxsKSk7CisKKyAgcmV0dXJuIFFuaWw7Cit9 CisKKwogREVGVU4gKCJkZWxldGUtb3RoZXItd2luZG93cy1pbnRlcm5hbCIsIEZkZWxldGVf b3RoZXJfd2luZG93c19pbnRlcm5hbCwKICAgICAgICBTZGVsZXRlX290aGVyX3dpbmRvd3Nf aW50ZXJuYWwsIDAsIDIsICIiLAogICAgICAgIGRvYzogLyogTWFrZSBXSU5ET1cgZmlsbCBp dHMgZnJhbWUuCkBAIC00MTQwLDYgKzQyNDcsOSBAQCBzZXRfd2luZG93X2J1ZmZlciAoTGlz cF9PYmplY3Qgd2luZG93LCBMaXNwX09iamVjdCBidWZmZXIsCiAgIHctPndpbmRvd19lbmRf dnBvcyA9IDA7CiAgIHctPmxhc3RfY3Vyc29yX3Zwb3MgPSAwOwogCisgIC8qIERpc2NhcmQg QlVGRkVSIGZyb20gV0lORE9XJ3MgcHJldmlvdXMgYW5kIG5leHQgYnVmZmVycy4gICovCisg IHdpbmRvd19kaXNjYXJkX2J1ZmZlcl9mcm9tX3dpbmRvdyAoYnVmZmVyLCB3aW5kb3csIGZh bHNlKTsKKwogICBpZiAoIShrZWVwX21hcmdpbnNfcCAmJiBzYW1lYnVmKSkKICAgICB7IC8q IElmIHdlJ3JlIG5vdCBhY3R1YWxseSBjaGFuZ2luZyB0aGUgYnVmZmVyLCBkb24ndCByZXNl dCBoc2Nyb2xsCiAJIGFuZCB2c2Nyb2xsLiAgUmVzZXR0aW5nIGhzY3JvbGwgYW5kIHZzY3Jv bGwgaGVyZSBpcyBwcm9ibGVtYXRpYwpAQCAtNDQwMiw2ICs0NTEyLDEwIEBAIG1ha2VfcGFy ZW50X3dpbmRvdyAoTGlzcF9PYmplY3Qgd2luZG93LCBib29sIGhvcmZsYWcpCiAgIHdzZXRf YnVmZmVyIChwLCBRbmlsKTsKICAgd3NldF9jb21iaW5hdGlvbiAocCwgaG9yZmxhZywgd2lu ZG93KTsKICAgd3NldF9jb21iaW5hdGlvbl9saW1pdCAocCwgUW5pbCk7CisgIC8qIFJlc2V0 IGFueSBwcmV2aW91cyBhbmQgbmV4dCBidWZmZXJzIG9mIHAgd2hpY2ggaGF2ZSBiZWVuIGlu c3RhbGxlZAorICAgICBieSB0aGUgbWVtY3B5IGFib3ZlLiAgKi8KKyAgd3NldF9wcmV2X2J1 ZmZlcnMgKHAsIFFuaWwpOworICB3c2V0X25leHRfYnVmZmVycyAocCwgUW5pbCk7CiAgIHdz ZXRfd2luZG93X3BhcmFtZXRlcnMgKHAsIFFuaWwpOwogfQogCkBAIC00NDI2LDEwICs0NTQw LDYgQEAgbWFrZV93aW5kb3cgKHZvaWQpCiAgIHdzZXRfdmVydGljYWxfc2Nyb2xsX2Jhcl90 eXBlICh3LCBRdCk7CiAgIHdzZXRfaG9yaXpvbnRhbF9zY3JvbGxfYmFyX3R5cGUgKHcsIFF0 KTsKICAgd3NldF9jdXJzb3JfdHlwZSAodywgUXQpOwotICAvKiBUaGVzZSBMaXNwIGZpZWxk cyBhcmUgbWFya2VkIHNwZWNpYWxseSBzbyB0aGV5J3JlIG5vdCBzZXQgdG8gbmlsIGJ5Ci0g ICAgIGFsbG9jYXRlX3dpbmRvdy4gICovCi0gIHdzZXRfcHJldl9idWZmZXJzICh3LCBRbmls KTsKLSAgd3NldF9uZXh0X2J1ZmZlcnMgKHcsIFFuaWwpOwogCiAgIC8qIEluaXRpYWxpemUg bm9uLUxpc3AgZGF0YS4gIE5vdGUgdGhhdCBhbGxvY2F0ZV93aW5kb3cgemVyb2VzIG91dCBh bGwKICAgICAgbm9uLUxpc3AgZGF0YSwgc28gZG8gaXQgb25seSBmb3Igc2xvdHMgd2hpY2gg c2hvdWxkIG5vdCBiZSB6ZXJvLiAgKi8KQEAgLTUyNTIsNiArNTM2MiwxMSBAQCBERUZVTiAo ImRlbGV0ZS13aW5kb3ctaW50ZXJuYWwiLCBGZGVsZXRlX3dpbmRvd19pbnRlcm5hbCwgU2Rl bGV0ZV93aW5kb3dfaW50ZXJuYQogCSAgdW5jaGFpbl9tYXJrZXIgKFhNQVJLRVIgKHctPm9s ZF9wb2ludG0pKTsKIAkgIHVuY2hhaW5fbWFya2VyIChYTUFSS0VSICh3LT5zdGFydCkpOwog CSAgd3NldF9idWZmZXIgKHcsIFFuaWwpOworCSAgLyogQWRkIFdJTkRPVyB0byB0YWJsZSBv ZiBkZWFkIHdpbmRvd3Mgc28gd2hlbiBraWxsaW5nIGEgYnVmZmVyCisJICAgICBXSU5ET1cg bWVudGlvbnMsIGFsbCByZWZlcmVuY2VzIHRvIHRoYXQgYnVmZmVyIGNhbiBiZSByZW1vdmVk CisJICAgICBhbmQgdGhlIGJ1ZmZlciBiZSBjb2xsZWN0ZWQuICAqLworCSAgRnB1dGhhc2gg KG1ha2VfZml4bnVtICh3LT5zZXF1ZW5jZV9udW1iZXIpLAorCQkgICAgd2luZG93LCB3aW5k b3dfZGVhZF93aW5kb3dzX3RhYmxlKTsKIAl9CiAKICAgICAgIGlmIChOSUxQIChzLT5wcmV2 KSAmJiBOSUxQIChzLT5uZXh0KSkKQEAgLTczNTYsMTIgKzc0NzEsMjEgQEAgREVGVU4gKCJz ZXQtd2luZG93LWNvbmZpZ3VyYXRpb24iLCBGc2V0X3dpbmRvd19jb25maWd1cmF0aW9uLAog CQl9CiAJICAgIH0KIAorCSAgLyogUmVtb3ZlIHdpbmRvdyBmcm9tIHRoZSB0YWJsZSBvZiBk ZWFkIHdpbmRvd3MuICAqLworCSAgRnJlbWhhc2ggKG1ha2VfZml4bnVtICh3LT5zZXF1ZW5j ZV9udW1iZXIpLAorCQkgICAgd2luZG93X2RlYWRfd2luZG93c190YWJsZSk7CisKIAkgIGlm ICgoTklMUCAoZG9udF9zZXRfbWluaXdpbmRvdykgfHwgIU1JTklfV0lORE9XX1AgKHcpKQog CSAgICAgICYmIEJVRkZFUlAgKHAtPmJ1ZmZlcikgJiYgQlVGRkVSX0xJVkVfUCAoWEJVRkZF UiAocC0+YnVmZmVyKSkpCiAJICAgIC8qIElmIHNhdmVkIGJ1ZmZlciBpcyBhbGl2ZSwgaW5z dGFsbCBpdCwgdW5sZXNzIGl0J3MgYQogCSAgICAgICBtaW5pYnVmZmVyIHdlIGV4cGxpY2l0 bHkgcHJvaGliaXQuICAqLwogCSAgICB7Ci0JICAgICAgd3NldF9idWZmZXIgKHcsIHAtPmJ1 ZmZlcik7CisJICAgICAgaWYgKCFFUSAody0+Y29udGVudHMsIHAtPmJ1ZmZlcikpCisJCXsK KwkJICB3c2V0X2J1ZmZlciAodywgcC0+YnVmZmVyKTsKKwkJICB3aW5kb3dfZGlzY2FyZF9i dWZmZXJfZnJvbV93aW5kb3cgKHctPmNvbnRlbnRzLCB3aW5kb3csIGZhbHNlKTsKKwkJfQor CiAJICAgICAgdy0+c3RhcnRfYXRfbGluZV9iZWcgPSAhTklMUCAocC0+c3RhcnRfYXRfbGlu ZV9iZWcpOwogCSAgICAgIHNldF9tYXJrZXJfcmVzdHJpY3RlZCAody0+c3RhcnQsIHAtPnN0 YXJ0LCB3LT5jb250ZW50cyk7CiAJICAgICAgc2V0X21hcmtlcl9yZXN0cmljdGVkICh3LT5w b2ludG0sIHAtPnBvaW50bSwgdy0+Y29udGVudHMpOwpAQCAtNzQwNiw2ICs3NTMwLDcgQEAg REVGVU4gKCJzZXQtd2luZG93LWNvbmZpZ3VyYXRpb24iLCBGc2V0X3dpbmRvd19jb25maWd1 cmF0aW9uLAogCQkgcmVjcmVhdGUgKnNjcmF0Y2gqIGluIHRoZSBjb3Vyc2UgKHBhcnQgb2Yg SnVhbm1hJ3MgYnMtc2hvdwogCQkgc2NlbmFyaW8gZnJvbSBNYXJjaCAyMDExKS4gICovCiAJ ICAgICAgd3NldF9idWZmZXIgKHcsIG90aGVyX2J1ZmZlcl9zYWZlbHkgKEZjdXJyZW50X2J1 ZmZlciAoKSkpOworCSAgICAgIHdpbmRvd19kaXNjYXJkX2J1ZmZlcl9mcm9tX3dpbmRvdyAo dy0+Y29udGVudHMsIHdpbmRvdywgZmFsc2UpOwogCSAgICAgIC8qIFRoaXMgd2lsbCBzZXQg dGhlIG1hcmtlcnMgdG8gYmVnaW5uaW5nIG9mIHZpc2libGUKIAkJIHJhbmdlLiAgKi8KIAkg ICAgICBzZXRfbWFya2VyX3Jlc3RyaWN0ZWRfYm90aCAody0+c3RhcnQsIHctPmNvbnRlbnRz LCAwLCAwKTsKQEAgLTc1ODUsNiArNzcxMCwxMSBAQCBkZWxldGVfYWxsX2NoaWxkX3dpbmRv d3MgKExpc3BfT2JqZWN0IHdpbmRvdykKIAkgcG9zc2libGUgcmVzdXJyZWN0aW9uIGluIEZz ZXRfd2luZG93X2NvbmZpZ3VyYXRpb24uICAqLwogICAgICAgd3NldF9jb21iaW5hdGlvbl9s aW1pdCAodywgdy0+Y29udGVudHMpOwogICAgICAgd3NldF9idWZmZXIgKHcsIFFuaWwpOwor ICAgICAgLyogQWRkIFdJTkRPVyB0byB0YWJsZSBvZiBkZWFkIHdpbmRvd3Mgc28gd2hlbiBr aWxsaW5nIGEgYnVmZmVyCisJIFdJTkRPVyBtZW50aW9ucywgYWxsIHJlZmVyZW5jZXMgdG8g dGhhdCBidWZmZXIgY2FuIGJlIHJlbW92ZWQKKwkgYW5kIHRoZSBidWZmZXIgYmUgY29sbGVj dGVkLiAgKi8KKyAgICAgIEZwdXRoYXNoIChtYWtlX2ZpeG51bSAody0+c2VxdWVuY2VfbnVt YmVyKSwKKwkJd2luZG93LCB3aW5kb3dfZGVhZF93aW5kb3dzX3RhYmxlKTsKICAgICB9CiAK ICAgVndpbmRvd19saXN0ID0gUW5pbDsKQEAgLTg1OTQsNiArODcyNCw4IEBAIHN5bXNfb2Zf d2luZG93ICh2b2lkKQogICBERUZTWU0gKFFjb25maWd1cmF0aW9uLCAiY29uZmlndXJhdGlv biIpOwogICBERUZTWU0gKFFkZWxldGUsICJkZWxldGUiKTsKICAgREVGU1lNIChRZGVkaWNh dGVkLCAiZGVkaWNhdGVkIik7CisgIERFRlNZTSAoUXF1aXRfcmVzdG9yZSwgInF1aXQtcmVz dG9yZSIpOworICBERUZTWU0gKFFxdWl0X3Jlc3RvcmVfcHJldiwgInF1aXQtcmVzdG9yZS1w cmV2Iik7CiAKICAgREVGVkFSX0xJU1AgKCJ0ZW1wLWJ1ZmZlci1zaG93LWZ1bmN0aW9uIiwg VnRlbXBfYnVmZmVyX3Nob3dfZnVuY3Rpb24sCiAJICAgICAgIGRvYzogLyogTm9uLW5pbCBt ZWFucyBjYWxsIGFzIGZ1bmN0aW9uIHRvIGRpc3BsYXkgYSBoZWxwIGJ1ZmZlci4KQEAgLTg5 MTcsNiArOTA0OSwxNyBAQCBzeW1zX29mX3dpbmRvdyAodm9pZCkKIGRpc3BsYXllZCBhZnRl ciBhIHNjcm9sbGluZyBvcGVyYXRpb24gdG8gYmUgc29tZXdoYXQgaW5hY2N1cmF0ZS4gICov KTsKICAgZmFzdF9idXRfaW1wcmVjaXNlX3Njcm9sbGluZyA9IGZhbHNlOwogCisgIERFRlZB Ul9MSVNQICgid2luZG93LWRlYWQtd2luZG93cy10YWJsZSIsIHdpbmRvd19kZWFkX3dpbmRv d3NfdGFibGUsCisgICAgZG9jOiAvKiBIYXNoIHRhYmxlIG9mIGRlYWQgd2luZG93cy4KK0Vh Y2ggZW50cnkgaW4gdGhpcyB0YWJsZSBtYXBzIGEgd2luZG93IG51bWJlciB0byBhIHdpbmRv dyBvYmplY3QuCitFbnRyaWVzIGFyZSBhZGRlZCBieSBgZGVsZXRlLXdpbmRvdy1pbnRlcm5h bCcgYW5kIGFyZSByZW1vdmVkIGJ5IHRoZQorZ2FyYmFnZSBjb2xsZWN0b3IuCisKK1RoaXMg dGFibGUgaXMgbWFpbnRhaW5lZCBieSBjb2RlIGluIHdpbmRvdy5jIGFuZCBpcyBtYWRlIHZp c2libGUgaW4KK0VsaXNwIGZvciB0ZXN0aW5nIHB1cnBvc2VzIG9ubHkuICAqLyk7CisgIHdp bmRvd19kZWFkX3dpbmRvd3NfdGFibGUKKyAgICA9IENBTExOIChGbWFrZV9oYXNoX3RhYmxl LCBRQ3dlYWtuZXNzLCBRdCk7CisKICAgZGVmc3ViciAoJlNzZWxlY3RlZF93aW5kb3cpOwog ICBkZWZzdWJyICgmU29sZF9zZWxlY3RlZF93aW5kb3cpOwogICBkZWZzdWJyICgmU21pbmli dWZmZXJfd2luZG93KTsKQEAgLTkwMzIsNiArOTE3NSw3IEBAIHN5bXNfb2Zfd2luZG93ICh2 b2lkKQogICBkZWZzdWJyICgmU3dpbmRvd19wYXJhbWV0ZXJzKTsKICAgZGVmc3ViciAoJlN3 aW5kb3dfcGFyYW1ldGVyKTsKICAgZGVmc3ViciAoJlNzZXRfd2luZG93X3BhcmFtZXRlcik7 CisgIGRlZnN1YnIgKCZTd2luZG93X2Rpc2NhcmRfYnVmZmVyKTsKICAgZGVmc3ViciAoJlN3 aW5kb3dfY3Vyc29yX3R5cGUpOwogICBkZWZzdWJyICgmU3NldF93aW5kb3dfY3Vyc29yX3R5 cGUpOwogfQpkaWZmIC0tZ2l0IGEvc3JjL3dpbmRvdy5oIGIvc3JjL3dpbmRvdy5oCmluZGV4 IDg2OTMyMTgxMjUyLi4zMzVlMGEzNDUzZSAxMDA2NDQKLS0tIGEvc3JjL3dpbmRvdy5oCisr KyBiL3NyYy93aW5kb3cuaApAQCAtMTQyLDYgKzE0MiwxMiBAQCAjZGVmaW5lIFdJTkRPV19I X0lOQ0xVREVECiAgICAgICAgYXMgd2VsbC4gICovCiAgICAgTGlzcF9PYmplY3QgY29udGVu dHM7CiAKKyAgICAvKiBBIGxpc3Qgb2YgPGJ1ZmZlciwgd2luZG93LXN0YXJ0LCB3aW5kb3ct cG9pbnQ+IHRyaXBsZXMgbGlzdGluZworICAgICAgIGJ1ZmZlcnMgcHJldmlvdXNseSBzaG93 biBpbiB0aGlzIHdpbmRvdy4gICovCisgICAgTGlzcF9PYmplY3QgcHJldl9idWZmZXJzOwor ICAgIC8qIExpc3Qgb2YgYnVmZmVycyByZS1zaG93biBpbiB0aGlzIHdpbmRvdy4gICovCisg ICAgTGlzcF9PYmplY3QgbmV4dF9idWZmZXJzOworCiAgICAgLyogVGhlIG9sZCBidWZmZXIg b2YgdGhpcyB3aW5kb3csIHNldCB0byB0aGlzIHdpbmRvdydzIGJ1ZmZlciBieQogICAgICAg IHJ1bl93aW5kb3dfY2hhbmdlX2Z1bmN0aW9ucyBldmVyeSB0aW1lIGl0IHNlZXMgdGhpcyB3 aW5kb3cuCiAgICAgICAgVW51c2VkIGZvciBpbnRlcm5hbCB3aW5kb3dzLiAgKi8KQEAgLTIx OCwxNCArMjI0LDYgQEAgI2RlZmluZSBXSU5ET1dfSF9JTkNMVURFRAogICAgIHN0cnVjdCBn bHlwaF9tYXRyaXggKmN1cnJlbnRfbWF0cml4OwogICAgIHN0cnVjdCBnbHlwaF9tYXRyaXgg KmRlc2lyZWRfbWF0cml4OwogCi0gICAgLyogVGhlIHR3byBMaXNwX09iamVjdCBmaWVsZHMg YmVsb3cgYXJlIG1hcmtlZCBpbiBhIHNwZWNpYWwgd2F5LAotICAgICAgIHdoaWNoIGlzIHdo eSB0aGV5J3JlIHBsYWNlZCBhZnRlciBgY3VycmVudF9tYXRyaXgnLiAgKi8KLSAgICAvKiBB IGxpc3Qgb2YgPGJ1ZmZlciwgd2luZG93LXN0YXJ0LCB3aW5kb3ctcG9pbnQ+IHRyaXBsZXMg bGlzdGluZwotICAgICAgIGJ1ZmZlcnMgcHJldmlvdXNseSBzaG93biBpbiB0aGlzIHdpbmRv dy4gICovCi0gICAgTGlzcF9PYmplY3QgcHJldl9idWZmZXJzOwotICAgIC8qIExpc3Qgb2Yg YnVmZmVycyByZS1zaG93biBpbiB0aGlzIHdpbmRvdy4gICovCi0gICAgTGlzcF9PYmplY3Qg bmV4dF9idWZmZXJzOwotCiAgICAgLyogTnVtYmVyIHNheWluZyBob3cgcmVjZW50bHkgd2lu ZG93IHdhcyBzZWxlY3RlZC4gICovCiAgICAgRU1BQ1NfSU5UIHVzZV90aW1lOwogCkBAIC0x MjI4LDYgKzEyMjYsNyBAQCAjZGVmaW5lIENIRUNLX0xJVkVfV0lORE9XKFdJTkRPVykJCQkJ XAogZXh0ZXJuIHZvaWQgd3NldF9idWZmZXIgKHN0cnVjdCB3aW5kb3cgKiwgTGlzcF9PYmpl Y3QpOwogZXh0ZXJuIGJvb2wgd2luZG93X291dGRhdGVkIChzdHJ1Y3Qgd2luZG93ICopOwog ZXh0ZXJuIHB0cmRpZmZfdCB3aW5kb3dfcG9pbnQgKHN0cnVjdCB3aW5kb3cgKncpOworZXh0 ZXJuIHZvaWQgd2luZG93X2Rpc2NhcmRfYnVmZmVyX2Zyb21fZGVhZF93aW5kb3dzIChMaXNw X09iamVjdCk7CiBleHRlcm4gdm9pZCBpbml0X3dpbmRvd19vbmNlICh2b2lkKTsKIGV4dGVy biB2b2lkIGluaXRfd2luZG93ICh2b2lkKTsKIGV4dGVybiB2b2lkIHN5bXNfb2Zfd2luZG93 ICh2b2lkKTsK --------------RMD6CDRucDauQxOc8ngRmTVZ--
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 17 Jul 2024 09:24:02 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jul 17 05:24:01 2024 Received: from localhost ([127.0.0.1]:35084 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sU0tE-0000eU-2l for submit <at> debbugs.gnu.org; Wed, 17 Jul 2024 05:24:01 -0400 Received: from lists.gnu.org ([209.51.188.17]:34012) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sU0tB-0000eM-7p for submit <at> debbugs.gnu.org; Wed, 17 Jul 2024 05:23:59 -0400 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 <rudalics@HIDDEN>) id 1sU0t7-0000JR-TO for bug-gnu-emacs@HIDDEN; Wed, 17 Jul 2024 05:23:53 -0400 Received: from mout.gmx.net ([212.227.17.20]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <rudalics@HIDDEN>) id 1sU0t4-0005z8-00 for bug-gnu-emacs@HIDDEN; Wed, 17 Jul 2024 05:23:53 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1721208217; x=1721813017; i=rudalics@HIDDEN; bh=CPcBxgBgNsAMDoE7ta7iPds3w/J44fVEnAs/RN0URd0=; h=X-UI-Sender-Class:Content-Type:Message-ID:Date:MIME-Version: Subject:To:Cc:References:From:In-Reply-To:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=n4gO/MfdUfSKsDa+KmDhpYo6isIHo/jXeVuU2CuBYheW5IWtT9CyJiqiIFW+MIiT /o031EQJtvi/QkRIVJFEdecbRhbJj40ReTadOwDhOhRatqGk1sA3Dls3im4cFqBUl DC8Q0gElwd197kz+jkumxRcixXdBytKRr1aqik9t8Ynakoi3ipKpj+T+FJkuaanIn yq/jNWI1V75WDZZy7ktDwkDrvMAqbshK7Z0rVZU3IvyxYk4qMFF4l0fYMakA87nGh T5aDjUxLisCC8uPu7vQPl1eaQApTAYOhIIOCJYd1HKqX0FUdIhd0q23VnF5G+W+yf qFnOkr0DxT4kWJvUgA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([46.125.249.82]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MLi8m-1slgID0ATI-00VZsg; Wed, 17 Jul 2024 11:23:37 +0200 Content-Type: multipart/mixed; boundary="------------0cpMOBypjKdTdjfLu6e2lIGs" Message-ID: <9dfeeabb-f421-4cb3-863c-6411e7c4b8a5@HIDDEN> Date: Wed, 17 Jul 2024 11:23:31 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: =?UTF-8?Q?Bj=C3=B6rn_Bidar?= <bjorn.bidar@HIDDEN>, martin rudalics via Bug reports for GNU "Emacs, " the Swiss army knife of text editors <bug-gnu-emacs@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <1fb1cc7a-b8ea-4d6d-ac6d-19abffef44f3@HIDDEN> <ee4e7e95-53d3-4b01-bd1a-ae2cd77352b2@HIDDEN> <871q3tc7da.fsf@> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <871q3tc7da.fsf@> X-Provags-ID: V03:K1:VhVgOv/J4yQ8jOf6ugrt+aPc2W+/m5varTwe2cdmoC36+jy9SvC YWFgH2+QfjrP5Nas8lpCiotccDO1jMyTpMj9bu8JU1rrO16Jqe/F8rcdeIbh00hgFtb2enz eK252+YnjAAn+NjEhRY3B0Woq87Vob3Mmqbu45WxC7q3m+arG6TRAAj2FKYVyk7rd3FCfvS PCU0wW26brVeDqzZKKLEQ== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:s/nC/AnwZf8=;HBdFjC4WbVuxKgkYa8QoKKEFmaT Jmog66OB+4w+SFVMjpY9LRErt/i0YXc5KxZNqHxN+ycDikMiWWutInH4zNpy1HO4SMRlszjRL TdhhKQkiQS4mynuSa3PKdPDMQoEDJOtx2JfZnM8XBE2a1ksXL2T7CwRgfcXeDjPPsqnR7DHyA YUeWQyI43Cqhy20IdkIH3uDCjoAzDBAQmpBvHPyxhj+ft4WrUBVtW5N9rlF/+JhOx/menlNhU U1npD87qohHtDznv0TD1XPyecxx6JUwzfY/C02jPy5EHYj3k56os0riKzS/k2zGrC7vrQvN31 okpZN2pYi59wMAnNlINwlLbFvWBjYKlJXDAR15YRuLvC1XM3rDZ3emDL/cKcilyLMor+OIutg VKTCbjVLaySl+CWSCScSGX2ePII/ErucpHIerMhYkPkYJes0Ch/ZbWfwgf21pnKHJHrdDYgZ3 deHw8QZfsiDCGH8qdP+vxX4aCmJwxsx5neLkgH3/N+/Zi+silsAd5/rfa9m1eRkS0xBbUhNpk r0hiKtgIqZ1r5WfDvvGEXFvqEsQ3dHAuNxIMijjmUdVFHF/4dAB8GnAYgABlIzCAoD8uNJmcS Yhzn3vFayLAjFo+jgVVs01UCVf5k8NSvbPyWiZtL+pIMSFhZsMzvbUnH7jQXtHBsHpjjqKvhf 4X7dqoy+Hl0B+SgUBix/swgygICEe6bLd1ouQXCVOxsVL8sDtDZCJicpHwza8BlQukVvD/xvf 3wGwldUvg1gz+70Ccv0Z/XloZSwHhG2yrLxMsEdk2POt8HejjyTFzdc0U7w/9oEoxo7QEteWe 3n3PAOEDPkVZn5kMKwInWgd7pOEX7yIjn7ybbrFN3G9nM= Received-SPF: pass client-ip=212.227.17.20; envelope-from=rudalics@HIDDEN; helo=mout.gmx.net X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 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_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit Cc: 59862 <at> debbugs.gnu.org, juri@HIDDEN X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.3 (--) This is a multi-part message in MIME format. --------------0cpMOBypjKdTdjfLu6e2lIGs Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit > I meant window. Same as you explain further below in your message > I call quit-window on a dedicate window the frame also dies with it. Note that if a window is dedicated, 'quit-restore-window' will already do its best to delete the window together with its frame. > I think if the window inside of a frame didn't contain any other buffer > than the initial buffer and a new buffer that uses the same window > there could be the argument that the window should die and thus the > frame too. I attach a patch (including all previous changes) that tries to do that. In particular, evaluating (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-pop-up-window))) '(quit-restore-window-no-switch t) '(frame-auto-hide-function 'delete-frame)) and doing C-x 5 2 then C-h i then C-x 0 and finally q, will delete the second frame. Alternatively, evaluating (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-same-window))) '(quit-restore-window-no-switch 'skip-initial) '(frame-auto-hide-function 'delete-frame)) and doing C-x 5 2 then C-h i and q, will delete the second frame too. Finally, evaluating (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-same-window))) '(quit-restore-window-no-switch t) '(frame-auto-hide-function 'delete-frame)) and doing C-x 5 2 then C-h i then C-x k *scratch* and finally q will also delete the second frame. martin --------------0cpMOBypjKdTdjfLu6e2lIGs Content-Type: text/x-patch; charset=UTF-8; name="windows-and-buffers.diff" Content-Disposition: attachment; filename="windows-and-buffers.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2xpc3Avd2luZG93LmVsIGIvbGlzcC93aW5kb3cuZWwKaW5kZXggOWZj MmU1ZDY1ZTguLmFkNTUyZjUxMzllIDEwMDY0NAotLS0gYS9saXNwL3dpbmRvdy5lbAorKysg Yi9saXNwL3dpbmRvdy5lbApAQCAtNDU0MiwxNCArNDU0MiwxOCBAQCByZWNvcmQtd2luZG93 LWJ1ZmZlcgogICAgICAgKHB1c2gtd2luZG93LWJ1ZmZlci1vbnRvLXByZXYgd2luZG93KQog ICAgICAgKHJ1bi1ob29rcyAnYnVmZmVyLWxpc3QtdXBkYXRlLWhvb2spKSkpCiAKKzs7IEEg dmVyc2lvbiBpbiBDIHRoYXQgaGFuZGxlcyBkZWFkIHdpbmRvd3MgKHRoYXQgcHJlc3VtYWJs eSBhcmUgcGFydCBvZgorOzsgYSBzYXZlZCB3aW5kb3cgY29uZmlndXJhdGlvbikgbGl2ZXMg aW4gd2luZG93LmMgYW5kIGlzIGNhbGxlZAorOzsgd2luZG93X2Rpc2NhcmRfYnVmZmVyX2Zy b21fZGVhZF93aW5kb3cuICBXZSBjb3VsZCBjYWxsIHRoYXQgZnJvbSBoZXJlCis7OyBidXQg aXQgc2VlbXMgbW9yZSBwcmFjdGljYWwgdG8gaGFuZGxlIGxpdmUgd2luZG93cyBlbnRpcmVs eSBpbiBFbGlzcC4KIChkZWZ1biB1bnJlY29yZC13aW5kb3ctYnVmZmVyICgmb3B0aW9uYWwg d2luZG93IGJ1ZmZlcikKICAgIlVucmVjb3JkIEJVRkZFUiBpbiBXSU5ET1cuCi1XSU5ET1cg bXVzdCBiZSBhIGxpdmUgd2luZG93IGFuZCBkZWZhdWx0cyB0byB0aGUgc2VsZWN0ZWQgb25l LgotQlVGRkVSIG11c3QgYmUgYSBsaXZlIGJ1ZmZlciBhbmQgZGVmYXVsdHMgdG8gdGhlIGJ1 ZmZlciBvZgotV0lORE9XLgorV0lORE9XIG11c3QgYmUgYSBsaXZlIHdpbmRvdyBhbmQgZGVm YXVsdHMgdG8gdGhlIHNlbGVjdGVkIG9uZS4gIEJVRkZFUgorbXVzdCBiZSBhIGxpdmUgYnVm ZmVyIGFuZCBkZWZhdWx0cyB0byB0aGUgYnVmZmVyIG9mIFdJTkRPVyAoYWx0aG91Z2gKK3Ro YXQgZGVmYXVsdCBoYXJkbHkgbWFrZXMgYW55IHNlbnNlKS4KIAotTWFrZSBCVUZGRVIgZGlz YXBwZWFyIGZyb20gYWxsIHZhcmlhYmxlcyBtZW50aW9uZWQgYnkgdGhlIG9iamVjdCBvZgot V0lORE9XLiAgVGhpcyBpbmNsdWRlcyB0aGUgYnVmZmVycyBwcmV2aW91c2x5IHNod29uIGlu IFdJTkRPVyBhcyB3ZWxsIGFzCitNYWtlIEJVRkZFUiBkaXNhcHBlYXIgZnJvbSBtb3N0IGNv bXBvbmVudHMgc3BlY2lmaWVkIGJ5IHRoZSBvYmplY3Qgb2YKK1dJTkRPVy4gIFRoaXMgaW5j bHVkZXMgdGhlIGJ1ZmZlcnMgcHJldmlvdXNseSBzaG93biBpbiBXSU5ET1cgYXMgd2VsbCBh cwogYW55IGJ1ZmZlcnMgbWVudGlvbmVkIGJ5IFdJTkRPVydzIGBxdWl0LXJlc3RvcmUnIGFu ZCBgcXVpdC1yZXN0b3JlLXByZXYnCiBwYXJhbWV0ZXJzLiIKICAgKGxldCogKCh3aW5kb3cg KHdpbmRvdy1ub3JtYWxpemUtd2luZG93IHdpbmRvdyB0KSkKQEAgLTQ1NjIsNyArNDU2Niwx MyBAQCB1bnJlY29yZC13aW5kb3ctYnVmZmVyCiAgICAgICAgd2luZG93IChhc3NxLWRlbGV0 ZS1hbGwgYnVmZmVyICh3aW5kb3ctcHJldi1idWZmZXJzIHdpbmRvdykpKQogICAgICAgKHNl dC13aW5kb3ctbmV4dC1idWZmZXJzCiAgICAgICAgd2luZG93IChkZWxxIGJ1ZmZlciAod2lu ZG93LW5leHQtYnVmZmVycyB3aW5kb3cpKSkKLQorICAgICAgOzsgSWYgdGhlIGZvdXJ0aCBl bGVtZW50cyBvZiB0aGUgJ3F1aXQtcmVzdG9yZScgb3IKKyAgICAgIDs7ICdxdWl0LXJlc3Rv cmUtcHJldicgcGFyYW1ldGVycyBlcXVhbCBCVUZGRVIsIHRoZXNlIHBhcmFtZXRlcnMKKyAg ICAgIDs7IGJlY29tZSB1c2VsZXNzIC0gaW4gJ3F1aXQtcmVzdG9yZS13aW5kb3cnIHRoZSBm b3VydGggZWxlbWVudAorICAgICAgOzsgbXVzdCBlcXVhbCB0aGUgYnVmZmVyIG9mIFdJTkRP VyBpbiBvcmRlciB0byB1c2UgdGhhdCBwYXJhbWV0ZXIuCisgICAgICA7OyBJZiBCVUZGRVIg aXMgbWVudGlvbmVkIGluIHRoZSBzZWNvbmQgZWxlbWVudCBvZiB0aGUgcGFyYW1ldGVyLAor ICAgICAgOzsgJ3F1aXQtcmVzdG9yZS13aW5kb3cnIGNhbm5vdCBwb3NzaWJseSBzaG93IEJV RkZFUiBpbnN0ZWFkOyBzbworICAgICAgOzsgdGhpcyBwYXJhbWV0ZXIgYmVjb21lcyB1c2Vs ZXNzIHRvby4KICAgICAgICh3aGVuIChvciAoZXEgYnVmZmVyIChudGggMyBxdWl0LXJlc3Rv cmUtcHJldikpCiAJCShhbmQgKGxpc3RwIChzZXRxIHF1YWQgKG50aCAxIHF1aXQtcmVzdG9y ZS1wcmV2KSkpCiAJCSAgICAgKGVxIChjYXIgcXVhZCkgYnVmZmVyKSkpCkBAIC00NTcyLDcg KzQ1ODIsOCBAQCB1bnJlY29yZC13aW5kb3ctYnVmZmVyCiAJCShhbmQgKGxpc3RwIChzZXRx IHF1YWQgKG50aCAxIHF1aXQtcmVzdG9yZSkpKQogCQkgICAgIChlcSAoY2FyIHF1YWQpIGJ1 ZmZlcikpKQogCShzZXQtd2luZG93LXBhcmFtZXRlcgotCSB3aW5kb3cgJ3F1aXQtcmVzdG9y ZSAod2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZS1wcmV2KSkpKSkpCisJ IHdpbmRvdyAncXVpdC1yZXN0b3JlICh3aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVpdC1y ZXN0b3JlLXByZXYpKQorCShzZXQtd2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVz dG9yZS1wcmV2IG5pbCkpKSkpCiAKIChkZWZ1biBzZXQtd2luZG93LWJ1ZmZlci1zdGFydC1h bmQtcG9pbnQgKHdpbmRvdyBidWZmZXIgJm9wdGlvbmFsIHN0YXJ0IHBvaW50KQogICAiU2V0 IFdJTkRPVydzIGJ1ZmZlciB0byBCVUZGRVIuCkBAIC01MDkxLDYgKzUxMDIsMTggQEAgcHJl dmlvdXMtYnVmZmVyCiAgICAgICAgICAgICAgICAgIChub3QgKG9yIGV4ZWN1dGluZy1rYmQt bWFjcm8gbm9uaW50ZXJhY3RpdmUpKSkKICAgICAgICAgKHVzZXItZXJyb3IgIk5vIHByZXZp b3VzIGJ1ZmZlciIpKSkpKSkKIAorKGRlZmN1c3RvbSBraWxsLWJ1ZmZlci1xdWl0LXdpbmRv d3MgbmlsCisgICJOb24tbmlsIG1lYW5zIGtpbGxpbmcgYnVmZmVycyBzaGFsbCBxdWl0IHdp bmRvd3MuCitJZiB0aGlzIGlzIG5pbCwga2lsbGluZyBhIGJ1ZmZlciBtYXkgZGVsZXRlIGRl ZGljYXRlZCB3aW5kb3dzIG9ubHkuICBJZgordGhpcyBpcyBub24tbmlsLCBga2lsbC1idWZm ZXInIChhbmQgYHJlcGxhY2UtYnVmZmVyLWluLXdpbmRvd3MnIGluCitjb25zZXF1ZW5jZSkg aGF2ZSBgcXVpdC1yZXN0b3JlLXdpbmRvdycgZGVhbCB3aXRoIGFueSB3aW5kb3cgc2hvd2lu ZyB0aGUKK2J1ZmZlciB0byBiZSBraWxsZWQgd2hpY2ggbWF5IGRlbGV0ZSB0aGUgd2luZG93 IGlmIGl0J3Mgbm90IGRlZGljYXRlZCB0bworaXRzIGJ1ZmZlci4gIEFsc28sIGBkZWxldGUt d2luZG93cy1vbicgd2lsbCB1c2UgYHF1aXQtcmVzdG9yZS13aW5kb3cnIGFzCitmYWxsYmFj ayB3aGVuIGEgd2luZG93IGNhbm5vdCBiZSBkZWxldGVkIG90aGVyd2lzZS4iCisgIDp0eXBl ICdib29sZWFuCisgIDp2ZXJzaW9uICIzMS4xIgorICA6Z3JvdXAgJ3dpbmRvd3MpCisKIChk ZWZ1biBkZWxldGUtd2luZG93cy1vbiAoJm9wdGlvbmFsIGJ1ZmZlci1vci1uYW1lIGZyYW1l KQogICAiRGVsZXRlIGFsbCB3aW5kb3dzIHNob3dpbmcgQlVGRkVSLU9SLU5BTUUuCiBCVUZG RVItT1ItTkFNRSBtYXkgYmUgYSBidWZmZXIgb3IgdGhlIG5hbWUgb2YgYW4gZXhpc3Rpbmcg YnVmZmVyCkBAIC01MTI4LDggKzUxNTEsMTAgQEAgZGVsZXRlLXdpbmRvd3Mtb24KIHRlcm1p bmFsLCBkZWxldGUgdGhhdCBmcmFtZS4gIE90aGVyd2lzZSwgZG8gbm90IGRlbGV0ZSBhIGZy YW1lJ3Mgcm9vdAogd2luZG93IGlmIGl0IHNob3dzIHRoZSBidWZmZXIgc3BlY2lmaWVkIGJ5 IEJVRkZFUi1PUi1OQU1FIGFuZCBkbyBub3QKIGRlbGV0ZSBhbnkgZnJhbWUncyBtYWluIHdp bmRvdyBzaG93aW5nIHRoYXQgYnVmZmVyIGVpdGhlci4gIFJhdGhlciwgaW4KLWFueSBzdWNo IGNhc2UsIGNhbGwgYHF1aXQtcmVzdG9yZS13aW5kb3cnIHRvIHNob3cgYW5vdGhlciBidWZm ZXIgaW4gdGhhdAotd2luZG93IGFuZCBtYWtlIHN1cmUgdGhlIHdpbmRvdyBpcyBubyBtb3Jl IGRlZGljYXRlZCB0byBpdHMgYnVmZmVyLgorYW55IHN1Y2ggY2FzZSwgY2FsbCBlaXRoZXIg YHF1aXQtcmVzdG9yZS13aW5kb3cnIChwcm92aWRlZAorYGtpbGwtYnVmZmVyLXF1aXQtd2lu ZG93cycgaXMgbm9uLW5pbCkgb3IgYHN3aXRjaC10by1wcmV2LWJ1ZmZlcicgdG8KK3Nob3cg YW5vdGhlciBidWZmZXIgaW4gdGhhdCB3aW5kb3cgYW5kIG1ha2Ugc3VyZSB0aGUgd2luZG93 IGlzIG5vIG1vcmUKK2RlZGljYXRlZCB0byBpdHMgYnVmZmVyLgogCiBJZiB0aGUgYnVmZmVy IHNwZWNpZmllZCBieSBCVUZGRVItT1ItTkFNRSBpcyBzaG93biBpbiBhIG1pbmlidWZmZXIK IHdpbmRvdywgZG8gbm90aGluZyBmb3IgdGhhdCB3aW5kb3cuICBGb3IgYW55IHdpbmRvdyB0 aGF0IGRvZXMgbm90IHNob3cKQEAgLTUxNjYsOSArNTE5MSwxOCBAQCBkZWxldGUtd2luZG93 cy1vbgogCSAgICAgKChlcSBkZWxldGFibGUgdCkKIAkgICAgICA7OyBEZWxldGUgd2luZG93 LgogCSAgICAgIChkZWxldGUtd2luZG93IHdpbmRvdykpCisJICAgICAoa2lsbC1idWZmZXIt cXVpdC13aW5kb3dzCisJICAgICAgKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93ICdidXJ5 KQorCSAgICAgICh3aGVuICh3aW5kb3ctbGl2ZS1wIHdpbmRvdykKKwkJOzsgVW5yZWNvcmQg QlVGRkVSIGluIHRoaXMgd2luZG93LgorCQkodW5yZWNvcmQtd2luZG93LWJ1ZmZlciB3aW5k b3cgYnVmZmVyKSkpCiAJICAgICAodAotCSAgICAgICh3aGVuIChlcSAod2luZG93LWJ1ZmZl ciB3aW5kb3cpIGJ1ZmZlcikKLQkJKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93ICdidXJ5 KSkKKwkgICAgICA7OyBJbiB3aW5kb3cgc3dpdGNoIHRvIHByZXZpb3VzIGJ1ZmZlci4KKwkg ICAgICAoc2V0LXdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cgbmlsKQorCSAgICAgIChzd2l0 Y2gtdG8tcHJldi1idWZmZXIgd2luZG93ICdidXJ5KQorCSAgICAgIDs7IFJlc3RvcmUgdGhl IGRlZGljYXRlZCAnc2lkZScgZmxhZy4KKwkgICAgICAod2hlbiAoZXEgZGVkaWNhdGVkICdz aWRlKQorICAgICAgICAgICAgICAgIChzZXQtd2luZG93LWRlZGljYXRlZC1wIHdpbmRvdyAn c2lkZSkpCiAJICAgICAgKHdoZW4gKHdpbmRvdy1saXZlLXAgd2luZG93KQogCQk7OyBVbnJl Y29yZCBCVUZGRVIgaW4gdGhpcyB3aW5kb3cuCiAJCSh1bnJlY29yZC13aW5kb3ctYnVmZmVy IHdpbmRvdyBidWZmZXIpKSkpKQpAQCAtNTE3NywyOSArNTIxMSw0NiBAQCBkZWxldGUtd2lu ZG93cy1vbgogCiAoZGVmdW4gcmVwbGFjZS1idWZmZXItaW4td2luZG93cyAoJm9wdGlvbmFs IGJ1ZmZlci1vci1uYW1lKQogICAiUmVwbGFjZSBCVUZGRVItT1ItTkFNRSB3aXRoIHNvbWUg b3RoZXIgYnVmZmVyIGluIGFsbCB3aW5kb3dzIHNob3dpbmcgaXQuCi1CVUZGRVItT1ItTkFN RSBtYXkgYmUgYSBidWZmZXIgb3IgdGhlIG5hbWUgb2YgYW4gZXhpc3RpbmcgYnVmZmVyCi1h bmQgZGVmYXVsdHMgdG8gdGhlIGN1cnJlbnQgYnVmZmVyLiAgTWluaWJ1ZmZlciB3aW5kb3dz IGFyZSBub3QKLWNvbnNpZGVyZWQuCi0KLVdpdGggdGhlIGV4Y2VwdGlvbiBvZiBzaWRlIHdp bmRvd3MsIHdoZW4gYSB3aW5kb3cgc2hvd2luZyBCVUZGRVItT1ItTkFNRQotaXMgZGVkaWNh dGVkLCB0aGF0IHdpbmRvdyBpcyBkZWxldGVkLiAgSWYgdGhhdCB3aW5kb3cgaXMgdGhlIG9u bHkgd2luZG93Ci1vbiBpdHMgZnJhbWUsIHRoZSBmcmFtZSBpcyBkZWxldGVkIHRvbyB3aGVu IHRoZXJlIGFyZSBvdGhlciBmcmFtZXMgbGVmdC4KLUlmIHRoZXJlIGFyZSBubyBvdGhlciBm cmFtZXMgbGVmdCwgc29tZSBvdGhlciBidWZmZXIgaXMgZGlzcGxheWVkIGluIHRoYXQKK0JV RkZFUi1PUi1OQU1FIG1heSBiZSBhIGJ1ZmZlciBvciB0aGUgbmFtZSBvZiBhbiBleGlzdGlu ZyBidWZmZXIgYW5kCitkZWZhdWx0cyB0byB0aGUgY3VycmVudCBidWZmZXIuICBNaW5pYnVm ZmVyIHdpbmRvd3MgYXJlIG5vdCBjb25zaWRlcmVkLgorCitJZiB0aGUgb3B0aW9uIGBraWxs LWJ1ZmZlci1xdWl0LXdpbmRvd3MnIGlzIG5pbCwgYmVoYXZlIGFzIGZvbGxvd3M6IFdpdGgK K3RoZSBleGNlcHRpb24gb2Ygc2lkZSB3aW5kb3dzLCB3aGVuIGEgd2luZG93IHNob3dpbmcg QlVGRkVSLU9SLU5BTUUgaXMKK2RlZGljYXRlZCwgZGVsZXRlIHRoYXQgd2luZG93LiAgSWYg dGhhdCB3aW5kb3cgaXMgdGhlIG9ubHkgd2luZG93IG9uIGl0cworZnJhbWUsIGRlbGV0ZSBp dHMgZnJhbWUgd2hlbiB0aGVyZSBhcmUgb3RoZXIgZnJhbWVzIGxlZnQuICBJbiBhbnkgb3Ro ZXIKK2Nhc2UsIGNhbGwgYHN3aXRjaC10by1wcmV2LWJ1ZmZlcicgdG8gZGlzcGxheSBzb21l IG90aGVyIGJ1ZmZlciBpbiB0aGF0CiB3aW5kb3cuCiAKLVRoaXMgZnVuY3Rpb24gcmVtb3Zl cyB0aGUgYnVmZmVyIGRlbm90ZWQgYnkgQlVGRkVSLU9SLU5BTUUgZnJvbSBhbGwKLXdpbmRv dy1sb2NhbCBidWZmZXIgbGlzdHMgYW5kIHJlbW92ZXMgYW55IGBxdWl0LXJlc3RvcmUnIG9y Ci1gcXVpdC1yZXN0b3JlLXByZXYnIHBhcmFtZXRlcnMgbWVudGlvbmluZyBpdC4iCitJZiBg a2lsbC1idWZmZXItcXVpdC13aW5kb3dzJyBpcyBub24tbmlsLCBjYWxsIGBxdWl0LXJlc3Rv cmUtd2luZG93JyBmb3IKK2FueSB3aW5kb3cgc2hvd2luZyBCVUZGRVItT1ItTkFNRSB3aXRo IHRoZSBhcmd1bWVudCBCVVJZLU9SLUtJTEwgc2V0IHRvCitga2lsbGluZycgdG8gYXZvaWQg dGhhdCB0aGUgbGF0dGVyIGtpbGxzIHRoZSBidWZmZXIgcHJlbWF0dXJlbHkuCisKK0luIGVp dGhlciBjYXNlLCByZW1vdmUgdGhlIGJ1ZmZlciBkZW5vdGVkIGJ5IEJVRkZFUi1PUi1OQU1F IGZyb20gdGhlCitsaXN0cyBvZiBwcmV2aW91cyBhbmQgbmV4dCBidWZmZXJzIG9mIGFsbCB3 aW5kb3dzIGFuZCByZW1vdmUgYW55CitgcXVpdC1yZXN0b3JlJyBvciBgcXVpdC1yZXN0b3Jl LXByZXYnIHBhcmFtZXRlcnMgbWVudGlvbmluZyBpdC4KKworVGhpcyBmdW5jdGlvbiBpcyBj YWxsZWQgYnkgYGtpbGwtYnVmZmVyJyB3aGljaCBraWxscyB0aGUgYnVmZmVyCitzcGVjaWZp ZWQgYnkgYGJ1ZmZlci1vci1uYW1lJyBhZnRlcndhcmRzLiAgSXQgbmV2ZXIga2lsbHMgYSBi dWZmZXIgYnkKK2l0c2VsZi4iCiAgIChpbnRlcmFjdGl2ZSAiYkJ1ZmZlciB0byByZXBsYWNl OiAiKQogICAobGV0ICgoYnVmZmVyICh3aW5kb3ctbm9ybWFsaXplLWJ1ZmZlciBidWZmZXIt b3ItbmFtZSkpKQotICAgIDs7IFNjYW4gYWxsIHdpbmRvd3MuICBXZSBoYXZlIHRvIHVucmVj b3JkIEJVRkZFUiBpbiB0aG9zZSBub3QKLSAgICA7OyBzaG93aW5nIGl0LgorICAgIDs7IFNj YW4gYWxsIHdpbmRvd3MuICBXZSBoYXZlIHRvIHVucmVjb3JkIEJVRkZFUi1PUi1OQU1FIGlu IHRob3NlCisgICAgOzsgbm90IHNob3dpbmcgaXQuCiAgICAgKGRvbGlzdCAod2luZG93ICh3 aW5kb3ctbGlzdC0xIG5pbCBuaWwgdCkpCiAgICAgICAod2hlbiAoZXEgKHdpbmRvdy1idWZm ZXIgd2luZG93KSBidWZmZXIpCi0JKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93KSkKLSAg ICAgICh3aGVuICh3aW5kb3ctbGl2ZS1wIHdpbmRvdykKLQk7OyBVbnJlY29yZCBCVUZGRVIg aW4gdGhpcyB3aW5kb3cuCi0JKHVucmVjb3JkLXdpbmRvdy1idWZmZXIgd2luZG93IGJ1ZmZl cikpKSkpCisJKGlmIGtpbGwtYnVmZmVyLXF1aXQtd2luZG93cworCSAgICAocXVpdC1yZXN0 b3JlLXdpbmRvdyB3aW5kb3cgJ2tpbGxpbmcpCisJICAobGV0ICgoZGVkaWNhdGVkLXNpZGUg KGVxICh3aW5kb3ctZGVkaWNhdGVkLXAgd2luZG93KSAnc2lkZSkpKQorICAgICAgICAgICAg KHdoZW4gKG9yIGRlZGljYXRlZC1zaWRlIChub3QgKHdpbmRvdy0tZGVsZXRlIHdpbmRvdyB0 ICdraWxsKSkpCisJICAgICAgOzsgU3dpdGNoIHRvIGFub3RoZXIgYnVmZmVyIGluIHRoYXQg d2luZG93LgorCSAgICAgIChzZXQtd2luZG93LWRlZGljYXRlZC1wIHdpbmRvdyBuaWwpCisJ ICAgICAgKGlmIChzd2l0Y2gtdG8tcHJldi1idWZmZXIgd2luZG93ICdraWxsKQorICAgICAg ICAgICAgICAgICAgKGFuZCBkZWRpY2F0ZWQtc2lkZSAoc2V0LXdpbmRvdy1kZWRpY2F0ZWQt cCB3aW5kb3cgJ3NpZGUpKQorCQkod2luZG93LS1kZWxldGUgd2luZG93IG5pbCAna2lsbCkp KSkpKQorCisJKHdoZW4gKHdpbmRvdy1saXZlLXAgd2luZG93KQorCSAgOzsgVW5yZWNvcmQg QlVGRkVSIGluIHRoaXMgd2luZG93LgorCSAgKHVucmVjb3JkLXdpbmRvdy1idWZmZXIgd2lu ZG93IGJ1ZmZlcikpKSkpCiAKIChkZWZjdXN0b20gcXVpdC13aW5kb3ctaG9vayBuaWwKICAg Ikhvb2sgcnVuIGJlZm9yZSBwZXJmb3JtaW5nIGFueSBvdGhlciBhY3Rpb25zIGluIHRoZSBg cXVpdC13aW5kb3cnIGNvbW1hbmQuIgpAQCAtNTIwNyw2ICs1MjU4LDIzIEBAIHF1aXQtd2lu ZG93LWhvb2sKICAgOnZlcnNpb24gIjI3LjEiCiAgIDpncm91cCAnd2luZG93cykKIAorKGRl ZmN1c3RvbSBxdWl0LXJlc3RvcmUtd2luZG93LW5vLXN3aXRjaCBuaWwKKyAgIk5vbi1uaWwg bWVhbnMgYHF1aXQtcmVzdG9yZS13aW5kb3cnIHByZWZlcmFibHkgd29uJ3Qgc3dpdGNoIGJ1 ZmZlcnMuCitJZiB0aGlzIGlzIG5pbCwgYHF1aXQtcmVzdG9yZS13aW5kb3cnIHdpbGwgY2Fs bCBgc3dpdGNoLXRvLXByZXYtYnVmZmVyJwordW5sZXNzIHRoZSB3aW5kb3cgaGFzIGJlZW4g bWFkZSBieSBgZGlzcGxheS1idWZmZXInLiAgSWYgdGhpcyBpcyB0LAorYHF1aXQtcmVzdG9y ZS13aW5kb3cnIHdpbGwgc3dpdGNoIHRvIGEgcHJldmlvdXMgYnVmZmVyIG9ubHkgaWYgYSBs aXZlCitidWZmZXIgZXhpc3RzIHRoYXQgd2FzIHByZXZpb3VzbHkgc2hvd24gaW4gdGhhdCB3 aW5kb3cuICBJZiB0aGlzIGlzIHRoZQorc3ltYm9sIGBza2lwLWluaXRpYWwnLCBpdCB3aWxs IG5vdCBzd2l0Y2ggdG8gdGhlIGluaXRpYWwgYnVmZmVyIG9mIHRoZQord2luZG93J3MgYHF1 aXQtcmVzdG9yZScgcGFyYW1ldGVyLgorCitJbiBlaXRoZXIgY2FzZSwgaWYgYHF1aXQtcmVz dG9yZS13aW5kb3cnIGRvZXNuJ3Qgc3dpdGNoIHRvIGEgcHJldmlvdXMKK2J1ZmZlciwgaXQg d2lsbCB0cnkgdG8gZGVsZXRlIHRoZSB3aW5kb3cgKGFuZCBtYXliZSBpdHMgZnJhbWUpIGlu c3RlYWQuCitOb3RlIGFsc28gdGhhdCBpZiBhIHdpbmRvdyBpcyBkZWRpY2F0ZWQsIGBxdWl0 LXJlc3RvcmUtd2luZG93JyB3aWxsCit1c3VhbGx5IG5vdCBzd2l0Y2ggdG8gYSBwcmV2aW91 cyBidWZmZXIgaW4gaXQuIgorICA6dHlwZSAnYm9vbGVhbgorICA6dmVyc2lvbiAiMzEuMSIK KyAgOmdyb3VwICd3aW5kb3dzKQorCiAoZGVmdW4gd2luZG93LS1xdWl0LXJlc3RvcmUtc2Vs ZWN0LXdpbmRvdyAod2luZG93KQogICAiU2VsZWN0IFdJTkRPVyBhZnRlciBoYXZpbmcgcXVp dCBhbm90aGVyIG9uZS4KIERvIG5vdCBzZWxlY3QgYW4gaW5hY3RpdmUgbWluaWJ1ZmZlciB3 aW5kb3cuIgpAQCAtNTIyNyw5ICs1Mjk1LDEwIEBAIHF1aXQtcmVzdG9yZS13aW5kb3cKIHVz ZWQgdG8gcmVzdG9yZSB0aGUgcHJldmlvdXNseSBzaG93biBidWZmZXIuICBTZWUgSW5mbyBu b2RlIGAoZWxpc3ApCiBRdWl0dGluZyBXaW5kb3dzJyBmb3IgbW9yZSBkZXRhaWxzLgogCi1J ZiBXSU5ET1cncyBkZWRpY2F0ZWQgZmxhZyBpcyB0LCB0cnkgdG8gZGVsZXRlIFdJTkRPVy4g IElmIGl0Ci1lcXVhbHMgdGhlIHZhbHVlIGBzaWRlJywgcmVzdG9yZSB0aGF0IHZhbHVlIHdo ZW4gV0lORE9XIGlzIG5vdAotZGVsZXRlZC4KK0lmIFdJTkRPVydzIGRlZGljYXRlZCBmbGFn IGlzIHQsIHRyeSB0byBkZWxldGUgV0lORE9XLiAgSWYgaXQgZXF1YWxzIHRoZQordmFsdWUg YHNpZGUnLCByZXN0b3JlIHRoYXQgdmFsdWUgd2hlbiBXSU5ET1cgaXMgbm90IGRlbGV0ZWQu ICBXaGV0aGVyCitXSU5ET1cgb3IgaXRzIGZyYW1lIGdldCBkZWxldGVkIGNhbiBiZSBmdXJ0 aGVyIGNvbnRyb2xsZWQgdmlhIHRoZSBvcHRpb24KK2BxdWl0LXJlc3RvcmUtd2luZG93LW5v LXN3aXRjaCcuCiAKIE9wdGlvbmFsIHNlY29uZCBhcmd1bWVudCBCVVJZLU9SLUtJTEwgdGVs bHMgaG93IHRvIHByb2NlZWQgd2l0aAogdGhlIGJ1ZmZlciBvZiBXSU5ET1cuICBUaGUgZm9s bG93aW5nIHZhbHVlcyBhcmUgaGFuZGxlZDoKQEAgLTUyNDksNyArNTMxOCwxNCBAQCBxdWl0 LXJlc3RvcmUtd2luZG93CiAgIG1vc3QgcmVsaWFibGUgcmVtZWR5IHRvIG5vdCBoYXZlIGBz d2l0Y2gtdG8tcHJldi1idWZmZXInIHN3aXRjaAogICB0byB0aGlzIGJ1ZmZlciBhZ2FpbiB3 aXRob3V0IGtpbGxpbmcgdGhlIGJ1ZmZlci4KIAotYGtpbGwnIG1lYW5zIHRvIGtpbGwgV0lO RE9XJ3MgYnVmZmVyLiIKK2BraWxsJyBtZWFucyB0byBraWxsIFdJTkRPVydzIGJ1ZmZlci4K KworYGtpbGxpbmcnIGlzIGxpa2UgYGtpbGwnIGJ1dCBtZWFucyB0aGF0IFdJTkRPVydzIGJ1 ZmZlciB3aWxsIGdldCBraWxsZWQKK2Vsc2V3aGVyZS4gIFRoaXMgdmFsdWUgaXMgdXNlZCBi eSBgcmVwbGFjZS1idWZmZXItaW4td2luZG93cycgYW5kCitgcXVpdC13aW5kb3dzLW9uJy4K KworYGJ1cnlpbmcnIGlzIGxpa2UgYGJ1cnknIGJ1dCBtZWFucyB0aGF0IFdJTkRPVydzIGJ1 ZmZlciB3aWxsIGdldCBidXJpZWQKK2Vsc2V3aGVyZS4gIFRoaXMgdmFsdWUgaXMgdXNlZCBi eSBgcXVpdC13aW5kb3dzLW9uJy4iCiAgIChzZXRxIHdpbmRvdyAod2luZG93LW5vcm1hbGl6 ZS13aW5kb3cgd2luZG93IHQpKQogICAobGV0KiAoKGJ1ZmZlciAod2luZG93LWJ1ZmZlciB3 aW5kb3cpKQogCSAocXVpdC1yZXN0b3JlICh3aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVp dC1yZXN0b3JlKSkKQEAgLTUyNjUsMzIgKzUzNDEsMzggQEAgcXVpdC1yZXN0b3JlLXdpbmRv dwogICAgIChjb25kCiAgICAgIDs7IEZpcnN0IHRyeSB0byBkZWxldGUgZGVkaWNhdGVkIHdp bmRvd3MgdGhhdCBhcmUgbm90IHNpZGUgd2luZG93cy4KICAgICAgKChhbmQgZGVkaWNhdGVk IChub3QgKGVxIGRlZGljYXRlZCAnc2lkZSkpCi0gICAgICAgICAgICh3aW5kb3ctLWRlbGV0 ZSB3aW5kb3cgJ2RlZGljYXRlZCAoZXEgYnVyeS1vci1raWxsICdraWxsKSkpCisgICAgICAg ICAgICh3aW5kb3ctLWRlbGV0ZQorCSAgICB3aW5kb3cgJ2RlZGljYXRlZCAobWVtcSBidXJ5 LW9yLWtpbGwgJyhraWxsIGtpbGxpbmcpKSkpCiAgICAgICA7OyBJZiB0aGUgcHJldmlvdXNs eSBzZWxlY3RlZCB3aW5kb3cgaXMgc3RpbGwgYWxpdmUsIHNlbGVjdCBpdC4KICAgICAgICh3 aW5kb3ctLXF1aXQtcmVzdG9yZS1zZWxlY3Qtd2luZG93IHF1aXQtcmVzdG9yZS0yKSkKICAg ICAgKChhbmQgKG5vdCBwcmV2LWJ1ZmZlcikKIAkgICAoZXEgKG50aCAxIHF1aXQtcmVzdG9y ZSkgJ3RhYikKLQkgICAoZXEgKG50aCAzIHF1aXQtcmVzdG9yZSkgYnVmZmVyKSkKKwkgICAo ZXEgKG50aCAzIHF1aXQtcmVzdG9yZSkgYnVmZmVyKQorCSAgICg8IChzZXEtY291bnQgKGxh bWJkYSAodykgKHdpbmRvdy1wYXJhbWV0ZXIgdyAncXVpdC1yZXN0b3JlKSkKKwkJICAgICAg ICAgKHdpbmRvdy1saXN0LTEgbmlsICdub21pbmkpKQorICAgICAgICAgICAgICAyKSkKICAg ICAgICh0YWItYmFyLWNsb3NlLXRhYikKICAgICAgIDs7IElmIHRoZSBwcmV2aW91c2x5IHNl bGVjdGVkIHdpbmRvdyBpcyBzdGlsbCBhbGl2ZSwgc2VsZWN0IGl0LgogICAgICAgKHdpbmRv dy0tcXVpdC1yZXN0b3JlLXNlbGVjdC13aW5kb3cgcXVpdC1yZXN0b3JlLTIpKQotICAgICAo KGFuZCAobm90IHByZXYtYnVmZmVyKQotCSAgIChvciAoYW5kIChvciAoZXEgKG50aCAxIHF1 aXQtcmVzdG9yZSkgJ2ZyYW1lKQotCQkJKGFuZCAoZXEgKG50aCAxIHF1aXQtcmVzdG9yZSkg J3dpbmRvdykKLQkJCSAgICAgOzsgSWYgdGhlIHdpbmRvdyBoYXMgYmVlbiBjcmVhdGVkIG9u IGFuCi0JCQkgICAgIDs7IGV4aXN0aW5nIGZyYW1lIGFuZCBlbmRlZCB1cCBhcyB0aGUgc29s ZQotCQkJICAgICA7OyB3aW5kb3cgb24gdGhhdCBmcmFtZSwgZG8gbm90IGRlbGV0ZSBpdAot CQkJICAgICA7OyAoQnVnIzEyNzY0KS4KLQkJCSAgICAgKG5vdCAoZXEgd2luZG93IChmcmFt ZS1yb290LXdpbmRvdyB3aW5kb3cpKSkpKQotCQkgICAgKGVxIChudGggMyBxdWl0LXJlc3Rv cmUpIGJ1ZmZlcikpCi0JICAgICAgIChhbmQgKG9yIChlcSAobnRoIDEgcXVpdC1yZXN0b3Jl LXByZXYpICdmcmFtZSkKLQkJCShhbmQgKGVxIChudGggMSBxdWl0LXJlc3RvcmUtcHJldikg J3dpbmRvdykKLQkJCSAgICAgKG5vdCAoZXEgd2luZG93IChmcmFtZS1yb290LXdpbmRvdyB3 aW5kb3cpKSkpKQotCQkgICAgKGVxIChudGggMyBxdWl0LXJlc3RvcmUtcHJldikgYnVmZmVy KQotCQkgICAgOzsgVXNlIHNlbGVjdGVkIHdpbmRvdyBmcm9tIHF1aXQtcmVzdG9yZS1wcmV2 LgotCQkgICAgKHNldHEgcXVpdC1yZXN0b3JlLTIgcXVpdC1yZXN0b3JlLXByZXYtMikpKQor ICAgICAoKGFuZCAob3IgKG5vdCBwcmV2LWJ1ZmZlcikKKwkgICAgICAgOzsgSWdub3JlIGZp cnN0IG9mIHRoZSBwcmV2aW91cyBidWZmZXJzIGlmCisJICAgICAgIDs7ICdxdWl0LXJlc3Rv cmUtd2luZG93LW5vLXN3aXRjaCcgc2F5cyBzby4KKwkgICAgICAgKGFuZCAoZXEgcXVpdC1y ZXN0b3JlLXdpbmRvdy1uby1zd2l0Y2ggJ3NraXAtaW5pdGlhbCkKKwkJICAgIChub3QgKGNk ciAod2luZG93LXByZXYtYnVmZmVycyB3aW5kb3cpKSkpKQorCSAgIChvciAoZXEgKG50aCAx IHF1aXQtcmVzdG9yZSkgJ2ZyYW1lKQorCSAgICAgICA7OyBJZiB0aGUgd2luZG93IGhhcyBi ZWVuIGNyZWF0ZWQgb24gYW4gZXhpc3RpbmcKKwkgICAgICAgOzsgZnJhbWUgYW5kIGVuZGVk IHVwIGFzIHRoZSBzb2xlIHdpbmRvdyBvbiB0aGF0CisJICAgICAgIDs7IGZyYW1lLCBkbyBu b3QgZGVsZXRlIGl0IChCdWcjMTI3NjQpLgorCSAgICAgICAoYW5kIChlcSAobnRoIDEgcXVp dC1yZXN0b3JlKSAnd2luZG93KQorCQkgICAgKG5vdCAoZXEgd2luZG93IChmcmFtZS1yb290 LXdpbmRvdyB3aW5kb3cpKSkpCisJICAgICAgIDs7IEJ1dCBhbHdheXMgYWxsb3cgZGVsZXRp bmcgYSBmcmFtZSBvciB3aW5kb3cgaWYKKwkgICAgICAgOzsgJ3F1aXQtcmVzdG9yZS13aW5k b3ctbm8tc3dpdGNoJyBzYXlzIHNvLgorCSAgICAgICBxdWl0LXJlc3RvcmUtd2luZG93LW5v LXN3aXRjaCkKKwkgICAob3IgKGVxIChudGggMyBxdWl0LXJlc3RvcmUpIGJ1ZmZlcikKKwkg ICAgICAgcXVpdC1yZXN0b3JlLXdpbmRvdy1uby1zd2l0Y2gpCiAJICAgOzsgRGVsZXRlIFdJ TkRPVyBpZiBwb3NzaWJsZS4KLQkgICAod2luZG93LS1kZWxldGUgd2luZG93IG5pbCAoZXEg YnVyeS1vci1raWxsICdraWxsKSkpCisJICAgKHdpbmRvdy0tZGVsZXRlCisJICAgIHdpbmRv dyBuaWwgKG1lbXEgYnVyeS1vci1raWxsICcoa2lsbCBraWxsaW5nKSkpKQogICAgICAgOzsg SWYgdGhlIHByZXZpb3VzbHkgc2VsZWN0ZWQgd2luZG93IGlzIHN0aWxsIGFsaXZlLCBzZWxl Y3QgaXQuCiAgICAgICAod2luZG93LS1xdWl0LXJlc3RvcmUtc2VsZWN0LXdpbmRvdyBxdWl0 LXJlc3RvcmUtMikpCiAgICAgICgob3IgKGFuZCAobGlzdHAgKHNldHEgcXVhZCAobnRoIDEg cXVpdC1yZXN0b3JlLXByZXYpKSkKQEAgLTUzMjgsNyArNTQxMCw3IEBAIHF1aXQtcmVzdG9y ZS13aW5kb3cKICAgICAgIDs7IERlYWwgd2l0aCB0aGUgYnVmZmVyIHdlIGp1c3QgcmVtb3Zl ZCBmcm9tIFdJTkRPVy4KICAgICAgIChzZXRxIGVudHJ5IChhbmQgKGVxIGJ1cnktb3Ita2ls bCAnYXBwZW5kKQogCQkgICAgICAgKGFzc3EgYnVmZmVyICh3aW5kb3ctcHJldi1idWZmZXJz IHdpbmRvdykpKSkKLSAgICAgICh3aGVuIGJ1cnktb3Ita2lsbAorICAgICAgKHdoZW4gKG1l bXEgYnVyeS1vci1raWxsICcoYnVyeSBidXJ5aW5nIGtpbGwga2lsbGluZykpCiAJOzsgUmVt b3ZlIGJ1ZmZlciBmcm9tIFdJTkRPVydzIHByZXZpb3VzIGFuZCBuZXh0IGJ1ZmZlcnMuCiAJ KHNldC13aW5kb3ctcHJldi1idWZmZXJzCiAJIHdpbmRvdyAoYXNzcS1kZWxldGUtYWxsIGJ1 ZmZlciAod2luZG93LXByZXYtYnVmZmVycyB3aW5kb3cpKSkKQEAgLTUzNDYsNyArNTQyOCw2 IEBAIHF1aXQtcmVzdG9yZS13aW5kb3cKIAk7OyBJZiBxdWl0LXJlc3RvcmUtcHJldiB3YXMg bm90IHVzZWQsIHJlc2V0IHRoZSBxdWl0LXJlc3RvcmUKIAk7OyBwYXJhbWV0ZXIKIAkoc2V0 LXdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUgbmlsKSkKLSAgICAgIDs7 IFNlbGVjdCBvbGQgd2luZG93LgogICAgICAgOzsgSWYgdGhlIHByZXZpb3VzbHkgc2VsZWN0 ZWQgd2luZG93IGlzIHN0aWxsIGFsaXZlLCBzZWxlY3QgaXQuCiAgICAgICAod2luZG93LS1x dWl0LXJlc3RvcmUtc2VsZWN0LXdpbmRvdyBxdWl0LXJlc3RvcmUtMikpCiAgICAgICh0CkBA IC01MzU5LDEzICs1NDQwLDE0IEBAIHF1aXQtcmVzdG9yZS13aW5kb3cKICAgICAgIChpZiAo c3dpdGNoLXRvLXByZXYtYnVmZmVyIHdpbmRvdyBidXJ5LW9yLWtpbGwpCiAgICAgICAgICAg KHdoZW4gKGVxIGRlZGljYXRlZCAnc2lkZSkKICAgICAgICAgICAgIChzZXQtd2luZG93LWRl ZGljYXRlZC1wIHdpbmRvdyAnc2lkZSkpCi0gICAgICAgICh3aW5kb3ctLWRlbGV0ZSB3aW5k b3cgbmlsIChlcSBidXJ5LW9yLWtpbGwgJ2tpbGwpKSkpKQorICAgICAgICAod2luZG93LS1k ZWxldGUKKwkgd2luZG93IG5pbCAobWVtcSBidXJ5LW9yLWtpbGwgJyhraWxsIGtpbGxpbmcp KSkpKSkKICAgICA7OyBEZWFsIHdpdGggdGhlIGJ1ZmZlci4KICAgICAoY29uZAogICAgICAo KG5vdCAoYnVmZmVyLWxpdmUtcCBidWZmZXIpKSkKICAgICAgKChlcSBidXJ5LW9yLWtpbGwg J2tpbGwpCiAgICAgICAoa2lsbC1idWZmZXIgYnVmZmVyKSkKLSAgICAgKGJ1cnktb3Ita2ls bAorICAgICAoKGVxIGJ1cnktb3Ita2lsbCAnYnVyeSkKICAgICAgIChidXJ5LWJ1ZmZlci1p bnRlcm5hbCBidWZmZXIpKSkpKQogCiAoZGVmdW4gcXVpdC13aW5kb3cgKCZvcHRpb25hbCBr aWxsIHdpbmRvdykKQEAgLTU0MDYsMTEgKzU0ODgsMTggQEAgcXVpdC13aW5kb3dzLW9uCiAJ KGZyYW1lcyAoY29uZCAoKG5vdCBmcmFtZSkgdCkgKChlcSBmcmFtZSB0KSBuaWwpICh0IGZy YW1lKSkpKQogICAgIChkb2xpc3QgKHdpbmRvdyAod2luZG93LWxpc3QtMSBuaWwgbmlsIGZy YW1lcykpCiAgICAgICAod2hlbiAoZXEgKHdpbmRvdy1idWZmZXIgd2luZG93KSBidWZmZXIp Ci0JKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93IGtpbGwpKQorCShxdWl0LXJlc3RvcmUt d2luZG93CisJIHdpbmRvdyAoaWYga2lsbCAna2lsbGluZyAnYnVyeWluZykpKQogCiAgICAg ICAod2hlbiAod2luZG93LWxpdmUtcCB3aW5kb3cpCiAJOzsgVW5yZWNvcmQgQlVGRkVSIGlu IHRoaXMgd2luZG93LgotCSh1bnJlY29yZC13aW5kb3ctYnVmZmVyIHdpbmRvdyBidWZmZXIp KSkpKQorCSh1bnJlY29yZC13aW5kb3ctYnVmZmVyIHdpbmRvdyBidWZmZXIpKSkKKworICAg IDs7IERlYWwgd2l0aCBCVUZGRVItT1ItTkFNRS4KKyAgICAoY29uZAorICAgICAoKG5vdCAo YnVmZmVyLWxpdmUtcCBidWZmZXIpKSkKKyAgICAgKGtpbGwgKGtpbGwtYnVmZmVyIGJ1ZmZl cikpCisgICAgICh0IChidXJ5LWJ1ZmZlci1pbnRlcm5hbCBidWZmZXIpKSkpKQogDAogKGRl ZnVuIHdpbmRvdy0tY29tYmluYXRpb24tcmVzaXphYmxlIChwYXJlbnQgJm9wdGlvbmFsIGhv cml6b250YWwpCiAgICJSZXR1cm4gbnVtYmVyIG9mIHBpeGVscyByZWNvdmVyYWJsZSBmcm9t IGhlaWdodCBvZiB3aW5kb3cgUEFSRU5ULgpAQCAtNjcyMywzNiArNjgxMiwzOCBAQCBkaXNw bGF5LWJ1ZmZlci1yZWNvcmQtd2luZG93CiAKIElmIFRZUEUgaXMgYHJldXNlJywgQlVGRkVS IGlzIGRpZmZlcmVudCBmcm9tIHRoZSBvbmUgY3VycmVudGx5IGRpc3BsYXllZAogaW4gV0lO RE9XLCBhbmQgV0lORE9XIGFscmVhZHkgaGFzIGEgYHF1aXQtcmVzdG9yZScgcGFyYW1ldGVy LCBpbnN0YWxsIG9yCi11cGRhdGUgYSBgcXVpdC1yZXN0b3JlLXByZXYnIHBhcmFtZXRlciBm b3IgdGhpcyB3aW5kb3cgdGhhdCBhbGxvd3MgdG8KLXF1aXQgV0lORE9XIGluIGEgc2ltaWxh ciBmYXNoaW9uIGJ1dCByZW1lbWJlcnMgdGhlIHZlcnkgZmlyc3QgaW4gYQotc2VyaWVzIG9m IGJ1ZmZlciBkaXNwbGF5IG9wZXJhdGlvbnMgZm9yIHRoaXMgd2luZG93LiIKK3VwZGF0ZSBh IGBxdWl0LXJlc3RvcmUtcHJldicgcGFyYW1ldGVyIGZvciB0aGlzIHdpbmRvdy4gIFRoaXMg YWxsb3dzIGZvcgorcXVpdHRpbmcgV0lORE9XIGluIGEgc2ltaWxhciBmYXNoaW9uIGJ1dCBh bHNvIGtlZXBzIHRoZSB2ZXJ5IGZpcnN0CitgcXVpdC1yZXN0b3JlJyBwYXJhbWV0ZXIgc3Rv cmVkIGZvciB0aGlzIHdpbmRvdyBhcm91bmQuICBDb25zZXF1ZW50bHksCitXSU5ET1cgKG9y IGl0cyBmcmFtZSkgY2FuIGJlIGV2ZW50dWFsbHkgZGVsZXRlZCBieSBgcXVpdC1yZXN0b3Jl LXdpZG93JworaWYgdGhhdCBwYXJhbWV0ZXIncyBmb3VydGggZWxlbWVudCBlcXVhbHMgV0lO RE9XJ3MgYnVmZmVyLiIKICAgKGNvbmQKICAgICgoZXEgdHlwZSAncmV1c2UpCi0gICAgKGlm IChlcSAod2luZG93LWJ1ZmZlciB3aW5kb3cpIGJ1ZmZlcikKLQk7OyBXSU5ET1cgc2hvd3Mg QlVGRkVSIGFscmVhZHkuICBVcGRhdGUgV0lORE9XJ3MgcXVpdC1yZXN0b3JlCi0JOzsgcGFy YW1ldGVyLCBpZiBhbnkuCi0JKGxldCAoKHF1aXQtcmVzdG9yZSAod2luZG93LXBhcmFtZXRl ciB3aW5kb3cgJ3F1aXQtcmVzdG9yZSkpKQorICAgIChsZXQgKChxdWl0LXJlc3RvcmUgKHdp bmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUpKSkKKyAgICAgIChpZiAoZXEg KHdpbmRvdy1idWZmZXIgd2luZG93KSBidWZmZXIpCisJICA7OyBXSU5ET1cgc2hvd3MgQlVG RkVSIGFscmVhZHkuICBVcGRhdGUgV0lORE9XJ3MgcXVpdC1yZXN0b3JlCisJICA7OyBwYXJh bWV0ZXIsIGlmIGFueS4KIAkgICh3aGVuIChjb25zcCBxdWl0LXJlc3RvcmUpCiAJICAgIChz ZXRjYXIgcXVpdC1yZXN0b3JlICdzYW1lKQogCSAgICA7OyBUaGUgc2VsZWN0ZWQtd2luZG93 IG1pZ2h0IGhhdmUgY2hhbmdlZCBpbgogCSAgICA7OyBiZXR3ZWVuIChCdWcjMjAzNTMpLgog CSAgICAodW5sZXNzIChvciAoZXEgd2luZG93IChzZWxlY3RlZC13aW5kb3cpKQotICAgICAg ICAgICAgICAgICAgICAgICAgKGVxIHdpbmRvdyAobnRoIDIgcXVpdC1yZXN0b3JlKSkpCi0J ICAgICAgKHNldGNhciAoY2RkciBxdWl0LXJlc3RvcmUpIChzZWxlY3RlZC13aW5kb3cpKSkp KQotICAgICAgOzsgV0lORE9XIHNob3dzIGFub3RoZXIgYnVmZmVyLgotICAgICAgKHdpdGgt Y3VycmVudC1idWZmZXIgKHdpbmRvdy1idWZmZXIgd2luZG93KQotCShzZXQtd2luZG93LXBh cmFtZXRlcgotCSB3aW5kb3cgJ3F1aXQtcmVzdG9yZS1wcmV2Ci0JIChsaXN0ICdvdGhlcgot CSAgICAgICA7OyBBIHF1YWRydXBsZSBvZiBXSU5ET1cncyBidWZmZXIsIHN0YXJ0LCBwb2lu dCBhbmQgaGVpZ2h0LgotCSAgICAgICAobGlzdCAoY3VycmVudC1idWZmZXIpICh3aW5kb3ct c3RhcnQgd2luZG93KQotCQkgICAgIDs7IFByZXNlcnZlIHdpbmRvdy1wb2ludC1pbnNlcnRp b24tdHlwZSAoQnVnIzEyODU1KS4KLQkJICAgICAoY29weS1tYXJrZXIKLQkJICAgICAgKHdp bmRvdy1wb2ludCB3aW5kb3cpIHdpbmRvdy1wb2ludC1pbnNlcnRpb24tdHlwZSkKLQkJICAg ICAoaWYgKHdpbmRvdy1jb21iaW5lZC1wIHdpbmRvdykKLSAgICAgICAgICAgICAgICAgICAg ICAgICAod2luZG93LXRvdGFsLWhlaWdodCB3aW5kb3cpCi0gICAgICAgICAgICAgICAgICAg ICAgICh3aW5kb3ctdG90YWwtd2lkdGggd2luZG93KSkpCi0JICAgICAgIChzZWxlY3RlZC13 aW5kb3cpIGJ1ZmZlcikpKSkpCisJCQkoZXEgd2luZG93IChudGggMiBxdWl0LXJlc3RvcmUp KSkKKwkgICAgICAoc2V0Y2FyIChjZGRyIHF1aXQtcmVzdG9yZSkgKHNlbGVjdGVkLXdpbmRv dykpKSkKKwk7OyBXSU5ET1cgc2hvd3MgYW5vdGhlciBidWZmZXIuCisJKHdpdGgtY3VycmVu dC1idWZmZXIgKHdpbmRvdy1idWZmZXIgd2luZG93KQorCSAgKHNldC13aW5kb3ctcGFyYW1l dGVyCisJICAgd2luZG93IChpZiBxdWl0LXJlc3RvcmUgJ3F1aXQtcmVzdG9yZS1wcmV2ICdx dWl0LXJlc3RvcmUpCisJICAgKGxpc3QgJ290aGVyCisJCSA7OyBBIHF1YWRydXBsZSBvZiBX SU5ET1cncyBidWZmZXIsIHN0YXJ0LCBwb2ludCBhbmQgaGVpZ2h0LgorCQkgKGxpc3QgKGN1 cnJlbnQtYnVmZmVyKSAod2luZG93LXN0YXJ0IHdpbmRvdykKKwkJICAgICAgIDs7IFByZXNl cnZlIHdpbmRvdy1wb2ludC1pbnNlcnRpb24tdHlwZSAoQnVnIzEyODU1KS4KKwkJICAgICAg IChjb3B5LW1hcmtlcgorCQkJKHdpbmRvdy1wb2ludCB3aW5kb3cpIHdpbmRvdy1wb2ludC1p bnNlcnRpb24tdHlwZSkKKwkJICAgICAgIChpZiAod2luZG93LWNvbWJpbmVkLXAgd2luZG93 KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKHdpbmRvdy10b3RhbC1oZWlnaHQgd2lu ZG93KQorCQkJICh3aW5kb3ctdG90YWwtd2lkdGggd2luZG93KSkpCisJCSAoc2VsZWN0ZWQt d2luZG93KSBidWZmZXIpKSkpKSkKICAgICgoZXEgdHlwZSAnd2luZG93KQogICAgIDs7IFdJ TkRPVyBoYXMgYmVlbiBjcmVhdGVkIG9uIGFuIGV4aXN0aW5nIGZyYW1lLgogICAgIChzZXQt d2luZG93LXBhcmFtZXRlcgpkaWZmIC0tZ2l0IGEvc3JjL2FsbG9jLmMgYi9zcmMvYWxsb2Mu YwppbmRleCA2NjZmNzdiZmNlMS4uYjk1NTY1MWY1YzAgMTAwNjQ0Ci0tLSBhL3NyYy9hbGxv Yy5jCisrKyBiL3NyYy9hbGxvYy5jCkBAIC02OTk4LDMzICs2OTk4LDYgQEAgbWFya19mYWNl X2NhY2hlIChzdHJ1Y3QgZmFjZV9jYWNoZSAqYykKICAgICB9CiB9CiAKLS8qIFJlbW92ZSBr aWxsZWQgYnVmZmVycyBvciBpdGVtcyB3aG9zZSBjYXIgaXMgYSBraWxsZWQgYnVmZmVyIGZy b20KLSAgIExJU1QsIGFuZCBtYXJrIG90aGVyIGl0ZW1zLiAgUmV0dXJuIGNoYW5nZWQgTElT VCwgd2hpY2ggaXMgbWFya2VkLiAgKi8KLQotc3RhdGljIExpc3BfT2JqZWN0Ci1tYXJrX2Rp c2NhcmRfa2lsbGVkX2J1ZmZlcnMgKExpc3BfT2JqZWN0IGxpc3QpCi17Ci0gIExpc3BfT2Jq ZWN0IHRhaWwsICpwcmV2ID0gJmxpc3Q7Ci0KLSAgZm9yICh0YWlsID0gbGlzdDsgQ09OU1Ag KHRhaWwpICYmICFjb25zX21hcmtlZF9wIChYQ09OUyAodGFpbCkpOwotICAgICAgIHRhaWwg PSBYQ0RSICh0YWlsKSkKLSAgICB7Ci0gICAgICBMaXNwX09iamVjdCB0ZW0gPSBYQ0FSICh0 YWlsKTsKLSAgICAgIGlmIChDT05TUCAodGVtKSkKLQl0ZW0gPSBYQ0FSICh0ZW0pOwotICAg ICAgaWYgKEJVRkZFUlAgKHRlbSkgJiYgIUJVRkZFUl9MSVZFX1AgKFhCVUZGRVIgKHRlbSkp KQotCSpwcmV2ID0gWENEUiAodGFpbCk7Ci0gICAgICBlbHNlCi0JewotCSAgc2V0X2NvbnNf bWFya2VkIChYQ09OUyAodGFpbCkpOwotCSAgbWFya19vYmplY3QgKFhDQVIgKHRhaWwpKTsK LQkgIHByZXYgPSB4Y2RyX2FkZHIgKHRhaWwpOwotCX0KLSAgICB9Ci0gIG1hcmtfb2JqZWN0 ICh0YWlsKTsKLSAgcmV0dXJuIGxpc3Q7Ci19Ci0KIHN0YXRpYyB2b2lkCiBtYXJrX2ZyYW1l IChzdHJ1Y3QgTGlzcF9WZWN0b3IgKnB0cikKIHsKQEAgLTcwNzksMTUgKzcwNTIsNiBAQCBt YXJrX3dpbmRvdyAoc3RydWN0IExpc3BfVmVjdG9yICpwdHIpCiAgICAgICBtYXJrX2dseXBo X21hdHJpeCAody0+Y3VycmVudF9tYXRyaXgpOwogICAgICAgbWFya19nbHlwaF9tYXRyaXgg KHctPmRlc2lyZWRfbWF0cml4KTsKICAgICB9Ci0KLSAgLyogRmlsdGVyIG91dCBraWxsZWQg YnVmZmVycyBmcm9tIGJvdGggYnVmZmVyIGxpc3RzCi0gICAgIGluIGF0dGVtcHQgdG8gaGVs cCBHQyB0byByZWNsYWltIGtpbGxlZCBidWZmZXJzIGZhc3Rlci4KLSAgICAgV2UgY2FuIGRv IGl0IGVsc2V3aGVyZSBmb3IgbGl2ZSB3aW5kb3dzLCBidXQgdGhpcyBpcyB0aGUKLSAgICAg YmVzdCBwbGFjZSB0byBkbyBpdCBmb3IgZGVhZCB3aW5kb3dzLiAgKi8KLSAgd3NldF9wcmV2 X2J1ZmZlcnMKLSAgICAodywgbWFya19kaXNjYXJkX2tpbGxlZF9idWZmZXJzICh3LT5wcmV2 X2J1ZmZlcnMpKTsKLSAgd3NldF9uZXh0X2J1ZmZlcnMKLSAgICAodywgbWFya19kaXNjYXJk X2tpbGxlZF9idWZmZXJzICh3LT5uZXh0X2J1ZmZlcnMpKTsKIH0KIAogLyogRW50cnkgb2Yg dGhlIG1hcmsgc3RhY2suICAqLwpkaWZmIC0tZ2l0IGEvc3JjL2J1ZmZlci5jIGIvc3JjL2J1 ZmZlci5jCmluZGV4IDc0NGIwZWY1NTQ4Li42ZWM0MGFmZjY0NiAxMDA2NDQKLS0tIGEvc3Jj L2J1ZmZlci5jCisrKyBiL3NyYy9idWZmZXIuYwpAQCAtMjAxMiw2ICsyMDEyLDEzIEBAIERF RlVOICgia2lsbC1idWZmZXIiLCBGa2lsbF9idWZmZXIsIFNraWxsX2J1ZmZlciwgMCwgMSwg ImJLaWxsIGJ1ZmZlcjogIiwKICAgICAgYnVmZmVyIChidWcjMTAxMTQpLiAgKi8KICAgcmVw bGFjZV9idWZmZXJfaW5fd2luZG93cyAoYnVmZmVyKTsKIAorICAvKiBGb3IgZGVhZCB3aW5k b3dzIHRoYXQgaGF2ZSBub3QgYmVlbiBjb2xsZWN0ZWQgeWV0LCByZW1vdmUgdGhpcworICAg ICBidWZmZXIgZnJvbSB0aG9zZSB3aW5kb3dzJyBsaXN0cyBvZiBwcmV2aW91c2x5IGFuZCBu ZXh0IHNob3duCisgICAgIGJ1ZmZlcnMgYW5kIHJlbW92ZSBhbnkgJ3F1aXQtcmVzdG9yZScg b3IgJ3F1aXQtcmVzdG9yZS1wcmV2JworICAgICBwYXJhbWV0ZXJzIG1lbnRpb25pbmcgdGhl IGJ1ZmZlci4gICovCisgIGlmIChYRklYTlVNIChCVkFSIChiLCBkaXNwbGF5X2NvdW50KSkg PiAwKQorICAgIHdpbmRvd19kaXNjYXJkX2J1ZmZlcl9mcm9tX2RlYWRfd2luZG93cyAoYnVm ZmVyKTsKKwogICAvKiBFeGl0IGlmIHJlcGxhY2luZyB0aGUgYnVmZmVyIGluIHdpbmRvd3Mg aGFzIGtpbGxlZCBvdXIgYnVmZmVyLiAgKi8KICAgaWYgKCFCVUZGRVJfTElWRV9QIChiKSkK ICAgICByZXR1cm4gUXQ7CmRpZmYgLS1naXQgYS9zcmMvd2luZG93LmMgYi9zcmMvd2luZG93 LmMKaW5kZXggZmYyOGJhYzUzMDYuLmRkMGFiZTg0ZmRmIDEwMDY0NAotLS0gYS9zcmMvd2lu ZG93LmMKKysrIGIvc3JjL3dpbmRvdy5jCkBAIC0zMjc3LDYgKzMyNzcsOTAgQEAgd2luZG93 X3BpeGVsX3RvX3RvdGFsIChMaXNwX09iamVjdCBmcmFtZSwgTGlzcF9PYmplY3QgaG9yaXpv bnRhbCkKIH0KIAogCisvKiBSZW1vdmUgZmlyc3Qgb2NjdXJyZW5jZSBvZiBlbGVtZW50IHdo b3NlIGNhciBpcyBCVUZGRVIgZnJvbSBBTElTVC4KKyAgIFJldHVybiBjaGFuZ2VkIEFMSVNU LiAgKi8KK3N0YXRpYyBMaXNwX09iamVjdAord2luZG93X2Rpc2NhcmRfYnVmZmVyX2Zyb21f YWxpc3QgKExpc3BfT2JqZWN0IGJ1ZmZlciwgTGlzcF9PYmplY3QgYWxpc3QpCit7CisgIExp c3BfT2JqZWN0IHRhaWwsICpwcmV2ID0gJmFsaXN0OworCisgIGZvciAodGFpbCA9IGFsaXN0 OyBDT05TUCAodGFpbCk7IHRhaWwgPSBYQ0RSICh0YWlsKSkKKyAgICB7CisgICAgICBMaXNw X09iamVjdCB0ZW0gPSBYQ0FSICh0YWlsKTsKKworICAgICAgdGVtID0gWENBUiAodGVtKTsK KworICAgICAgaWYgKEVRICh0ZW0sIGJ1ZmZlcikpCisJeworCSAgKnByZXYgPSBYQ0RSICh0 YWlsKTsKKwkgIGJyZWFrOworCX0KKyAgICAgIGVsc2UKKwlwcmV2ID0geGNkcl9hZGRyICh0 YWlsKTsKKyAgICB9CisKKyAgcmV0dXJuIGFsaXN0OworfQorCisvKiBSZW1vdmUgZmlyc3Qg b2NjdXJyZW5jZSBvZiBCVUZGRVIgZnJvbSBMSVNULiAgUmV0dXJuIGNoYW5nZWQKKyAgIExJ U1QuICAqLworc3RhdGljIExpc3BfT2JqZWN0Cit3aW5kb3dfZGlzY2FyZF9idWZmZXJfZnJv bV9saXN0IChMaXNwX09iamVjdCBidWZmZXIsIExpc3BfT2JqZWN0IGxpc3QpCit7CisgIExp c3BfT2JqZWN0IHRhaWwsICpwcmV2ID0gJmxpc3Q7CisKKyAgZm9yICh0YWlsID0gbGlzdDsg Q09OU1AgKHRhaWwpOyB0YWlsID0gWENEUiAodGFpbCkpCisgICAgeworICAgICAgaWYgKEVR IChYQ0FSICh0YWlsKSwgYnVmZmVyKSkKKwl7CisJICAqcHJldiA9IFhDRFIgKHRhaWwpOwor CSAgYnJlYWs7CisJfQorICAgICAgZWxzZQorCXByZXYgPSB4Y2RyX2FkZHIgKHRhaWwpOwor ICAgIH0KKworICByZXR1cm4gbGlzdDsKK30KKworc3RhdGljIHZvaWQKK3dpbmRvd19kaXNj YXJkX2J1ZmZlcl9mcm9tX2RlYWRfd2luZG93IChMaXNwX09iamVjdCBidWZmZXIsIExpc3Bf T2JqZWN0IHdpbmRvdykKK3sKKyAgc3RydWN0IHdpbmRvdyAqdyA9IFhXSU5ET1cgKHdpbmRv dyk7CisgIExpc3BfT2JqZWN0IHF1aXRfcmVzdG9yZSA9IHdpbmRvd19wYXJhbWV0ZXIgKHcs IFFxdWl0X3Jlc3RvcmUpOworICBMaXNwX09iamVjdCBxdWl0X3Jlc3RvcmVfcHJldiA9IHdp bmRvd19wYXJhbWV0ZXIgKHcsIFFxdWl0X3Jlc3RvcmVfcHJldik7CisgIExpc3BfT2JqZWN0 IHF1YWQ7CisKKyAgd3NldF9wcmV2X2J1ZmZlcnMKKyAgICAodywgd2luZG93X2Rpc2NhcmRf YnVmZmVyX2Zyb21fYWxpc3QgKGJ1ZmZlciwgdy0+cHJldl9idWZmZXJzKSk7CisgIHdzZXRf bmV4dF9idWZmZXJzCisgICAgKHcsIHdpbmRvd19kaXNjYXJkX2J1ZmZlcl9mcm9tX2xpc3Qg KGJ1ZmZlciwgdy0+bmV4dF9idWZmZXJzKSk7CisKKyAgaWYgKEVRIChidWZmZXIsIEZudGgg KG1ha2VfZml4bnVtICgzKSwgcXVpdF9yZXN0b3JlX3ByZXYpKQorICAgICAgfHwgKENPTlNQ IChxdWFkID0gRmNhciAoRmNkciAocXVpdF9yZXN0b3JlX3ByZXYpKSkKKwkgICYmIEVRIChG Y2FyIChxdWFkKSwgYnVmZmVyKSkpCisgICAgRnNldF93aW5kb3dfcGFyYW1ldGVyICh3aW5k b3csIFFxdWl0X3Jlc3RvcmVfcHJldiwgUW5pbCk7CisKKyAgaWYgKEVRIChidWZmZXIsIEZu dGggKG1ha2VfZml4bnVtICgzKSwgcXVpdF9yZXN0b3JlKSkKKyAgICAgIHx8IChDT05TUCAo cXVhZCA9IEZjYXIgKEZjZHIgKHF1aXRfcmVzdG9yZSkpKQorCSAgJiYgRVEgKEZjYXIgKHF1 YWQpLCBidWZmZXIpKSkKKyAgICB7CisgICAgICBGc2V0X3dpbmRvd19wYXJhbWV0ZXIgKHdp bmRvdywgUXF1aXRfcmVzdG9yZSwKKwkJCSAgICAgd2luZG93X3BhcmFtZXRlciAodywgUXF1 aXRfcmVzdG9yZV9wcmV2KSk7CisgICAgICBGc2V0X3dpbmRvd19wYXJhbWV0ZXIgKHdpbmRv dywgUXF1aXRfcmVzdG9yZV9wcmV2LCBRbmlsKTsKKyAgICB9Cit9CisKK3ZvaWQKK3dpbmRv d19kaXNjYXJkX2J1ZmZlcl9mcm9tX2RlYWRfd2luZG93cyAoTGlzcF9PYmplY3QgYnVmZmVy KQoreworICBzdHJ1Y3QgTGlzcF9IYXNoX1RhYmxlICpoID0gWEhBU0hfVEFCTEUgKHdpbmRv d19kZWFkX3dpbmRvd3NfdGFibGUpOworCisgIERPSEFTSCAoaCwgaywgdikKKyAgICB3aW5k b3dfZGlzY2FyZF9idWZmZXJfZnJvbV9kZWFkX3dpbmRvdyAoYnVmZmVyLCB2KTsKK30KKwor CiBERUZVTiAoImRlbGV0ZS1vdGhlci13aW5kb3dzLWludGVybmFsIiwgRmRlbGV0ZV9vdGhl cl93aW5kb3dzX2ludGVybmFsLAogICAgICAgIFNkZWxldGVfb3RoZXJfd2luZG93c19pbnRl cm5hbCwgMCwgMiwgIiIsCiAgICAgICAgZG9jOiAvKiBNYWtlIFdJTkRPVyBmaWxsIGl0cyBm cmFtZS4KQEAgLTQ0MDIsNiArNDQ4NiwxMCBAQCBtYWtlX3BhcmVudF93aW5kb3cgKExpc3Bf T2JqZWN0IHdpbmRvdywgYm9vbCBob3JmbGFnKQogICB3c2V0X2J1ZmZlciAocCwgUW5pbCk7 CiAgIHdzZXRfY29tYmluYXRpb24gKHAsIGhvcmZsYWcsIHdpbmRvdyk7CiAgIHdzZXRfY29t YmluYXRpb25fbGltaXQgKHAsIFFuaWwpOworICAvKiBSZXNldCBhbnkgcHJldmlvdXMgYW5k IG5leHQgYnVmZmVycyBvZiBwIHdoaWNoIGhhdmUgYmVlbiBpbnN0YWxsZWQKKyAgICAgYnkg dGhlIG1lbWNweSBhYm92ZS4gICovCisgIHdzZXRfcHJldl9idWZmZXJzIChwLCBRbmlsKTsK KyAgd3NldF9uZXh0X2J1ZmZlcnMgKHAsIFFuaWwpOwogICB3c2V0X3dpbmRvd19wYXJhbWV0 ZXJzIChwLCBRbmlsKTsKIH0KIApAQCAtNDQyNiwxMCArNDUxNCw2IEBAIG1ha2Vfd2luZG93 ICh2b2lkKQogICB3c2V0X3ZlcnRpY2FsX3Njcm9sbF9iYXJfdHlwZSAodywgUXQpOwogICB3 c2V0X2hvcml6b250YWxfc2Nyb2xsX2Jhcl90eXBlICh3LCBRdCk7CiAgIHdzZXRfY3Vyc29y X3R5cGUgKHcsIFF0KTsKLSAgLyogVGhlc2UgTGlzcCBmaWVsZHMgYXJlIG1hcmtlZCBzcGVj aWFsbHkgc28gdGhleSdyZSBub3Qgc2V0IHRvIG5pbCBieQotICAgICBhbGxvY2F0ZV93aW5k b3cuICAqLwotICB3c2V0X3ByZXZfYnVmZmVycyAodywgUW5pbCk7Ci0gIHdzZXRfbmV4dF9i dWZmZXJzICh3LCBRbmlsKTsKIAogICAvKiBJbml0aWFsaXplIG5vbi1MaXNwIGRhdGEuICBO b3RlIHRoYXQgYWxsb2NhdGVfd2luZG93IHplcm9lcyBvdXQgYWxsCiAgICAgIG5vbi1MaXNw IGRhdGEsIHNvIGRvIGl0IG9ubHkgZm9yIHNsb3RzIHdoaWNoIHNob3VsZCBub3QgYmUgemVy by4gICovCkBAIC01MjUyLDYgKzUzMzYsMTEgQEAgREVGVU4gKCJkZWxldGUtd2luZG93LWlu dGVybmFsIiwgRmRlbGV0ZV93aW5kb3dfaW50ZXJuYWwsIFNkZWxldGVfd2luZG93X2ludGVy bmEKIAkgIHVuY2hhaW5fbWFya2VyIChYTUFSS0VSICh3LT5vbGRfcG9pbnRtKSk7CiAJICB1 bmNoYWluX21hcmtlciAoWE1BUktFUiAody0+c3RhcnQpKTsKIAkgIHdzZXRfYnVmZmVyICh3 LCBRbmlsKTsKKwkgIC8qIEFkZCBXSU5ET1cgdG8gdGFibGUgb2YgZGVhZCB3aW5kb3dzIHNv IHdoZW4ga2lsbGluZyBhIGJ1ZmZlcgorCSAgICAgV0lORE9XIG1lbnRpb25zLCBhbGwgcmVm ZXJlbmNlcyB0byB0aGF0IGJ1ZmZlciBjYW4gYmUgcmVtb3ZlZAorCSAgICAgYW5kIHRoZSBi dWZmZXIgYmUgY29sbGVjdGVkLiAgKi8KKwkgIEZwdXRoYXNoIChtYWtlX2ZpeG51bSAody0+ c2VxdWVuY2VfbnVtYmVyKSwKKwkJICAgIHdpbmRvdywgd2luZG93X2RlYWRfd2luZG93c190 YWJsZSk7CiAJfQogCiAgICAgICBpZiAoTklMUCAocy0+cHJldikgJiYgTklMUCAocy0+bmV4 dCkpCkBAIC03MzU2LDYgKzc0NDUsMTAgQEAgREVGVU4gKCJzZXQtd2luZG93LWNvbmZpZ3Vy YXRpb24iLCBGc2V0X3dpbmRvd19jb25maWd1cmF0aW9uLAogCQl9CiAJICAgIH0KIAorCSAg LyogUmVtb3ZlIHdpbmRvdyBmcm9tIHRoZSB0YWJsZSBvZiBkZWFkIHdpbmRvd3MuICAqLwor CSAgRnJlbWhhc2ggKG1ha2VfZml4bnVtICh3LT5zZXF1ZW5jZV9udW1iZXIpLAorCQkgICAg d2luZG93X2RlYWRfd2luZG93c190YWJsZSk7CisKIAkgIGlmICgoTklMUCAoZG9udF9zZXRf bWluaXdpbmRvdykgfHwgIU1JTklfV0lORE9XX1AgKHcpKQogCSAgICAgICYmIEJVRkZFUlAg KHAtPmJ1ZmZlcikgJiYgQlVGRkVSX0xJVkVfUCAoWEJVRkZFUiAocC0+YnVmZmVyKSkpCiAJ ICAgIC8qIElmIHNhdmVkIGJ1ZmZlciBpcyBhbGl2ZSwgaW5zdGFsbCBpdCwgdW5sZXNzIGl0 J3MgYQpAQCAtNzU4NSw2ICs3Njc4LDExIEBAIGRlbGV0ZV9hbGxfY2hpbGRfd2luZG93cyAo TGlzcF9PYmplY3Qgd2luZG93KQogCSBwb3NzaWJsZSByZXN1cnJlY3Rpb24gaW4gRnNldF93 aW5kb3dfY29uZmlndXJhdGlvbi4gICovCiAgICAgICB3c2V0X2NvbWJpbmF0aW9uX2xpbWl0 ICh3LCB3LT5jb250ZW50cyk7CiAgICAgICB3c2V0X2J1ZmZlciAodywgUW5pbCk7CisgICAg ICAvKiBBZGQgV0lORE9XIHRvIHRhYmxlIG9mIGRlYWQgd2luZG93cyBzbyB3aGVuIGtpbGxp bmcgYSBidWZmZXIKKwkgV0lORE9XIG1lbnRpb25zLCBhbGwgcmVmZXJlbmNlcyB0byB0aGF0 IGJ1ZmZlciBjYW4gYmUgcmVtb3ZlZAorCSBhbmQgdGhlIGJ1ZmZlciBiZSBjb2xsZWN0ZWQu ICAqLworICAgICAgRnB1dGhhc2ggKG1ha2VfZml4bnVtICh3LT5zZXF1ZW5jZV9udW1iZXIp LAorCQl3aW5kb3csIHdpbmRvd19kZWFkX3dpbmRvd3NfdGFibGUpOwogICAgIH0KIAogICBW d2luZG93X2xpc3QgPSBRbmlsOwpAQCAtODU5NCw2ICs4NjkyLDggQEAgc3ltc19vZl93aW5k b3cgKHZvaWQpCiAgIERFRlNZTSAoUWNvbmZpZ3VyYXRpb24sICJjb25maWd1cmF0aW9uIik7 CiAgIERFRlNZTSAoUWRlbGV0ZSwgImRlbGV0ZSIpOwogICBERUZTWU0gKFFkZWRpY2F0ZWQs ICJkZWRpY2F0ZWQiKTsKKyAgREVGU1lNIChRcXVpdF9yZXN0b3JlLCAicXVpdC1yZXN0b3Jl Iik7CisgIERFRlNZTSAoUXF1aXRfcmVzdG9yZV9wcmV2LCAicXVpdC1yZXN0b3JlLXByZXYi KTsKIAogICBERUZWQVJfTElTUCAoInRlbXAtYnVmZmVyLXNob3ctZnVuY3Rpb24iLCBWdGVt cF9idWZmZXJfc2hvd19mdW5jdGlvbiwKIAkgICAgICAgZG9jOiAvKiBOb24tbmlsIG1lYW5z IGNhbGwgYXMgZnVuY3Rpb24gdG8gZGlzcGxheSBhIGhlbHAgYnVmZmVyLgpAQCAtODkxNyw2 ICs5MDE3LDE3IEBAIHN5bXNfb2Zfd2luZG93ICh2b2lkKQogZGlzcGxheWVkIGFmdGVyIGEg c2Nyb2xsaW5nIG9wZXJhdGlvbiB0byBiZSBzb21ld2hhdCBpbmFjY3VyYXRlLiAgKi8pOwog ICBmYXN0X2J1dF9pbXByZWNpc2Vfc2Nyb2xsaW5nID0gZmFsc2U7CiAKKyAgREVGVkFSX0xJ U1AgKCJ3aW5kb3ctZGVhZC13aW5kb3dzLXRhYmxlIiwgd2luZG93X2RlYWRfd2luZG93c190 YWJsZSwKKyAgICBkb2M6IC8qIEhhc2ggdGFibGUgb2YgZGVhZCB3aW5kb3dzLgorRWFjaCBl bnRyeSBpbiB0aGlzIHRhYmxlIG1hcHMgYSB3aW5kb3cgbnVtYmVyIHRvIGEgd2luZG93IG9i amVjdC4KK0VudHJpZXMgYXJlIGFkZGVkIGJ5IGBkZWxldGUtd2luZG93LWludGVybmFsJyBh bmQgYXJlIHJlbW92ZWQgYnkgdGhlCitnYXJiYWdlIGNvbGxlY3Rvci4KKworVGhpcyB0YWJs ZSBpcyBtYWludGFpbmVkIGJ5IGNvZGUgaW4gd2luZG93LmMgYW5kIGlzIG1hZGUgdmlzaWJs ZSBpbgorRWxpc3AgZm9yIHRlc3RpbmcgcHVycG9zZXMgb25seS4gICovKTsKKyAgd2luZG93 X2RlYWRfd2luZG93c190YWJsZQorICAgID0gQ0FMTE4gKEZtYWtlX2hhc2hfdGFibGUsIFFD d2Vha25lc3MsIFF0KTsKKwogICBkZWZzdWJyICgmU3NlbGVjdGVkX3dpbmRvdyk7CiAgIGRl ZnN1YnIgKCZTb2xkX3NlbGVjdGVkX3dpbmRvdyk7CiAgIGRlZnN1YnIgKCZTbWluaWJ1ZmZl cl93aW5kb3cpOwpkaWZmIC0tZ2l0IGEvc3JjL3dpbmRvdy5oIGIvc3JjL3dpbmRvdy5oCmlu ZGV4IDg2OTMyMTgxMjUyLi4zMzVlMGEzNDUzZSAxMDA2NDQKLS0tIGEvc3JjL3dpbmRvdy5o CisrKyBiL3NyYy93aW5kb3cuaApAQCAtMTQyLDYgKzE0MiwxMiBAQCAjZGVmaW5lIFdJTkRP V19IX0lOQ0xVREVECiAgICAgICAgYXMgd2VsbC4gICovCiAgICAgTGlzcF9PYmplY3QgY29u dGVudHM7CiAKKyAgICAvKiBBIGxpc3Qgb2YgPGJ1ZmZlciwgd2luZG93LXN0YXJ0LCB3aW5k b3ctcG9pbnQ+IHRyaXBsZXMgbGlzdGluZworICAgICAgIGJ1ZmZlcnMgcHJldmlvdXNseSBz aG93biBpbiB0aGlzIHdpbmRvdy4gICovCisgICAgTGlzcF9PYmplY3QgcHJldl9idWZmZXJz OworICAgIC8qIExpc3Qgb2YgYnVmZmVycyByZS1zaG93biBpbiB0aGlzIHdpbmRvdy4gICov CisgICAgTGlzcF9PYmplY3QgbmV4dF9idWZmZXJzOworCiAgICAgLyogVGhlIG9sZCBidWZm ZXIgb2YgdGhpcyB3aW5kb3csIHNldCB0byB0aGlzIHdpbmRvdydzIGJ1ZmZlciBieQogICAg ICAgIHJ1bl93aW5kb3dfY2hhbmdlX2Z1bmN0aW9ucyBldmVyeSB0aW1lIGl0IHNlZXMgdGhp cyB3aW5kb3cuCiAgICAgICAgVW51c2VkIGZvciBpbnRlcm5hbCB3aW5kb3dzLiAgKi8KQEAg LTIxOCwxNCArMjI0LDYgQEAgI2RlZmluZSBXSU5ET1dfSF9JTkNMVURFRAogICAgIHN0cnVj dCBnbHlwaF9tYXRyaXggKmN1cnJlbnRfbWF0cml4OwogICAgIHN0cnVjdCBnbHlwaF9tYXRy aXggKmRlc2lyZWRfbWF0cml4OwogCi0gICAgLyogVGhlIHR3byBMaXNwX09iamVjdCBmaWVs ZHMgYmVsb3cgYXJlIG1hcmtlZCBpbiBhIHNwZWNpYWwgd2F5LAotICAgICAgIHdoaWNoIGlz IHdoeSB0aGV5J3JlIHBsYWNlZCBhZnRlciBgY3VycmVudF9tYXRyaXgnLiAgKi8KLSAgICAv KiBBIGxpc3Qgb2YgPGJ1ZmZlciwgd2luZG93LXN0YXJ0LCB3aW5kb3ctcG9pbnQ+IHRyaXBs ZXMgbGlzdGluZwotICAgICAgIGJ1ZmZlcnMgcHJldmlvdXNseSBzaG93biBpbiB0aGlzIHdp bmRvdy4gICovCi0gICAgTGlzcF9PYmplY3QgcHJldl9idWZmZXJzOwotICAgIC8qIExpc3Qg b2YgYnVmZmVycyByZS1zaG93biBpbiB0aGlzIHdpbmRvdy4gICovCi0gICAgTGlzcF9PYmpl Y3QgbmV4dF9idWZmZXJzOwotCiAgICAgLyogTnVtYmVyIHNheWluZyBob3cgcmVjZW50bHkg d2luZG93IHdhcyBzZWxlY3RlZC4gICovCiAgICAgRU1BQ1NfSU5UIHVzZV90aW1lOwogCkBA IC0xMjI4LDYgKzEyMjYsNyBAQCAjZGVmaW5lIENIRUNLX0xJVkVfV0lORE9XKFdJTkRPVykJ CQkJXAogZXh0ZXJuIHZvaWQgd3NldF9idWZmZXIgKHN0cnVjdCB3aW5kb3cgKiwgTGlzcF9P YmplY3QpOwogZXh0ZXJuIGJvb2wgd2luZG93X291dGRhdGVkIChzdHJ1Y3Qgd2luZG93ICop OwogZXh0ZXJuIHB0cmRpZmZfdCB3aW5kb3dfcG9pbnQgKHN0cnVjdCB3aW5kb3cgKncpOwor ZXh0ZXJuIHZvaWQgd2luZG93X2Rpc2NhcmRfYnVmZmVyX2Zyb21fZGVhZF93aW5kb3dzIChM aXNwX09iamVjdCk7CiBleHRlcm4gdm9pZCBpbml0X3dpbmRvd19vbmNlICh2b2lkKTsKIGV4 dGVybiB2b2lkIGluaXRfd2luZG93ICh2b2lkKTsKIGV4dGVybiB2b2lkIHN5bXNfb2Zfd2lu ZG93ICh2b2lkKTsK --------------0cpMOBypjKdTdjfLu6e2lIGs--
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 17 Jul 2024 09:23:53 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jul 17 05:23:53 2024 Received: from localhost ([127.0.0.1]:35081 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sU0t5-0000e8-9e for submit <at> debbugs.gnu.org; Wed, 17 Jul 2024 05:23:52 -0400 Received: from mout.gmx.net ([212.227.17.20]:46601) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sU0t1-0000dt-LS for 59862 <at> debbugs.gnu.org; Wed, 17 Jul 2024 05:23:50 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1721208217; x=1721813017; i=rudalics@HIDDEN; bh=CPcBxgBgNsAMDoE7ta7iPds3w/J44fVEnAs/RN0URd0=; h=X-UI-Sender-Class:Content-Type:Message-ID:Date:MIME-Version: Subject:To:Cc:References:From:In-Reply-To:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=n4gO/MfdUfSKsDa+KmDhpYo6isIHo/jXeVuU2CuBYheW5IWtT9CyJiqiIFW+MIiT /o031EQJtvi/QkRIVJFEdecbRhbJj40ReTadOwDhOhRatqGk1sA3Dls3im4cFqBUl DC8Q0gElwd197kz+jkumxRcixXdBytKRr1aqik9t8Ynakoi3ipKpj+T+FJkuaanIn yq/jNWI1V75WDZZy7ktDwkDrvMAqbshK7Z0rVZU3IvyxYk4qMFF4l0fYMakA87nGh T5aDjUxLisCC8uPu7vQPl1eaQApTAYOhIIOCJYd1HKqX0FUdIhd0q23VnF5G+W+yf qFnOkr0DxT4kWJvUgA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([46.125.249.82]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MLi8m-1slgID0ATI-00VZsg; Wed, 17 Jul 2024 11:23:37 +0200 Content-Type: multipart/mixed; boundary="------------0cpMOBypjKdTdjfLu6e2lIGs" Message-ID: <9dfeeabb-f421-4cb3-863c-6411e7c4b8a5@HIDDEN> Date: Wed, 17 Jul 2024 11:23:31 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: =?UTF-8?Q?Bj=C3=B6rn_Bidar?= <bjorn.bidar@HIDDEN>, martin rudalics via Bug reports for GNU "Emacs, " the Swiss army knife of text editors <bug-gnu-emacs@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <1fb1cc7a-b8ea-4d6d-ac6d-19abffef44f3@HIDDEN> <ee4e7e95-53d3-4b01-bd1a-ae2cd77352b2@HIDDEN> <871q3tc7da.fsf@> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <871q3tc7da.fsf@> X-Provags-ID: V03:K1:VhVgOv/J4yQ8jOf6ugrt+aPc2W+/m5varTwe2cdmoC36+jy9SvC YWFgH2+QfjrP5Nas8lpCiotccDO1jMyTpMj9bu8JU1rrO16Jqe/F8rcdeIbh00hgFtb2enz eK252+YnjAAn+NjEhRY3B0Woq87Vob3Mmqbu45WxC7q3m+arG6TRAAj2FKYVyk7rd3FCfvS PCU0wW26brVeDqzZKKLEQ== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:s/nC/AnwZf8=;HBdFjC4WbVuxKgkYa8QoKKEFmaT Jmog66OB+4w+SFVMjpY9LRErt/i0YXc5KxZNqHxN+ycDikMiWWutInH4zNpy1HO4SMRlszjRL TdhhKQkiQS4mynuSa3PKdPDMQoEDJOtx2JfZnM8XBE2a1ksXL2T7CwRgfcXeDjPPsqnR7DHyA YUeWQyI43Cqhy20IdkIH3uDCjoAzDBAQmpBvHPyxhj+ft4WrUBVtW5N9rlF/+JhOx/menlNhU U1npD87qohHtDznv0TD1XPyecxx6JUwzfY/C02jPy5EHYj3k56os0riKzS/k2zGrC7vrQvN31 okpZN2pYi59wMAnNlINwlLbFvWBjYKlJXDAR15YRuLvC1XM3rDZ3emDL/cKcilyLMor+OIutg VKTCbjVLaySl+CWSCScSGX2ePII/ErucpHIerMhYkPkYJes0Ch/ZbWfwgf21pnKHJHrdDYgZ3 deHw8QZfsiDCGH8qdP+vxX4aCmJwxsx5neLkgH3/N+/Zi+silsAd5/rfa9m1eRkS0xBbUhNpk r0hiKtgIqZ1r5WfDvvGEXFvqEsQ3dHAuNxIMijjmUdVFHF/4dAB8GnAYgABlIzCAoD8uNJmcS Yhzn3vFayLAjFo+jgVVs01UCVf5k8NSvbPyWiZtL+pIMSFhZsMzvbUnH7jQXtHBsHpjjqKvhf 4X7dqoy+Hl0B+SgUBix/swgygICEe6bLd1ouQXCVOxsVL8sDtDZCJicpHwza8BlQukVvD/xvf 3wGwldUvg1gz+70Ccv0Z/XloZSwHhG2yrLxMsEdk2POt8HejjyTFzdc0U7w/9oEoxo7QEteWe 3n3PAOEDPkVZn5kMKwInWgd7pOEX7yIjn7ybbrFN3G9nM= X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org, juri@HIDDEN X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) This is a multi-part message in MIME format. --------------0cpMOBypjKdTdjfLu6e2lIGs Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit > I meant window. Same as you explain further below in your message > I call quit-window on a dedicate window the frame also dies with it. Note that if a window is dedicated, 'quit-restore-window' will already do its best to delete the window together with its frame. > I think if the window inside of a frame didn't contain any other buffer > than the initial buffer and a new buffer that uses the same window > there could be the argument that the window should die and thus the > frame too. I attach a patch (including all previous changes) that tries to do that. In particular, evaluating (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-pop-up-window))) '(quit-restore-window-no-switch t) '(frame-auto-hide-function 'delete-frame)) and doing C-x 5 2 then C-h i then C-x 0 and finally q, will delete the second frame. Alternatively, evaluating (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-same-window))) '(quit-restore-window-no-switch 'skip-initial) '(frame-auto-hide-function 'delete-frame)) and doing C-x 5 2 then C-h i and q, will delete the second frame too. Finally, evaluating (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-same-window))) '(quit-restore-window-no-switch t) '(frame-auto-hide-function 'delete-frame)) and doing C-x 5 2 then C-h i then C-x k *scratch* and finally q will also delete the second frame. martin --------------0cpMOBypjKdTdjfLu6e2lIGs Content-Type: text/x-patch; charset=UTF-8; name="windows-and-buffers.diff" Content-Disposition: attachment; filename="windows-and-buffers.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2xpc3Avd2luZG93LmVsIGIvbGlzcC93aW5kb3cuZWwKaW5kZXggOWZj MmU1ZDY1ZTguLmFkNTUyZjUxMzllIDEwMDY0NAotLS0gYS9saXNwL3dpbmRvdy5lbAorKysg Yi9saXNwL3dpbmRvdy5lbApAQCAtNDU0MiwxNCArNDU0MiwxOCBAQCByZWNvcmQtd2luZG93 LWJ1ZmZlcgogICAgICAgKHB1c2gtd2luZG93LWJ1ZmZlci1vbnRvLXByZXYgd2luZG93KQog ICAgICAgKHJ1bi1ob29rcyAnYnVmZmVyLWxpc3QtdXBkYXRlLWhvb2spKSkpCiAKKzs7IEEg dmVyc2lvbiBpbiBDIHRoYXQgaGFuZGxlcyBkZWFkIHdpbmRvd3MgKHRoYXQgcHJlc3VtYWJs eSBhcmUgcGFydCBvZgorOzsgYSBzYXZlZCB3aW5kb3cgY29uZmlndXJhdGlvbikgbGl2ZXMg aW4gd2luZG93LmMgYW5kIGlzIGNhbGxlZAorOzsgd2luZG93X2Rpc2NhcmRfYnVmZmVyX2Zy b21fZGVhZF93aW5kb3cuICBXZSBjb3VsZCBjYWxsIHRoYXQgZnJvbSBoZXJlCis7OyBidXQg aXQgc2VlbXMgbW9yZSBwcmFjdGljYWwgdG8gaGFuZGxlIGxpdmUgd2luZG93cyBlbnRpcmVs eSBpbiBFbGlzcC4KIChkZWZ1biB1bnJlY29yZC13aW5kb3ctYnVmZmVyICgmb3B0aW9uYWwg d2luZG93IGJ1ZmZlcikKICAgIlVucmVjb3JkIEJVRkZFUiBpbiBXSU5ET1cuCi1XSU5ET1cg bXVzdCBiZSBhIGxpdmUgd2luZG93IGFuZCBkZWZhdWx0cyB0byB0aGUgc2VsZWN0ZWQgb25l LgotQlVGRkVSIG11c3QgYmUgYSBsaXZlIGJ1ZmZlciBhbmQgZGVmYXVsdHMgdG8gdGhlIGJ1 ZmZlciBvZgotV0lORE9XLgorV0lORE9XIG11c3QgYmUgYSBsaXZlIHdpbmRvdyBhbmQgZGVm YXVsdHMgdG8gdGhlIHNlbGVjdGVkIG9uZS4gIEJVRkZFUgorbXVzdCBiZSBhIGxpdmUgYnVm ZmVyIGFuZCBkZWZhdWx0cyB0byB0aGUgYnVmZmVyIG9mIFdJTkRPVyAoYWx0aG91Z2gKK3Ro YXQgZGVmYXVsdCBoYXJkbHkgbWFrZXMgYW55IHNlbnNlKS4KIAotTWFrZSBCVUZGRVIgZGlz YXBwZWFyIGZyb20gYWxsIHZhcmlhYmxlcyBtZW50aW9uZWQgYnkgdGhlIG9iamVjdCBvZgot V0lORE9XLiAgVGhpcyBpbmNsdWRlcyB0aGUgYnVmZmVycyBwcmV2aW91c2x5IHNod29uIGlu IFdJTkRPVyBhcyB3ZWxsIGFzCitNYWtlIEJVRkZFUiBkaXNhcHBlYXIgZnJvbSBtb3N0IGNv bXBvbmVudHMgc3BlY2lmaWVkIGJ5IHRoZSBvYmplY3Qgb2YKK1dJTkRPVy4gIFRoaXMgaW5j bHVkZXMgdGhlIGJ1ZmZlcnMgcHJldmlvdXNseSBzaG93biBpbiBXSU5ET1cgYXMgd2VsbCBh cwogYW55IGJ1ZmZlcnMgbWVudGlvbmVkIGJ5IFdJTkRPVydzIGBxdWl0LXJlc3RvcmUnIGFu ZCBgcXVpdC1yZXN0b3JlLXByZXYnCiBwYXJhbWV0ZXJzLiIKICAgKGxldCogKCh3aW5kb3cg KHdpbmRvdy1ub3JtYWxpemUtd2luZG93IHdpbmRvdyB0KSkKQEAgLTQ1NjIsNyArNDU2Niwx MyBAQCB1bnJlY29yZC13aW5kb3ctYnVmZmVyCiAgICAgICAgd2luZG93IChhc3NxLWRlbGV0 ZS1hbGwgYnVmZmVyICh3aW5kb3ctcHJldi1idWZmZXJzIHdpbmRvdykpKQogICAgICAgKHNl dC13aW5kb3ctbmV4dC1idWZmZXJzCiAgICAgICAgd2luZG93IChkZWxxIGJ1ZmZlciAod2lu ZG93LW5leHQtYnVmZmVycyB3aW5kb3cpKSkKLQorICAgICAgOzsgSWYgdGhlIGZvdXJ0aCBl bGVtZW50cyBvZiB0aGUgJ3F1aXQtcmVzdG9yZScgb3IKKyAgICAgIDs7ICdxdWl0LXJlc3Rv cmUtcHJldicgcGFyYW1ldGVycyBlcXVhbCBCVUZGRVIsIHRoZXNlIHBhcmFtZXRlcnMKKyAg ICAgIDs7IGJlY29tZSB1c2VsZXNzIC0gaW4gJ3F1aXQtcmVzdG9yZS13aW5kb3cnIHRoZSBm b3VydGggZWxlbWVudAorICAgICAgOzsgbXVzdCBlcXVhbCB0aGUgYnVmZmVyIG9mIFdJTkRP VyBpbiBvcmRlciB0byB1c2UgdGhhdCBwYXJhbWV0ZXIuCisgICAgICA7OyBJZiBCVUZGRVIg aXMgbWVudGlvbmVkIGluIHRoZSBzZWNvbmQgZWxlbWVudCBvZiB0aGUgcGFyYW1ldGVyLAor ICAgICAgOzsgJ3F1aXQtcmVzdG9yZS13aW5kb3cnIGNhbm5vdCBwb3NzaWJseSBzaG93IEJV RkZFUiBpbnN0ZWFkOyBzbworICAgICAgOzsgdGhpcyBwYXJhbWV0ZXIgYmVjb21lcyB1c2Vs ZXNzIHRvby4KICAgICAgICh3aGVuIChvciAoZXEgYnVmZmVyIChudGggMyBxdWl0LXJlc3Rv cmUtcHJldikpCiAJCShhbmQgKGxpc3RwIChzZXRxIHF1YWQgKG50aCAxIHF1aXQtcmVzdG9y ZS1wcmV2KSkpCiAJCSAgICAgKGVxIChjYXIgcXVhZCkgYnVmZmVyKSkpCkBAIC00NTcyLDcg KzQ1ODIsOCBAQCB1bnJlY29yZC13aW5kb3ctYnVmZmVyCiAJCShhbmQgKGxpc3RwIChzZXRx IHF1YWQgKG50aCAxIHF1aXQtcmVzdG9yZSkpKQogCQkgICAgIChlcSAoY2FyIHF1YWQpIGJ1 ZmZlcikpKQogCShzZXQtd2luZG93LXBhcmFtZXRlcgotCSB3aW5kb3cgJ3F1aXQtcmVzdG9y ZSAod2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZS1wcmV2KSkpKSkpCisJ IHdpbmRvdyAncXVpdC1yZXN0b3JlICh3aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVpdC1y ZXN0b3JlLXByZXYpKQorCShzZXQtd2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVz dG9yZS1wcmV2IG5pbCkpKSkpCiAKIChkZWZ1biBzZXQtd2luZG93LWJ1ZmZlci1zdGFydC1h bmQtcG9pbnQgKHdpbmRvdyBidWZmZXIgJm9wdGlvbmFsIHN0YXJ0IHBvaW50KQogICAiU2V0 IFdJTkRPVydzIGJ1ZmZlciB0byBCVUZGRVIuCkBAIC01MDkxLDYgKzUxMDIsMTggQEAgcHJl dmlvdXMtYnVmZmVyCiAgICAgICAgICAgICAgICAgIChub3QgKG9yIGV4ZWN1dGluZy1rYmQt bWFjcm8gbm9uaW50ZXJhY3RpdmUpKSkKICAgICAgICAgKHVzZXItZXJyb3IgIk5vIHByZXZp b3VzIGJ1ZmZlciIpKSkpKSkKIAorKGRlZmN1c3RvbSBraWxsLWJ1ZmZlci1xdWl0LXdpbmRv d3MgbmlsCisgICJOb24tbmlsIG1lYW5zIGtpbGxpbmcgYnVmZmVycyBzaGFsbCBxdWl0IHdp bmRvd3MuCitJZiB0aGlzIGlzIG5pbCwga2lsbGluZyBhIGJ1ZmZlciBtYXkgZGVsZXRlIGRl ZGljYXRlZCB3aW5kb3dzIG9ubHkuICBJZgordGhpcyBpcyBub24tbmlsLCBga2lsbC1idWZm ZXInIChhbmQgYHJlcGxhY2UtYnVmZmVyLWluLXdpbmRvd3MnIGluCitjb25zZXF1ZW5jZSkg aGF2ZSBgcXVpdC1yZXN0b3JlLXdpbmRvdycgZGVhbCB3aXRoIGFueSB3aW5kb3cgc2hvd2lu ZyB0aGUKK2J1ZmZlciB0byBiZSBraWxsZWQgd2hpY2ggbWF5IGRlbGV0ZSB0aGUgd2luZG93 IGlmIGl0J3Mgbm90IGRlZGljYXRlZCB0bworaXRzIGJ1ZmZlci4gIEFsc28sIGBkZWxldGUt d2luZG93cy1vbicgd2lsbCB1c2UgYHF1aXQtcmVzdG9yZS13aW5kb3cnIGFzCitmYWxsYmFj ayB3aGVuIGEgd2luZG93IGNhbm5vdCBiZSBkZWxldGVkIG90aGVyd2lzZS4iCisgIDp0eXBl ICdib29sZWFuCisgIDp2ZXJzaW9uICIzMS4xIgorICA6Z3JvdXAgJ3dpbmRvd3MpCisKIChk ZWZ1biBkZWxldGUtd2luZG93cy1vbiAoJm9wdGlvbmFsIGJ1ZmZlci1vci1uYW1lIGZyYW1l KQogICAiRGVsZXRlIGFsbCB3aW5kb3dzIHNob3dpbmcgQlVGRkVSLU9SLU5BTUUuCiBCVUZG RVItT1ItTkFNRSBtYXkgYmUgYSBidWZmZXIgb3IgdGhlIG5hbWUgb2YgYW4gZXhpc3Rpbmcg YnVmZmVyCkBAIC01MTI4LDggKzUxNTEsMTAgQEAgZGVsZXRlLXdpbmRvd3Mtb24KIHRlcm1p bmFsLCBkZWxldGUgdGhhdCBmcmFtZS4gIE90aGVyd2lzZSwgZG8gbm90IGRlbGV0ZSBhIGZy YW1lJ3Mgcm9vdAogd2luZG93IGlmIGl0IHNob3dzIHRoZSBidWZmZXIgc3BlY2lmaWVkIGJ5 IEJVRkZFUi1PUi1OQU1FIGFuZCBkbyBub3QKIGRlbGV0ZSBhbnkgZnJhbWUncyBtYWluIHdp bmRvdyBzaG93aW5nIHRoYXQgYnVmZmVyIGVpdGhlci4gIFJhdGhlciwgaW4KLWFueSBzdWNo IGNhc2UsIGNhbGwgYHF1aXQtcmVzdG9yZS13aW5kb3cnIHRvIHNob3cgYW5vdGhlciBidWZm ZXIgaW4gdGhhdAotd2luZG93IGFuZCBtYWtlIHN1cmUgdGhlIHdpbmRvdyBpcyBubyBtb3Jl IGRlZGljYXRlZCB0byBpdHMgYnVmZmVyLgorYW55IHN1Y2ggY2FzZSwgY2FsbCBlaXRoZXIg YHF1aXQtcmVzdG9yZS13aW5kb3cnIChwcm92aWRlZAorYGtpbGwtYnVmZmVyLXF1aXQtd2lu ZG93cycgaXMgbm9uLW5pbCkgb3IgYHN3aXRjaC10by1wcmV2LWJ1ZmZlcicgdG8KK3Nob3cg YW5vdGhlciBidWZmZXIgaW4gdGhhdCB3aW5kb3cgYW5kIG1ha2Ugc3VyZSB0aGUgd2luZG93 IGlzIG5vIG1vcmUKK2RlZGljYXRlZCB0byBpdHMgYnVmZmVyLgogCiBJZiB0aGUgYnVmZmVy IHNwZWNpZmllZCBieSBCVUZGRVItT1ItTkFNRSBpcyBzaG93biBpbiBhIG1pbmlidWZmZXIK IHdpbmRvdywgZG8gbm90aGluZyBmb3IgdGhhdCB3aW5kb3cuICBGb3IgYW55IHdpbmRvdyB0 aGF0IGRvZXMgbm90IHNob3cKQEAgLTUxNjYsOSArNTE5MSwxOCBAQCBkZWxldGUtd2luZG93 cy1vbgogCSAgICAgKChlcSBkZWxldGFibGUgdCkKIAkgICAgICA7OyBEZWxldGUgd2luZG93 LgogCSAgICAgIChkZWxldGUtd2luZG93IHdpbmRvdykpCisJICAgICAoa2lsbC1idWZmZXIt cXVpdC13aW5kb3dzCisJICAgICAgKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93ICdidXJ5 KQorCSAgICAgICh3aGVuICh3aW5kb3ctbGl2ZS1wIHdpbmRvdykKKwkJOzsgVW5yZWNvcmQg QlVGRkVSIGluIHRoaXMgd2luZG93LgorCQkodW5yZWNvcmQtd2luZG93LWJ1ZmZlciB3aW5k b3cgYnVmZmVyKSkpCiAJICAgICAodAotCSAgICAgICh3aGVuIChlcSAod2luZG93LWJ1ZmZl ciB3aW5kb3cpIGJ1ZmZlcikKLQkJKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93ICdidXJ5 KSkKKwkgICAgICA7OyBJbiB3aW5kb3cgc3dpdGNoIHRvIHByZXZpb3VzIGJ1ZmZlci4KKwkg ICAgICAoc2V0LXdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cgbmlsKQorCSAgICAgIChzd2l0 Y2gtdG8tcHJldi1idWZmZXIgd2luZG93ICdidXJ5KQorCSAgICAgIDs7IFJlc3RvcmUgdGhl IGRlZGljYXRlZCAnc2lkZScgZmxhZy4KKwkgICAgICAod2hlbiAoZXEgZGVkaWNhdGVkICdz aWRlKQorICAgICAgICAgICAgICAgIChzZXQtd2luZG93LWRlZGljYXRlZC1wIHdpbmRvdyAn c2lkZSkpCiAJICAgICAgKHdoZW4gKHdpbmRvdy1saXZlLXAgd2luZG93KQogCQk7OyBVbnJl Y29yZCBCVUZGRVIgaW4gdGhpcyB3aW5kb3cuCiAJCSh1bnJlY29yZC13aW5kb3ctYnVmZmVy IHdpbmRvdyBidWZmZXIpKSkpKQpAQCAtNTE3NywyOSArNTIxMSw0NiBAQCBkZWxldGUtd2lu ZG93cy1vbgogCiAoZGVmdW4gcmVwbGFjZS1idWZmZXItaW4td2luZG93cyAoJm9wdGlvbmFs IGJ1ZmZlci1vci1uYW1lKQogICAiUmVwbGFjZSBCVUZGRVItT1ItTkFNRSB3aXRoIHNvbWUg b3RoZXIgYnVmZmVyIGluIGFsbCB3aW5kb3dzIHNob3dpbmcgaXQuCi1CVUZGRVItT1ItTkFN RSBtYXkgYmUgYSBidWZmZXIgb3IgdGhlIG5hbWUgb2YgYW4gZXhpc3RpbmcgYnVmZmVyCi1h bmQgZGVmYXVsdHMgdG8gdGhlIGN1cnJlbnQgYnVmZmVyLiAgTWluaWJ1ZmZlciB3aW5kb3dz IGFyZSBub3QKLWNvbnNpZGVyZWQuCi0KLVdpdGggdGhlIGV4Y2VwdGlvbiBvZiBzaWRlIHdp bmRvd3MsIHdoZW4gYSB3aW5kb3cgc2hvd2luZyBCVUZGRVItT1ItTkFNRQotaXMgZGVkaWNh dGVkLCB0aGF0IHdpbmRvdyBpcyBkZWxldGVkLiAgSWYgdGhhdCB3aW5kb3cgaXMgdGhlIG9u bHkgd2luZG93Ci1vbiBpdHMgZnJhbWUsIHRoZSBmcmFtZSBpcyBkZWxldGVkIHRvbyB3aGVu IHRoZXJlIGFyZSBvdGhlciBmcmFtZXMgbGVmdC4KLUlmIHRoZXJlIGFyZSBubyBvdGhlciBm cmFtZXMgbGVmdCwgc29tZSBvdGhlciBidWZmZXIgaXMgZGlzcGxheWVkIGluIHRoYXQKK0JV RkZFUi1PUi1OQU1FIG1heSBiZSBhIGJ1ZmZlciBvciB0aGUgbmFtZSBvZiBhbiBleGlzdGlu ZyBidWZmZXIgYW5kCitkZWZhdWx0cyB0byB0aGUgY3VycmVudCBidWZmZXIuICBNaW5pYnVm ZmVyIHdpbmRvd3MgYXJlIG5vdCBjb25zaWRlcmVkLgorCitJZiB0aGUgb3B0aW9uIGBraWxs LWJ1ZmZlci1xdWl0LXdpbmRvd3MnIGlzIG5pbCwgYmVoYXZlIGFzIGZvbGxvd3M6IFdpdGgK K3RoZSBleGNlcHRpb24gb2Ygc2lkZSB3aW5kb3dzLCB3aGVuIGEgd2luZG93IHNob3dpbmcg QlVGRkVSLU9SLU5BTUUgaXMKK2RlZGljYXRlZCwgZGVsZXRlIHRoYXQgd2luZG93LiAgSWYg dGhhdCB3aW5kb3cgaXMgdGhlIG9ubHkgd2luZG93IG9uIGl0cworZnJhbWUsIGRlbGV0ZSBp dHMgZnJhbWUgd2hlbiB0aGVyZSBhcmUgb3RoZXIgZnJhbWVzIGxlZnQuICBJbiBhbnkgb3Ro ZXIKK2Nhc2UsIGNhbGwgYHN3aXRjaC10by1wcmV2LWJ1ZmZlcicgdG8gZGlzcGxheSBzb21l IG90aGVyIGJ1ZmZlciBpbiB0aGF0CiB3aW5kb3cuCiAKLVRoaXMgZnVuY3Rpb24gcmVtb3Zl cyB0aGUgYnVmZmVyIGRlbm90ZWQgYnkgQlVGRkVSLU9SLU5BTUUgZnJvbSBhbGwKLXdpbmRv dy1sb2NhbCBidWZmZXIgbGlzdHMgYW5kIHJlbW92ZXMgYW55IGBxdWl0LXJlc3RvcmUnIG9y Ci1gcXVpdC1yZXN0b3JlLXByZXYnIHBhcmFtZXRlcnMgbWVudGlvbmluZyBpdC4iCitJZiBg a2lsbC1idWZmZXItcXVpdC13aW5kb3dzJyBpcyBub24tbmlsLCBjYWxsIGBxdWl0LXJlc3Rv cmUtd2luZG93JyBmb3IKK2FueSB3aW5kb3cgc2hvd2luZyBCVUZGRVItT1ItTkFNRSB3aXRo IHRoZSBhcmd1bWVudCBCVVJZLU9SLUtJTEwgc2V0IHRvCitga2lsbGluZycgdG8gYXZvaWQg dGhhdCB0aGUgbGF0dGVyIGtpbGxzIHRoZSBidWZmZXIgcHJlbWF0dXJlbHkuCisKK0luIGVp dGhlciBjYXNlLCByZW1vdmUgdGhlIGJ1ZmZlciBkZW5vdGVkIGJ5IEJVRkZFUi1PUi1OQU1F IGZyb20gdGhlCitsaXN0cyBvZiBwcmV2aW91cyBhbmQgbmV4dCBidWZmZXJzIG9mIGFsbCB3 aW5kb3dzIGFuZCByZW1vdmUgYW55CitgcXVpdC1yZXN0b3JlJyBvciBgcXVpdC1yZXN0b3Jl LXByZXYnIHBhcmFtZXRlcnMgbWVudGlvbmluZyBpdC4KKworVGhpcyBmdW5jdGlvbiBpcyBj YWxsZWQgYnkgYGtpbGwtYnVmZmVyJyB3aGljaCBraWxscyB0aGUgYnVmZmVyCitzcGVjaWZp ZWQgYnkgYGJ1ZmZlci1vci1uYW1lJyBhZnRlcndhcmRzLiAgSXQgbmV2ZXIga2lsbHMgYSBi dWZmZXIgYnkKK2l0c2VsZi4iCiAgIChpbnRlcmFjdGl2ZSAiYkJ1ZmZlciB0byByZXBsYWNl OiAiKQogICAobGV0ICgoYnVmZmVyICh3aW5kb3ctbm9ybWFsaXplLWJ1ZmZlciBidWZmZXIt b3ItbmFtZSkpKQotICAgIDs7IFNjYW4gYWxsIHdpbmRvd3MuICBXZSBoYXZlIHRvIHVucmVj b3JkIEJVRkZFUiBpbiB0aG9zZSBub3QKLSAgICA7OyBzaG93aW5nIGl0LgorICAgIDs7IFNj YW4gYWxsIHdpbmRvd3MuICBXZSBoYXZlIHRvIHVucmVjb3JkIEJVRkZFUi1PUi1OQU1FIGlu IHRob3NlCisgICAgOzsgbm90IHNob3dpbmcgaXQuCiAgICAgKGRvbGlzdCAod2luZG93ICh3 aW5kb3ctbGlzdC0xIG5pbCBuaWwgdCkpCiAgICAgICAod2hlbiAoZXEgKHdpbmRvdy1idWZm ZXIgd2luZG93KSBidWZmZXIpCi0JKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93KSkKLSAg ICAgICh3aGVuICh3aW5kb3ctbGl2ZS1wIHdpbmRvdykKLQk7OyBVbnJlY29yZCBCVUZGRVIg aW4gdGhpcyB3aW5kb3cuCi0JKHVucmVjb3JkLXdpbmRvdy1idWZmZXIgd2luZG93IGJ1ZmZl cikpKSkpCisJKGlmIGtpbGwtYnVmZmVyLXF1aXQtd2luZG93cworCSAgICAocXVpdC1yZXN0 b3JlLXdpbmRvdyB3aW5kb3cgJ2tpbGxpbmcpCisJICAobGV0ICgoZGVkaWNhdGVkLXNpZGUg KGVxICh3aW5kb3ctZGVkaWNhdGVkLXAgd2luZG93KSAnc2lkZSkpKQorICAgICAgICAgICAg KHdoZW4gKG9yIGRlZGljYXRlZC1zaWRlIChub3QgKHdpbmRvdy0tZGVsZXRlIHdpbmRvdyB0 ICdraWxsKSkpCisJICAgICAgOzsgU3dpdGNoIHRvIGFub3RoZXIgYnVmZmVyIGluIHRoYXQg d2luZG93LgorCSAgICAgIChzZXQtd2luZG93LWRlZGljYXRlZC1wIHdpbmRvdyBuaWwpCisJ ICAgICAgKGlmIChzd2l0Y2gtdG8tcHJldi1idWZmZXIgd2luZG93ICdraWxsKQorICAgICAg ICAgICAgICAgICAgKGFuZCBkZWRpY2F0ZWQtc2lkZSAoc2V0LXdpbmRvdy1kZWRpY2F0ZWQt cCB3aW5kb3cgJ3NpZGUpKQorCQkod2luZG93LS1kZWxldGUgd2luZG93IG5pbCAna2lsbCkp KSkpKQorCisJKHdoZW4gKHdpbmRvdy1saXZlLXAgd2luZG93KQorCSAgOzsgVW5yZWNvcmQg QlVGRkVSIGluIHRoaXMgd2luZG93LgorCSAgKHVucmVjb3JkLXdpbmRvdy1idWZmZXIgd2lu ZG93IGJ1ZmZlcikpKSkpCiAKIChkZWZjdXN0b20gcXVpdC13aW5kb3ctaG9vayBuaWwKICAg Ikhvb2sgcnVuIGJlZm9yZSBwZXJmb3JtaW5nIGFueSBvdGhlciBhY3Rpb25zIGluIHRoZSBg cXVpdC13aW5kb3cnIGNvbW1hbmQuIgpAQCAtNTIwNyw2ICs1MjU4LDIzIEBAIHF1aXQtd2lu ZG93LWhvb2sKICAgOnZlcnNpb24gIjI3LjEiCiAgIDpncm91cCAnd2luZG93cykKIAorKGRl ZmN1c3RvbSBxdWl0LXJlc3RvcmUtd2luZG93LW5vLXN3aXRjaCBuaWwKKyAgIk5vbi1uaWwg bWVhbnMgYHF1aXQtcmVzdG9yZS13aW5kb3cnIHByZWZlcmFibHkgd29uJ3Qgc3dpdGNoIGJ1 ZmZlcnMuCitJZiB0aGlzIGlzIG5pbCwgYHF1aXQtcmVzdG9yZS13aW5kb3cnIHdpbGwgY2Fs bCBgc3dpdGNoLXRvLXByZXYtYnVmZmVyJwordW5sZXNzIHRoZSB3aW5kb3cgaGFzIGJlZW4g bWFkZSBieSBgZGlzcGxheS1idWZmZXInLiAgSWYgdGhpcyBpcyB0LAorYHF1aXQtcmVzdG9y ZS13aW5kb3cnIHdpbGwgc3dpdGNoIHRvIGEgcHJldmlvdXMgYnVmZmVyIG9ubHkgaWYgYSBs aXZlCitidWZmZXIgZXhpc3RzIHRoYXQgd2FzIHByZXZpb3VzbHkgc2hvd24gaW4gdGhhdCB3 aW5kb3cuICBJZiB0aGlzIGlzIHRoZQorc3ltYm9sIGBza2lwLWluaXRpYWwnLCBpdCB3aWxs IG5vdCBzd2l0Y2ggdG8gdGhlIGluaXRpYWwgYnVmZmVyIG9mIHRoZQord2luZG93J3MgYHF1 aXQtcmVzdG9yZScgcGFyYW1ldGVyLgorCitJbiBlaXRoZXIgY2FzZSwgaWYgYHF1aXQtcmVz dG9yZS13aW5kb3cnIGRvZXNuJ3Qgc3dpdGNoIHRvIGEgcHJldmlvdXMKK2J1ZmZlciwgaXQg d2lsbCB0cnkgdG8gZGVsZXRlIHRoZSB3aW5kb3cgKGFuZCBtYXliZSBpdHMgZnJhbWUpIGlu c3RlYWQuCitOb3RlIGFsc28gdGhhdCBpZiBhIHdpbmRvdyBpcyBkZWRpY2F0ZWQsIGBxdWl0 LXJlc3RvcmUtd2luZG93JyB3aWxsCit1c3VhbGx5IG5vdCBzd2l0Y2ggdG8gYSBwcmV2aW91 cyBidWZmZXIgaW4gaXQuIgorICA6dHlwZSAnYm9vbGVhbgorICA6dmVyc2lvbiAiMzEuMSIK KyAgOmdyb3VwICd3aW5kb3dzKQorCiAoZGVmdW4gd2luZG93LS1xdWl0LXJlc3RvcmUtc2Vs ZWN0LXdpbmRvdyAod2luZG93KQogICAiU2VsZWN0IFdJTkRPVyBhZnRlciBoYXZpbmcgcXVp dCBhbm90aGVyIG9uZS4KIERvIG5vdCBzZWxlY3QgYW4gaW5hY3RpdmUgbWluaWJ1ZmZlciB3 aW5kb3cuIgpAQCAtNTIyNyw5ICs1Mjk1LDEwIEBAIHF1aXQtcmVzdG9yZS13aW5kb3cKIHVz ZWQgdG8gcmVzdG9yZSB0aGUgcHJldmlvdXNseSBzaG93biBidWZmZXIuICBTZWUgSW5mbyBu b2RlIGAoZWxpc3ApCiBRdWl0dGluZyBXaW5kb3dzJyBmb3IgbW9yZSBkZXRhaWxzLgogCi1J ZiBXSU5ET1cncyBkZWRpY2F0ZWQgZmxhZyBpcyB0LCB0cnkgdG8gZGVsZXRlIFdJTkRPVy4g IElmIGl0Ci1lcXVhbHMgdGhlIHZhbHVlIGBzaWRlJywgcmVzdG9yZSB0aGF0IHZhbHVlIHdo ZW4gV0lORE9XIGlzIG5vdAotZGVsZXRlZC4KK0lmIFdJTkRPVydzIGRlZGljYXRlZCBmbGFn IGlzIHQsIHRyeSB0byBkZWxldGUgV0lORE9XLiAgSWYgaXQgZXF1YWxzIHRoZQordmFsdWUg YHNpZGUnLCByZXN0b3JlIHRoYXQgdmFsdWUgd2hlbiBXSU5ET1cgaXMgbm90IGRlbGV0ZWQu ICBXaGV0aGVyCitXSU5ET1cgb3IgaXRzIGZyYW1lIGdldCBkZWxldGVkIGNhbiBiZSBmdXJ0 aGVyIGNvbnRyb2xsZWQgdmlhIHRoZSBvcHRpb24KK2BxdWl0LXJlc3RvcmUtd2luZG93LW5v LXN3aXRjaCcuCiAKIE9wdGlvbmFsIHNlY29uZCBhcmd1bWVudCBCVVJZLU9SLUtJTEwgdGVs bHMgaG93IHRvIHByb2NlZWQgd2l0aAogdGhlIGJ1ZmZlciBvZiBXSU5ET1cuICBUaGUgZm9s bG93aW5nIHZhbHVlcyBhcmUgaGFuZGxlZDoKQEAgLTUyNDksNyArNTMxOCwxNCBAQCBxdWl0 LXJlc3RvcmUtd2luZG93CiAgIG1vc3QgcmVsaWFibGUgcmVtZWR5IHRvIG5vdCBoYXZlIGBz d2l0Y2gtdG8tcHJldi1idWZmZXInIHN3aXRjaAogICB0byB0aGlzIGJ1ZmZlciBhZ2FpbiB3 aXRob3V0IGtpbGxpbmcgdGhlIGJ1ZmZlci4KIAotYGtpbGwnIG1lYW5zIHRvIGtpbGwgV0lO RE9XJ3MgYnVmZmVyLiIKK2BraWxsJyBtZWFucyB0byBraWxsIFdJTkRPVydzIGJ1ZmZlci4K KworYGtpbGxpbmcnIGlzIGxpa2UgYGtpbGwnIGJ1dCBtZWFucyB0aGF0IFdJTkRPVydzIGJ1 ZmZlciB3aWxsIGdldCBraWxsZWQKK2Vsc2V3aGVyZS4gIFRoaXMgdmFsdWUgaXMgdXNlZCBi eSBgcmVwbGFjZS1idWZmZXItaW4td2luZG93cycgYW5kCitgcXVpdC13aW5kb3dzLW9uJy4K KworYGJ1cnlpbmcnIGlzIGxpa2UgYGJ1cnknIGJ1dCBtZWFucyB0aGF0IFdJTkRPVydzIGJ1 ZmZlciB3aWxsIGdldCBidXJpZWQKK2Vsc2V3aGVyZS4gIFRoaXMgdmFsdWUgaXMgdXNlZCBi eSBgcXVpdC13aW5kb3dzLW9uJy4iCiAgIChzZXRxIHdpbmRvdyAod2luZG93LW5vcm1hbGl6 ZS13aW5kb3cgd2luZG93IHQpKQogICAobGV0KiAoKGJ1ZmZlciAod2luZG93LWJ1ZmZlciB3 aW5kb3cpKQogCSAocXVpdC1yZXN0b3JlICh3aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVp dC1yZXN0b3JlKSkKQEAgLTUyNjUsMzIgKzUzNDEsMzggQEAgcXVpdC1yZXN0b3JlLXdpbmRv dwogICAgIChjb25kCiAgICAgIDs7IEZpcnN0IHRyeSB0byBkZWxldGUgZGVkaWNhdGVkIHdp bmRvd3MgdGhhdCBhcmUgbm90IHNpZGUgd2luZG93cy4KICAgICAgKChhbmQgZGVkaWNhdGVk IChub3QgKGVxIGRlZGljYXRlZCAnc2lkZSkpCi0gICAgICAgICAgICh3aW5kb3ctLWRlbGV0 ZSB3aW5kb3cgJ2RlZGljYXRlZCAoZXEgYnVyeS1vci1raWxsICdraWxsKSkpCisgICAgICAg ICAgICh3aW5kb3ctLWRlbGV0ZQorCSAgICB3aW5kb3cgJ2RlZGljYXRlZCAobWVtcSBidXJ5 LW9yLWtpbGwgJyhraWxsIGtpbGxpbmcpKSkpCiAgICAgICA7OyBJZiB0aGUgcHJldmlvdXNs eSBzZWxlY3RlZCB3aW5kb3cgaXMgc3RpbGwgYWxpdmUsIHNlbGVjdCBpdC4KICAgICAgICh3 aW5kb3ctLXF1aXQtcmVzdG9yZS1zZWxlY3Qtd2luZG93IHF1aXQtcmVzdG9yZS0yKSkKICAg ICAgKChhbmQgKG5vdCBwcmV2LWJ1ZmZlcikKIAkgICAoZXEgKG50aCAxIHF1aXQtcmVzdG9y ZSkgJ3RhYikKLQkgICAoZXEgKG50aCAzIHF1aXQtcmVzdG9yZSkgYnVmZmVyKSkKKwkgICAo ZXEgKG50aCAzIHF1aXQtcmVzdG9yZSkgYnVmZmVyKQorCSAgICg8IChzZXEtY291bnQgKGxh bWJkYSAodykgKHdpbmRvdy1wYXJhbWV0ZXIgdyAncXVpdC1yZXN0b3JlKSkKKwkJICAgICAg ICAgKHdpbmRvdy1saXN0LTEgbmlsICdub21pbmkpKQorICAgICAgICAgICAgICAyKSkKICAg ICAgICh0YWItYmFyLWNsb3NlLXRhYikKICAgICAgIDs7IElmIHRoZSBwcmV2aW91c2x5IHNl bGVjdGVkIHdpbmRvdyBpcyBzdGlsbCBhbGl2ZSwgc2VsZWN0IGl0LgogICAgICAgKHdpbmRv dy0tcXVpdC1yZXN0b3JlLXNlbGVjdC13aW5kb3cgcXVpdC1yZXN0b3JlLTIpKQotICAgICAo KGFuZCAobm90IHByZXYtYnVmZmVyKQotCSAgIChvciAoYW5kIChvciAoZXEgKG50aCAxIHF1 aXQtcmVzdG9yZSkgJ2ZyYW1lKQotCQkJKGFuZCAoZXEgKG50aCAxIHF1aXQtcmVzdG9yZSkg J3dpbmRvdykKLQkJCSAgICAgOzsgSWYgdGhlIHdpbmRvdyBoYXMgYmVlbiBjcmVhdGVkIG9u IGFuCi0JCQkgICAgIDs7IGV4aXN0aW5nIGZyYW1lIGFuZCBlbmRlZCB1cCBhcyB0aGUgc29s ZQotCQkJICAgICA7OyB3aW5kb3cgb24gdGhhdCBmcmFtZSwgZG8gbm90IGRlbGV0ZSBpdAot CQkJICAgICA7OyAoQnVnIzEyNzY0KS4KLQkJCSAgICAgKG5vdCAoZXEgd2luZG93IChmcmFt ZS1yb290LXdpbmRvdyB3aW5kb3cpKSkpKQotCQkgICAgKGVxIChudGggMyBxdWl0LXJlc3Rv cmUpIGJ1ZmZlcikpCi0JICAgICAgIChhbmQgKG9yIChlcSAobnRoIDEgcXVpdC1yZXN0b3Jl LXByZXYpICdmcmFtZSkKLQkJCShhbmQgKGVxIChudGggMSBxdWl0LXJlc3RvcmUtcHJldikg J3dpbmRvdykKLQkJCSAgICAgKG5vdCAoZXEgd2luZG93IChmcmFtZS1yb290LXdpbmRvdyB3 aW5kb3cpKSkpKQotCQkgICAgKGVxIChudGggMyBxdWl0LXJlc3RvcmUtcHJldikgYnVmZmVy KQotCQkgICAgOzsgVXNlIHNlbGVjdGVkIHdpbmRvdyBmcm9tIHF1aXQtcmVzdG9yZS1wcmV2 LgotCQkgICAgKHNldHEgcXVpdC1yZXN0b3JlLTIgcXVpdC1yZXN0b3JlLXByZXYtMikpKQor ICAgICAoKGFuZCAob3IgKG5vdCBwcmV2LWJ1ZmZlcikKKwkgICAgICAgOzsgSWdub3JlIGZp cnN0IG9mIHRoZSBwcmV2aW91cyBidWZmZXJzIGlmCisJICAgICAgIDs7ICdxdWl0LXJlc3Rv cmUtd2luZG93LW5vLXN3aXRjaCcgc2F5cyBzby4KKwkgICAgICAgKGFuZCAoZXEgcXVpdC1y ZXN0b3JlLXdpbmRvdy1uby1zd2l0Y2ggJ3NraXAtaW5pdGlhbCkKKwkJICAgIChub3QgKGNk ciAod2luZG93LXByZXYtYnVmZmVycyB3aW5kb3cpKSkpKQorCSAgIChvciAoZXEgKG50aCAx IHF1aXQtcmVzdG9yZSkgJ2ZyYW1lKQorCSAgICAgICA7OyBJZiB0aGUgd2luZG93IGhhcyBi ZWVuIGNyZWF0ZWQgb24gYW4gZXhpc3RpbmcKKwkgICAgICAgOzsgZnJhbWUgYW5kIGVuZGVk IHVwIGFzIHRoZSBzb2xlIHdpbmRvdyBvbiB0aGF0CisJICAgICAgIDs7IGZyYW1lLCBkbyBu b3QgZGVsZXRlIGl0IChCdWcjMTI3NjQpLgorCSAgICAgICAoYW5kIChlcSAobnRoIDEgcXVp dC1yZXN0b3JlKSAnd2luZG93KQorCQkgICAgKG5vdCAoZXEgd2luZG93IChmcmFtZS1yb290 LXdpbmRvdyB3aW5kb3cpKSkpCisJICAgICAgIDs7IEJ1dCBhbHdheXMgYWxsb3cgZGVsZXRp bmcgYSBmcmFtZSBvciB3aW5kb3cgaWYKKwkgICAgICAgOzsgJ3F1aXQtcmVzdG9yZS13aW5k b3ctbm8tc3dpdGNoJyBzYXlzIHNvLgorCSAgICAgICBxdWl0LXJlc3RvcmUtd2luZG93LW5v LXN3aXRjaCkKKwkgICAob3IgKGVxIChudGggMyBxdWl0LXJlc3RvcmUpIGJ1ZmZlcikKKwkg ICAgICAgcXVpdC1yZXN0b3JlLXdpbmRvdy1uby1zd2l0Y2gpCiAJICAgOzsgRGVsZXRlIFdJ TkRPVyBpZiBwb3NzaWJsZS4KLQkgICAod2luZG93LS1kZWxldGUgd2luZG93IG5pbCAoZXEg YnVyeS1vci1raWxsICdraWxsKSkpCisJICAgKHdpbmRvdy0tZGVsZXRlCisJICAgIHdpbmRv dyBuaWwgKG1lbXEgYnVyeS1vci1raWxsICcoa2lsbCBraWxsaW5nKSkpKQogICAgICAgOzsg SWYgdGhlIHByZXZpb3VzbHkgc2VsZWN0ZWQgd2luZG93IGlzIHN0aWxsIGFsaXZlLCBzZWxl Y3QgaXQuCiAgICAgICAod2luZG93LS1xdWl0LXJlc3RvcmUtc2VsZWN0LXdpbmRvdyBxdWl0 LXJlc3RvcmUtMikpCiAgICAgICgob3IgKGFuZCAobGlzdHAgKHNldHEgcXVhZCAobnRoIDEg cXVpdC1yZXN0b3JlLXByZXYpKSkKQEAgLTUzMjgsNyArNTQxMCw3IEBAIHF1aXQtcmVzdG9y ZS13aW5kb3cKICAgICAgIDs7IERlYWwgd2l0aCB0aGUgYnVmZmVyIHdlIGp1c3QgcmVtb3Zl ZCBmcm9tIFdJTkRPVy4KICAgICAgIChzZXRxIGVudHJ5IChhbmQgKGVxIGJ1cnktb3Ita2ls bCAnYXBwZW5kKQogCQkgICAgICAgKGFzc3EgYnVmZmVyICh3aW5kb3ctcHJldi1idWZmZXJz IHdpbmRvdykpKSkKLSAgICAgICh3aGVuIGJ1cnktb3Ita2lsbAorICAgICAgKHdoZW4gKG1l bXEgYnVyeS1vci1raWxsICcoYnVyeSBidXJ5aW5nIGtpbGwga2lsbGluZykpCiAJOzsgUmVt b3ZlIGJ1ZmZlciBmcm9tIFdJTkRPVydzIHByZXZpb3VzIGFuZCBuZXh0IGJ1ZmZlcnMuCiAJ KHNldC13aW5kb3ctcHJldi1idWZmZXJzCiAJIHdpbmRvdyAoYXNzcS1kZWxldGUtYWxsIGJ1 ZmZlciAod2luZG93LXByZXYtYnVmZmVycyB3aW5kb3cpKSkKQEAgLTUzNDYsNyArNTQyOCw2 IEBAIHF1aXQtcmVzdG9yZS13aW5kb3cKIAk7OyBJZiBxdWl0LXJlc3RvcmUtcHJldiB3YXMg bm90IHVzZWQsIHJlc2V0IHRoZSBxdWl0LXJlc3RvcmUKIAk7OyBwYXJhbWV0ZXIKIAkoc2V0 LXdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUgbmlsKSkKLSAgICAgIDs7 IFNlbGVjdCBvbGQgd2luZG93LgogICAgICAgOzsgSWYgdGhlIHByZXZpb3VzbHkgc2VsZWN0 ZWQgd2luZG93IGlzIHN0aWxsIGFsaXZlLCBzZWxlY3QgaXQuCiAgICAgICAod2luZG93LS1x dWl0LXJlc3RvcmUtc2VsZWN0LXdpbmRvdyBxdWl0LXJlc3RvcmUtMikpCiAgICAgICh0CkBA IC01MzU5LDEzICs1NDQwLDE0IEBAIHF1aXQtcmVzdG9yZS13aW5kb3cKICAgICAgIChpZiAo c3dpdGNoLXRvLXByZXYtYnVmZmVyIHdpbmRvdyBidXJ5LW9yLWtpbGwpCiAgICAgICAgICAg KHdoZW4gKGVxIGRlZGljYXRlZCAnc2lkZSkKICAgICAgICAgICAgIChzZXQtd2luZG93LWRl ZGljYXRlZC1wIHdpbmRvdyAnc2lkZSkpCi0gICAgICAgICh3aW5kb3ctLWRlbGV0ZSB3aW5k b3cgbmlsIChlcSBidXJ5LW9yLWtpbGwgJ2tpbGwpKSkpKQorICAgICAgICAod2luZG93LS1k ZWxldGUKKwkgd2luZG93IG5pbCAobWVtcSBidXJ5LW9yLWtpbGwgJyhraWxsIGtpbGxpbmcp KSkpKSkKICAgICA7OyBEZWFsIHdpdGggdGhlIGJ1ZmZlci4KICAgICAoY29uZAogICAgICAo KG5vdCAoYnVmZmVyLWxpdmUtcCBidWZmZXIpKSkKICAgICAgKChlcSBidXJ5LW9yLWtpbGwg J2tpbGwpCiAgICAgICAoa2lsbC1idWZmZXIgYnVmZmVyKSkKLSAgICAgKGJ1cnktb3Ita2ls bAorICAgICAoKGVxIGJ1cnktb3Ita2lsbCAnYnVyeSkKICAgICAgIChidXJ5LWJ1ZmZlci1p bnRlcm5hbCBidWZmZXIpKSkpKQogCiAoZGVmdW4gcXVpdC13aW5kb3cgKCZvcHRpb25hbCBr aWxsIHdpbmRvdykKQEAgLTU0MDYsMTEgKzU0ODgsMTggQEAgcXVpdC13aW5kb3dzLW9uCiAJ KGZyYW1lcyAoY29uZCAoKG5vdCBmcmFtZSkgdCkgKChlcSBmcmFtZSB0KSBuaWwpICh0IGZy YW1lKSkpKQogICAgIChkb2xpc3QgKHdpbmRvdyAod2luZG93LWxpc3QtMSBuaWwgbmlsIGZy YW1lcykpCiAgICAgICAod2hlbiAoZXEgKHdpbmRvdy1idWZmZXIgd2luZG93KSBidWZmZXIp Ci0JKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93IGtpbGwpKQorCShxdWl0LXJlc3RvcmUt d2luZG93CisJIHdpbmRvdyAoaWYga2lsbCAna2lsbGluZyAnYnVyeWluZykpKQogCiAgICAg ICAod2hlbiAod2luZG93LWxpdmUtcCB3aW5kb3cpCiAJOzsgVW5yZWNvcmQgQlVGRkVSIGlu IHRoaXMgd2luZG93LgotCSh1bnJlY29yZC13aW5kb3ctYnVmZmVyIHdpbmRvdyBidWZmZXIp KSkpKQorCSh1bnJlY29yZC13aW5kb3ctYnVmZmVyIHdpbmRvdyBidWZmZXIpKSkKKworICAg IDs7IERlYWwgd2l0aCBCVUZGRVItT1ItTkFNRS4KKyAgICAoY29uZAorICAgICAoKG5vdCAo YnVmZmVyLWxpdmUtcCBidWZmZXIpKSkKKyAgICAgKGtpbGwgKGtpbGwtYnVmZmVyIGJ1ZmZl cikpCisgICAgICh0IChidXJ5LWJ1ZmZlci1pbnRlcm5hbCBidWZmZXIpKSkpKQogDAogKGRl ZnVuIHdpbmRvdy0tY29tYmluYXRpb24tcmVzaXphYmxlIChwYXJlbnQgJm9wdGlvbmFsIGhv cml6b250YWwpCiAgICJSZXR1cm4gbnVtYmVyIG9mIHBpeGVscyByZWNvdmVyYWJsZSBmcm9t IGhlaWdodCBvZiB3aW5kb3cgUEFSRU5ULgpAQCAtNjcyMywzNiArNjgxMiwzOCBAQCBkaXNw bGF5LWJ1ZmZlci1yZWNvcmQtd2luZG93CiAKIElmIFRZUEUgaXMgYHJldXNlJywgQlVGRkVS IGlzIGRpZmZlcmVudCBmcm9tIHRoZSBvbmUgY3VycmVudGx5IGRpc3BsYXllZAogaW4gV0lO RE9XLCBhbmQgV0lORE9XIGFscmVhZHkgaGFzIGEgYHF1aXQtcmVzdG9yZScgcGFyYW1ldGVy LCBpbnN0YWxsIG9yCi11cGRhdGUgYSBgcXVpdC1yZXN0b3JlLXByZXYnIHBhcmFtZXRlciBm b3IgdGhpcyB3aW5kb3cgdGhhdCBhbGxvd3MgdG8KLXF1aXQgV0lORE9XIGluIGEgc2ltaWxh ciBmYXNoaW9uIGJ1dCByZW1lbWJlcnMgdGhlIHZlcnkgZmlyc3QgaW4gYQotc2VyaWVzIG9m IGJ1ZmZlciBkaXNwbGF5IG9wZXJhdGlvbnMgZm9yIHRoaXMgd2luZG93LiIKK3VwZGF0ZSBh IGBxdWl0LXJlc3RvcmUtcHJldicgcGFyYW1ldGVyIGZvciB0aGlzIHdpbmRvdy4gIFRoaXMg YWxsb3dzIGZvcgorcXVpdHRpbmcgV0lORE9XIGluIGEgc2ltaWxhciBmYXNoaW9uIGJ1dCBh bHNvIGtlZXBzIHRoZSB2ZXJ5IGZpcnN0CitgcXVpdC1yZXN0b3JlJyBwYXJhbWV0ZXIgc3Rv cmVkIGZvciB0aGlzIHdpbmRvdyBhcm91bmQuICBDb25zZXF1ZW50bHksCitXSU5ET1cgKG9y IGl0cyBmcmFtZSkgY2FuIGJlIGV2ZW50dWFsbHkgZGVsZXRlZCBieSBgcXVpdC1yZXN0b3Jl LXdpZG93JworaWYgdGhhdCBwYXJhbWV0ZXIncyBmb3VydGggZWxlbWVudCBlcXVhbHMgV0lO RE9XJ3MgYnVmZmVyLiIKICAgKGNvbmQKICAgICgoZXEgdHlwZSAncmV1c2UpCi0gICAgKGlm IChlcSAod2luZG93LWJ1ZmZlciB3aW5kb3cpIGJ1ZmZlcikKLQk7OyBXSU5ET1cgc2hvd3Mg QlVGRkVSIGFscmVhZHkuICBVcGRhdGUgV0lORE9XJ3MgcXVpdC1yZXN0b3JlCi0JOzsgcGFy YW1ldGVyLCBpZiBhbnkuCi0JKGxldCAoKHF1aXQtcmVzdG9yZSAod2luZG93LXBhcmFtZXRl ciB3aW5kb3cgJ3F1aXQtcmVzdG9yZSkpKQorICAgIChsZXQgKChxdWl0LXJlc3RvcmUgKHdp bmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUpKSkKKyAgICAgIChpZiAoZXEg KHdpbmRvdy1idWZmZXIgd2luZG93KSBidWZmZXIpCisJICA7OyBXSU5ET1cgc2hvd3MgQlVG RkVSIGFscmVhZHkuICBVcGRhdGUgV0lORE9XJ3MgcXVpdC1yZXN0b3JlCisJICA7OyBwYXJh bWV0ZXIsIGlmIGFueS4KIAkgICh3aGVuIChjb25zcCBxdWl0LXJlc3RvcmUpCiAJICAgIChz ZXRjYXIgcXVpdC1yZXN0b3JlICdzYW1lKQogCSAgICA7OyBUaGUgc2VsZWN0ZWQtd2luZG93 IG1pZ2h0IGhhdmUgY2hhbmdlZCBpbgogCSAgICA7OyBiZXR3ZWVuIChCdWcjMjAzNTMpLgog CSAgICAodW5sZXNzIChvciAoZXEgd2luZG93IChzZWxlY3RlZC13aW5kb3cpKQotICAgICAg ICAgICAgICAgICAgICAgICAgKGVxIHdpbmRvdyAobnRoIDIgcXVpdC1yZXN0b3JlKSkpCi0J ICAgICAgKHNldGNhciAoY2RkciBxdWl0LXJlc3RvcmUpIChzZWxlY3RlZC13aW5kb3cpKSkp KQotICAgICAgOzsgV0lORE9XIHNob3dzIGFub3RoZXIgYnVmZmVyLgotICAgICAgKHdpdGgt Y3VycmVudC1idWZmZXIgKHdpbmRvdy1idWZmZXIgd2luZG93KQotCShzZXQtd2luZG93LXBh cmFtZXRlcgotCSB3aW5kb3cgJ3F1aXQtcmVzdG9yZS1wcmV2Ci0JIChsaXN0ICdvdGhlcgot CSAgICAgICA7OyBBIHF1YWRydXBsZSBvZiBXSU5ET1cncyBidWZmZXIsIHN0YXJ0LCBwb2lu dCBhbmQgaGVpZ2h0LgotCSAgICAgICAobGlzdCAoY3VycmVudC1idWZmZXIpICh3aW5kb3ct c3RhcnQgd2luZG93KQotCQkgICAgIDs7IFByZXNlcnZlIHdpbmRvdy1wb2ludC1pbnNlcnRp b24tdHlwZSAoQnVnIzEyODU1KS4KLQkJICAgICAoY29weS1tYXJrZXIKLQkJICAgICAgKHdp bmRvdy1wb2ludCB3aW5kb3cpIHdpbmRvdy1wb2ludC1pbnNlcnRpb24tdHlwZSkKLQkJICAg ICAoaWYgKHdpbmRvdy1jb21iaW5lZC1wIHdpbmRvdykKLSAgICAgICAgICAgICAgICAgICAg ICAgICAod2luZG93LXRvdGFsLWhlaWdodCB3aW5kb3cpCi0gICAgICAgICAgICAgICAgICAg ICAgICh3aW5kb3ctdG90YWwtd2lkdGggd2luZG93KSkpCi0JICAgICAgIChzZWxlY3RlZC13 aW5kb3cpIGJ1ZmZlcikpKSkpCisJCQkoZXEgd2luZG93IChudGggMiBxdWl0LXJlc3RvcmUp KSkKKwkgICAgICAoc2V0Y2FyIChjZGRyIHF1aXQtcmVzdG9yZSkgKHNlbGVjdGVkLXdpbmRv dykpKSkKKwk7OyBXSU5ET1cgc2hvd3MgYW5vdGhlciBidWZmZXIuCisJKHdpdGgtY3VycmVu dC1idWZmZXIgKHdpbmRvdy1idWZmZXIgd2luZG93KQorCSAgKHNldC13aW5kb3ctcGFyYW1l dGVyCisJICAgd2luZG93IChpZiBxdWl0LXJlc3RvcmUgJ3F1aXQtcmVzdG9yZS1wcmV2ICdx dWl0LXJlc3RvcmUpCisJICAgKGxpc3QgJ290aGVyCisJCSA7OyBBIHF1YWRydXBsZSBvZiBX SU5ET1cncyBidWZmZXIsIHN0YXJ0LCBwb2ludCBhbmQgaGVpZ2h0LgorCQkgKGxpc3QgKGN1 cnJlbnQtYnVmZmVyKSAod2luZG93LXN0YXJ0IHdpbmRvdykKKwkJICAgICAgIDs7IFByZXNl cnZlIHdpbmRvdy1wb2ludC1pbnNlcnRpb24tdHlwZSAoQnVnIzEyODU1KS4KKwkJICAgICAg IChjb3B5LW1hcmtlcgorCQkJKHdpbmRvdy1wb2ludCB3aW5kb3cpIHdpbmRvdy1wb2ludC1p bnNlcnRpb24tdHlwZSkKKwkJICAgICAgIChpZiAod2luZG93LWNvbWJpbmVkLXAgd2luZG93 KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgKHdpbmRvdy10b3RhbC1oZWlnaHQgd2lu ZG93KQorCQkJICh3aW5kb3ctdG90YWwtd2lkdGggd2luZG93KSkpCisJCSAoc2VsZWN0ZWQt d2luZG93KSBidWZmZXIpKSkpKSkKICAgICgoZXEgdHlwZSAnd2luZG93KQogICAgIDs7IFdJ TkRPVyBoYXMgYmVlbiBjcmVhdGVkIG9uIGFuIGV4aXN0aW5nIGZyYW1lLgogICAgIChzZXQt d2luZG93LXBhcmFtZXRlcgpkaWZmIC0tZ2l0IGEvc3JjL2FsbG9jLmMgYi9zcmMvYWxsb2Mu YwppbmRleCA2NjZmNzdiZmNlMS4uYjk1NTY1MWY1YzAgMTAwNjQ0Ci0tLSBhL3NyYy9hbGxv Yy5jCisrKyBiL3NyYy9hbGxvYy5jCkBAIC02OTk4LDMzICs2OTk4LDYgQEAgbWFya19mYWNl X2NhY2hlIChzdHJ1Y3QgZmFjZV9jYWNoZSAqYykKICAgICB9CiB9CiAKLS8qIFJlbW92ZSBr aWxsZWQgYnVmZmVycyBvciBpdGVtcyB3aG9zZSBjYXIgaXMgYSBraWxsZWQgYnVmZmVyIGZy b20KLSAgIExJU1QsIGFuZCBtYXJrIG90aGVyIGl0ZW1zLiAgUmV0dXJuIGNoYW5nZWQgTElT VCwgd2hpY2ggaXMgbWFya2VkLiAgKi8KLQotc3RhdGljIExpc3BfT2JqZWN0Ci1tYXJrX2Rp c2NhcmRfa2lsbGVkX2J1ZmZlcnMgKExpc3BfT2JqZWN0IGxpc3QpCi17Ci0gIExpc3BfT2Jq ZWN0IHRhaWwsICpwcmV2ID0gJmxpc3Q7Ci0KLSAgZm9yICh0YWlsID0gbGlzdDsgQ09OU1Ag KHRhaWwpICYmICFjb25zX21hcmtlZF9wIChYQ09OUyAodGFpbCkpOwotICAgICAgIHRhaWwg PSBYQ0RSICh0YWlsKSkKLSAgICB7Ci0gICAgICBMaXNwX09iamVjdCB0ZW0gPSBYQ0FSICh0 YWlsKTsKLSAgICAgIGlmIChDT05TUCAodGVtKSkKLQl0ZW0gPSBYQ0FSICh0ZW0pOwotICAg ICAgaWYgKEJVRkZFUlAgKHRlbSkgJiYgIUJVRkZFUl9MSVZFX1AgKFhCVUZGRVIgKHRlbSkp KQotCSpwcmV2ID0gWENEUiAodGFpbCk7Ci0gICAgICBlbHNlCi0JewotCSAgc2V0X2NvbnNf bWFya2VkIChYQ09OUyAodGFpbCkpOwotCSAgbWFya19vYmplY3QgKFhDQVIgKHRhaWwpKTsK LQkgIHByZXYgPSB4Y2RyX2FkZHIgKHRhaWwpOwotCX0KLSAgICB9Ci0gIG1hcmtfb2JqZWN0 ICh0YWlsKTsKLSAgcmV0dXJuIGxpc3Q7Ci19Ci0KIHN0YXRpYyB2b2lkCiBtYXJrX2ZyYW1l IChzdHJ1Y3QgTGlzcF9WZWN0b3IgKnB0cikKIHsKQEAgLTcwNzksMTUgKzcwNTIsNiBAQCBt YXJrX3dpbmRvdyAoc3RydWN0IExpc3BfVmVjdG9yICpwdHIpCiAgICAgICBtYXJrX2dseXBo X21hdHJpeCAody0+Y3VycmVudF9tYXRyaXgpOwogICAgICAgbWFya19nbHlwaF9tYXRyaXgg KHctPmRlc2lyZWRfbWF0cml4KTsKICAgICB9Ci0KLSAgLyogRmlsdGVyIG91dCBraWxsZWQg YnVmZmVycyBmcm9tIGJvdGggYnVmZmVyIGxpc3RzCi0gICAgIGluIGF0dGVtcHQgdG8gaGVs cCBHQyB0byByZWNsYWltIGtpbGxlZCBidWZmZXJzIGZhc3Rlci4KLSAgICAgV2UgY2FuIGRv IGl0IGVsc2V3aGVyZSBmb3IgbGl2ZSB3aW5kb3dzLCBidXQgdGhpcyBpcyB0aGUKLSAgICAg YmVzdCBwbGFjZSB0byBkbyBpdCBmb3IgZGVhZCB3aW5kb3dzLiAgKi8KLSAgd3NldF9wcmV2 X2J1ZmZlcnMKLSAgICAodywgbWFya19kaXNjYXJkX2tpbGxlZF9idWZmZXJzICh3LT5wcmV2 X2J1ZmZlcnMpKTsKLSAgd3NldF9uZXh0X2J1ZmZlcnMKLSAgICAodywgbWFya19kaXNjYXJk X2tpbGxlZF9idWZmZXJzICh3LT5uZXh0X2J1ZmZlcnMpKTsKIH0KIAogLyogRW50cnkgb2Yg dGhlIG1hcmsgc3RhY2suICAqLwpkaWZmIC0tZ2l0IGEvc3JjL2J1ZmZlci5jIGIvc3JjL2J1 ZmZlci5jCmluZGV4IDc0NGIwZWY1NTQ4Li42ZWM0MGFmZjY0NiAxMDA2NDQKLS0tIGEvc3Jj L2J1ZmZlci5jCisrKyBiL3NyYy9idWZmZXIuYwpAQCAtMjAxMiw2ICsyMDEyLDEzIEBAIERF RlVOICgia2lsbC1idWZmZXIiLCBGa2lsbF9idWZmZXIsIFNraWxsX2J1ZmZlciwgMCwgMSwg ImJLaWxsIGJ1ZmZlcjogIiwKICAgICAgYnVmZmVyIChidWcjMTAxMTQpLiAgKi8KICAgcmVw bGFjZV9idWZmZXJfaW5fd2luZG93cyAoYnVmZmVyKTsKIAorICAvKiBGb3IgZGVhZCB3aW5k b3dzIHRoYXQgaGF2ZSBub3QgYmVlbiBjb2xsZWN0ZWQgeWV0LCByZW1vdmUgdGhpcworICAg ICBidWZmZXIgZnJvbSB0aG9zZSB3aW5kb3dzJyBsaXN0cyBvZiBwcmV2aW91c2x5IGFuZCBu ZXh0IHNob3duCisgICAgIGJ1ZmZlcnMgYW5kIHJlbW92ZSBhbnkgJ3F1aXQtcmVzdG9yZScg b3IgJ3F1aXQtcmVzdG9yZS1wcmV2JworICAgICBwYXJhbWV0ZXJzIG1lbnRpb25pbmcgdGhl IGJ1ZmZlci4gICovCisgIGlmIChYRklYTlVNIChCVkFSIChiLCBkaXNwbGF5X2NvdW50KSkg PiAwKQorICAgIHdpbmRvd19kaXNjYXJkX2J1ZmZlcl9mcm9tX2RlYWRfd2luZG93cyAoYnVm ZmVyKTsKKwogICAvKiBFeGl0IGlmIHJlcGxhY2luZyB0aGUgYnVmZmVyIGluIHdpbmRvd3Mg aGFzIGtpbGxlZCBvdXIgYnVmZmVyLiAgKi8KICAgaWYgKCFCVUZGRVJfTElWRV9QIChiKSkK ICAgICByZXR1cm4gUXQ7CmRpZmYgLS1naXQgYS9zcmMvd2luZG93LmMgYi9zcmMvd2luZG93 LmMKaW5kZXggZmYyOGJhYzUzMDYuLmRkMGFiZTg0ZmRmIDEwMDY0NAotLS0gYS9zcmMvd2lu ZG93LmMKKysrIGIvc3JjL3dpbmRvdy5jCkBAIC0zMjc3LDYgKzMyNzcsOTAgQEAgd2luZG93 X3BpeGVsX3RvX3RvdGFsIChMaXNwX09iamVjdCBmcmFtZSwgTGlzcF9PYmplY3QgaG9yaXpv bnRhbCkKIH0KIAogCisvKiBSZW1vdmUgZmlyc3Qgb2NjdXJyZW5jZSBvZiBlbGVtZW50IHdo b3NlIGNhciBpcyBCVUZGRVIgZnJvbSBBTElTVC4KKyAgIFJldHVybiBjaGFuZ2VkIEFMSVNU LiAgKi8KK3N0YXRpYyBMaXNwX09iamVjdAord2luZG93X2Rpc2NhcmRfYnVmZmVyX2Zyb21f YWxpc3QgKExpc3BfT2JqZWN0IGJ1ZmZlciwgTGlzcF9PYmplY3QgYWxpc3QpCit7CisgIExp c3BfT2JqZWN0IHRhaWwsICpwcmV2ID0gJmFsaXN0OworCisgIGZvciAodGFpbCA9IGFsaXN0 OyBDT05TUCAodGFpbCk7IHRhaWwgPSBYQ0RSICh0YWlsKSkKKyAgICB7CisgICAgICBMaXNw X09iamVjdCB0ZW0gPSBYQ0FSICh0YWlsKTsKKworICAgICAgdGVtID0gWENBUiAodGVtKTsK KworICAgICAgaWYgKEVRICh0ZW0sIGJ1ZmZlcikpCisJeworCSAgKnByZXYgPSBYQ0RSICh0 YWlsKTsKKwkgIGJyZWFrOworCX0KKyAgICAgIGVsc2UKKwlwcmV2ID0geGNkcl9hZGRyICh0 YWlsKTsKKyAgICB9CisKKyAgcmV0dXJuIGFsaXN0OworfQorCisvKiBSZW1vdmUgZmlyc3Qg b2NjdXJyZW5jZSBvZiBCVUZGRVIgZnJvbSBMSVNULiAgUmV0dXJuIGNoYW5nZWQKKyAgIExJ U1QuICAqLworc3RhdGljIExpc3BfT2JqZWN0Cit3aW5kb3dfZGlzY2FyZF9idWZmZXJfZnJv bV9saXN0IChMaXNwX09iamVjdCBidWZmZXIsIExpc3BfT2JqZWN0IGxpc3QpCit7CisgIExp c3BfT2JqZWN0IHRhaWwsICpwcmV2ID0gJmxpc3Q7CisKKyAgZm9yICh0YWlsID0gbGlzdDsg Q09OU1AgKHRhaWwpOyB0YWlsID0gWENEUiAodGFpbCkpCisgICAgeworICAgICAgaWYgKEVR IChYQ0FSICh0YWlsKSwgYnVmZmVyKSkKKwl7CisJICAqcHJldiA9IFhDRFIgKHRhaWwpOwor CSAgYnJlYWs7CisJfQorICAgICAgZWxzZQorCXByZXYgPSB4Y2RyX2FkZHIgKHRhaWwpOwor ICAgIH0KKworICByZXR1cm4gbGlzdDsKK30KKworc3RhdGljIHZvaWQKK3dpbmRvd19kaXNj YXJkX2J1ZmZlcl9mcm9tX2RlYWRfd2luZG93IChMaXNwX09iamVjdCBidWZmZXIsIExpc3Bf T2JqZWN0IHdpbmRvdykKK3sKKyAgc3RydWN0IHdpbmRvdyAqdyA9IFhXSU5ET1cgKHdpbmRv dyk7CisgIExpc3BfT2JqZWN0IHF1aXRfcmVzdG9yZSA9IHdpbmRvd19wYXJhbWV0ZXIgKHcs IFFxdWl0X3Jlc3RvcmUpOworICBMaXNwX09iamVjdCBxdWl0X3Jlc3RvcmVfcHJldiA9IHdp bmRvd19wYXJhbWV0ZXIgKHcsIFFxdWl0X3Jlc3RvcmVfcHJldik7CisgIExpc3BfT2JqZWN0 IHF1YWQ7CisKKyAgd3NldF9wcmV2X2J1ZmZlcnMKKyAgICAodywgd2luZG93X2Rpc2NhcmRf YnVmZmVyX2Zyb21fYWxpc3QgKGJ1ZmZlciwgdy0+cHJldl9idWZmZXJzKSk7CisgIHdzZXRf bmV4dF9idWZmZXJzCisgICAgKHcsIHdpbmRvd19kaXNjYXJkX2J1ZmZlcl9mcm9tX2xpc3Qg KGJ1ZmZlciwgdy0+bmV4dF9idWZmZXJzKSk7CisKKyAgaWYgKEVRIChidWZmZXIsIEZudGgg KG1ha2VfZml4bnVtICgzKSwgcXVpdF9yZXN0b3JlX3ByZXYpKQorICAgICAgfHwgKENPTlNQ IChxdWFkID0gRmNhciAoRmNkciAocXVpdF9yZXN0b3JlX3ByZXYpKSkKKwkgICYmIEVRIChG Y2FyIChxdWFkKSwgYnVmZmVyKSkpCisgICAgRnNldF93aW5kb3dfcGFyYW1ldGVyICh3aW5k b3csIFFxdWl0X3Jlc3RvcmVfcHJldiwgUW5pbCk7CisKKyAgaWYgKEVRIChidWZmZXIsIEZu dGggKG1ha2VfZml4bnVtICgzKSwgcXVpdF9yZXN0b3JlKSkKKyAgICAgIHx8IChDT05TUCAo cXVhZCA9IEZjYXIgKEZjZHIgKHF1aXRfcmVzdG9yZSkpKQorCSAgJiYgRVEgKEZjYXIgKHF1 YWQpLCBidWZmZXIpKSkKKyAgICB7CisgICAgICBGc2V0X3dpbmRvd19wYXJhbWV0ZXIgKHdp bmRvdywgUXF1aXRfcmVzdG9yZSwKKwkJCSAgICAgd2luZG93X3BhcmFtZXRlciAodywgUXF1 aXRfcmVzdG9yZV9wcmV2KSk7CisgICAgICBGc2V0X3dpbmRvd19wYXJhbWV0ZXIgKHdpbmRv dywgUXF1aXRfcmVzdG9yZV9wcmV2LCBRbmlsKTsKKyAgICB9Cit9CisKK3ZvaWQKK3dpbmRv d19kaXNjYXJkX2J1ZmZlcl9mcm9tX2RlYWRfd2luZG93cyAoTGlzcF9PYmplY3QgYnVmZmVy KQoreworICBzdHJ1Y3QgTGlzcF9IYXNoX1RhYmxlICpoID0gWEhBU0hfVEFCTEUgKHdpbmRv d19kZWFkX3dpbmRvd3NfdGFibGUpOworCisgIERPSEFTSCAoaCwgaywgdikKKyAgICB3aW5k b3dfZGlzY2FyZF9idWZmZXJfZnJvbV9kZWFkX3dpbmRvdyAoYnVmZmVyLCB2KTsKK30KKwor CiBERUZVTiAoImRlbGV0ZS1vdGhlci13aW5kb3dzLWludGVybmFsIiwgRmRlbGV0ZV9vdGhl cl93aW5kb3dzX2ludGVybmFsLAogICAgICAgIFNkZWxldGVfb3RoZXJfd2luZG93c19pbnRl cm5hbCwgMCwgMiwgIiIsCiAgICAgICAgZG9jOiAvKiBNYWtlIFdJTkRPVyBmaWxsIGl0cyBm cmFtZS4KQEAgLTQ0MDIsNiArNDQ4NiwxMCBAQCBtYWtlX3BhcmVudF93aW5kb3cgKExpc3Bf T2JqZWN0IHdpbmRvdywgYm9vbCBob3JmbGFnKQogICB3c2V0X2J1ZmZlciAocCwgUW5pbCk7 CiAgIHdzZXRfY29tYmluYXRpb24gKHAsIGhvcmZsYWcsIHdpbmRvdyk7CiAgIHdzZXRfY29t YmluYXRpb25fbGltaXQgKHAsIFFuaWwpOworICAvKiBSZXNldCBhbnkgcHJldmlvdXMgYW5k IG5leHQgYnVmZmVycyBvZiBwIHdoaWNoIGhhdmUgYmVlbiBpbnN0YWxsZWQKKyAgICAgYnkg dGhlIG1lbWNweSBhYm92ZS4gICovCisgIHdzZXRfcHJldl9idWZmZXJzIChwLCBRbmlsKTsK KyAgd3NldF9uZXh0X2J1ZmZlcnMgKHAsIFFuaWwpOwogICB3c2V0X3dpbmRvd19wYXJhbWV0 ZXJzIChwLCBRbmlsKTsKIH0KIApAQCAtNDQyNiwxMCArNDUxNCw2IEBAIG1ha2Vfd2luZG93 ICh2b2lkKQogICB3c2V0X3ZlcnRpY2FsX3Njcm9sbF9iYXJfdHlwZSAodywgUXQpOwogICB3 c2V0X2hvcml6b250YWxfc2Nyb2xsX2Jhcl90eXBlICh3LCBRdCk7CiAgIHdzZXRfY3Vyc29y X3R5cGUgKHcsIFF0KTsKLSAgLyogVGhlc2UgTGlzcCBmaWVsZHMgYXJlIG1hcmtlZCBzcGVj aWFsbHkgc28gdGhleSdyZSBub3Qgc2V0IHRvIG5pbCBieQotICAgICBhbGxvY2F0ZV93aW5k b3cuICAqLwotICB3c2V0X3ByZXZfYnVmZmVycyAodywgUW5pbCk7Ci0gIHdzZXRfbmV4dF9i dWZmZXJzICh3LCBRbmlsKTsKIAogICAvKiBJbml0aWFsaXplIG5vbi1MaXNwIGRhdGEuICBO b3RlIHRoYXQgYWxsb2NhdGVfd2luZG93IHplcm9lcyBvdXQgYWxsCiAgICAgIG5vbi1MaXNw IGRhdGEsIHNvIGRvIGl0IG9ubHkgZm9yIHNsb3RzIHdoaWNoIHNob3VsZCBub3QgYmUgemVy by4gICovCkBAIC01MjUyLDYgKzUzMzYsMTEgQEAgREVGVU4gKCJkZWxldGUtd2luZG93LWlu dGVybmFsIiwgRmRlbGV0ZV93aW5kb3dfaW50ZXJuYWwsIFNkZWxldGVfd2luZG93X2ludGVy bmEKIAkgIHVuY2hhaW5fbWFya2VyIChYTUFSS0VSICh3LT5vbGRfcG9pbnRtKSk7CiAJICB1 bmNoYWluX21hcmtlciAoWE1BUktFUiAody0+c3RhcnQpKTsKIAkgIHdzZXRfYnVmZmVyICh3 LCBRbmlsKTsKKwkgIC8qIEFkZCBXSU5ET1cgdG8gdGFibGUgb2YgZGVhZCB3aW5kb3dzIHNv IHdoZW4ga2lsbGluZyBhIGJ1ZmZlcgorCSAgICAgV0lORE9XIG1lbnRpb25zLCBhbGwgcmVm ZXJlbmNlcyB0byB0aGF0IGJ1ZmZlciBjYW4gYmUgcmVtb3ZlZAorCSAgICAgYW5kIHRoZSBi dWZmZXIgYmUgY29sbGVjdGVkLiAgKi8KKwkgIEZwdXRoYXNoIChtYWtlX2ZpeG51bSAody0+ c2VxdWVuY2VfbnVtYmVyKSwKKwkJICAgIHdpbmRvdywgd2luZG93X2RlYWRfd2luZG93c190 YWJsZSk7CiAJfQogCiAgICAgICBpZiAoTklMUCAocy0+cHJldikgJiYgTklMUCAocy0+bmV4 dCkpCkBAIC03MzU2LDYgKzc0NDUsMTAgQEAgREVGVU4gKCJzZXQtd2luZG93LWNvbmZpZ3Vy YXRpb24iLCBGc2V0X3dpbmRvd19jb25maWd1cmF0aW9uLAogCQl9CiAJICAgIH0KIAorCSAg LyogUmVtb3ZlIHdpbmRvdyBmcm9tIHRoZSB0YWJsZSBvZiBkZWFkIHdpbmRvd3MuICAqLwor CSAgRnJlbWhhc2ggKG1ha2VfZml4bnVtICh3LT5zZXF1ZW5jZV9udW1iZXIpLAorCQkgICAg d2luZG93X2RlYWRfd2luZG93c190YWJsZSk7CisKIAkgIGlmICgoTklMUCAoZG9udF9zZXRf bWluaXdpbmRvdykgfHwgIU1JTklfV0lORE9XX1AgKHcpKQogCSAgICAgICYmIEJVRkZFUlAg KHAtPmJ1ZmZlcikgJiYgQlVGRkVSX0xJVkVfUCAoWEJVRkZFUiAocC0+YnVmZmVyKSkpCiAJ ICAgIC8qIElmIHNhdmVkIGJ1ZmZlciBpcyBhbGl2ZSwgaW5zdGFsbCBpdCwgdW5sZXNzIGl0 J3MgYQpAQCAtNzU4NSw2ICs3Njc4LDExIEBAIGRlbGV0ZV9hbGxfY2hpbGRfd2luZG93cyAo TGlzcF9PYmplY3Qgd2luZG93KQogCSBwb3NzaWJsZSByZXN1cnJlY3Rpb24gaW4gRnNldF93 aW5kb3dfY29uZmlndXJhdGlvbi4gICovCiAgICAgICB3c2V0X2NvbWJpbmF0aW9uX2xpbWl0 ICh3LCB3LT5jb250ZW50cyk7CiAgICAgICB3c2V0X2J1ZmZlciAodywgUW5pbCk7CisgICAg ICAvKiBBZGQgV0lORE9XIHRvIHRhYmxlIG9mIGRlYWQgd2luZG93cyBzbyB3aGVuIGtpbGxp bmcgYSBidWZmZXIKKwkgV0lORE9XIG1lbnRpb25zLCBhbGwgcmVmZXJlbmNlcyB0byB0aGF0 IGJ1ZmZlciBjYW4gYmUgcmVtb3ZlZAorCSBhbmQgdGhlIGJ1ZmZlciBiZSBjb2xsZWN0ZWQu ICAqLworICAgICAgRnB1dGhhc2ggKG1ha2VfZml4bnVtICh3LT5zZXF1ZW5jZV9udW1iZXIp LAorCQl3aW5kb3csIHdpbmRvd19kZWFkX3dpbmRvd3NfdGFibGUpOwogICAgIH0KIAogICBW d2luZG93X2xpc3QgPSBRbmlsOwpAQCAtODU5NCw2ICs4NjkyLDggQEAgc3ltc19vZl93aW5k b3cgKHZvaWQpCiAgIERFRlNZTSAoUWNvbmZpZ3VyYXRpb24sICJjb25maWd1cmF0aW9uIik7 CiAgIERFRlNZTSAoUWRlbGV0ZSwgImRlbGV0ZSIpOwogICBERUZTWU0gKFFkZWRpY2F0ZWQs ICJkZWRpY2F0ZWQiKTsKKyAgREVGU1lNIChRcXVpdF9yZXN0b3JlLCAicXVpdC1yZXN0b3Jl Iik7CisgIERFRlNZTSAoUXF1aXRfcmVzdG9yZV9wcmV2LCAicXVpdC1yZXN0b3JlLXByZXYi KTsKIAogICBERUZWQVJfTElTUCAoInRlbXAtYnVmZmVyLXNob3ctZnVuY3Rpb24iLCBWdGVt cF9idWZmZXJfc2hvd19mdW5jdGlvbiwKIAkgICAgICAgZG9jOiAvKiBOb24tbmlsIG1lYW5z IGNhbGwgYXMgZnVuY3Rpb24gdG8gZGlzcGxheSBhIGhlbHAgYnVmZmVyLgpAQCAtODkxNyw2 ICs5MDE3LDE3IEBAIHN5bXNfb2Zfd2luZG93ICh2b2lkKQogZGlzcGxheWVkIGFmdGVyIGEg c2Nyb2xsaW5nIG9wZXJhdGlvbiB0byBiZSBzb21ld2hhdCBpbmFjY3VyYXRlLiAgKi8pOwog ICBmYXN0X2J1dF9pbXByZWNpc2Vfc2Nyb2xsaW5nID0gZmFsc2U7CiAKKyAgREVGVkFSX0xJ U1AgKCJ3aW5kb3ctZGVhZC13aW5kb3dzLXRhYmxlIiwgd2luZG93X2RlYWRfd2luZG93c190 YWJsZSwKKyAgICBkb2M6IC8qIEhhc2ggdGFibGUgb2YgZGVhZCB3aW5kb3dzLgorRWFjaCBl bnRyeSBpbiB0aGlzIHRhYmxlIG1hcHMgYSB3aW5kb3cgbnVtYmVyIHRvIGEgd2luZG93IG9i amVjdC4KK0VudHJpZXMgYXJlIGFkZGVkIGJ5IGBkZWxldGUtd2luZG93LWludGVybmFsJyBh bmQgYXJlIHJlbW92ZWQgYnkgdGhlCitnYXJiYWdlIGNvbGxlY3Rvci4KKworVGhpcyB0YWJs ZSBpcyBtYWludGFpbmVkIGJ5IGNvZGUgaW4gd2luZG93LmMgYW5kIGlzIG1hZGUgdmlzaWJs ZSBpbgorRWxpc3AgZm9yIHRlc3RpbmcgcHVycG9zZXMgb25seS4gICovKTsKKyAgd2luZG93 X2RlYWRfd2luZG93c190YWJsZQorICAgID0gQ0FMTE4gKEZtYWtlX2hhc2hfdGFibGUsIFFD d2Vha25lc3MsIFF0KTsKKwogICBkZWZzdWJyICgmU3NlbGVjdGVkX3dpbmRvdyk7CiAgIGRl ZnN1YnIgKCZTb2xkX3NlbGVjdGVkX3dpbmRvdyk7CiAgIGRlZnN1YnIgKCZTbWluaWJ1ZmZl cl93aW5kb3cpOwpkaWZmIC0tZ2l0IGEvc3JjL3dpbmRvdy5oIGIvc3JjL3dpbmRvdy5oCmlu ZGV4IDg2OTMyMTgxMjUyLi4zMzVlMGEzNDUzZSAxMDA2NDQKLS0tIGEvc3JjL3dpbmRvdy5o CisrKyBiL3NyYy93aW5kb3cuaApAQCAtMTQyLDYgKzE0MiwxMiBAQCAjZGVmaW5lIFdJTkRP V19IX0lOQ0xVREVECiAgICAgICAgYXMgd2VsbC4gICovCiAgICAgTGlzcF9PYmplY3QgY29u dGVudHM7CiAKKyAgICAvKiBBIGxpc3Qgb2YgPGJ1ZmZlciwgd2luZG93LXN0YXJ0LCB3aW5k b3ctcG9pbnQ+IHRyaXBsZXMgbGlzdGluZworICAgICAgIGJ1ZmZlcnMgcHJldmlvdXNseSBz aG93biBpbiB0aGlzIHdpbmRvdy4gICovCisgICAgTGlzcF9PYmplY3QgcHJldl9idWZmZXJz OworICAgIC8qIExpc3Qgb2YgYnVmZmVycyByZS1zaG93biBpbiB0aGlzIHdpbmRvdy4gICov CisgICAgTGlzcF9PYmplY3QgbmV4dF9idWZmZXJzOworCiAgICAgLyogVGhlIG9sZCBidWZm ZXIgb2YgdGhpcyB3aW5kb3csIHNldCB0byB0aGlzIHdpbmRvdydzIGJ1ZmZlciBieQogICAg ICAgIHJ1bl93aW5kb3dfY2hhbmdlX2Z1bmN0aW9ucyBldmVyeSB0aW1lIGl0IHNlZXMgdGhp cyB3aW5kb3cuCiAgICAgICAgVW51c2VkIGZvciBpbnRlcm5hbCB3aW5kb3dzLiAgKi8KQEAg LTIxOCwxNCArMjI0LDYgQEAgI2RlZmluZSBXSU5ET1dfSF9JTkNMVURFRAogICAgIHN0cnVj dCBnbHlwaF9tYXRyaXggKmN1cnJlbnRfbWF0cml4OwogICAgIHN0cnVjdCBnbHlwaF9tYXRy aXggKmRlc2lyZWRfbWF0cml4OwogCi0gICAgLyogVGhlIHR3byBMaXNwX09iamVjdCBmaWVs ZHMgYmVsb3cgYXJlIG1hcmtlZCBpbiBhIHNwZWNpYWwgd2F5LAotICAgICAgIHdoaWNoIGlz IHdoeSB0aGV5J3JlIHBsYWNlZCBhZnRlciBgY3VycmVudF9tYXRyaXgnLiAgKi8KLSAgICAv KiBBIGxpc3Qgb2YgPGJ1ZmZlciwgd2luZG93LXN0YXJ0LCB3aW5kb3ctcG9pbnQ+IHRyaXBs ZXMgbGlzdGluZwotICAgICAgIGJ1ZmZlcnMgcHJldmlvdXNseSBzaG93biBpbiB0aGlzIHdp bmRvdy4gICovCi0gICAgTGlzcF9PYmplY3QgcHJldl9idWZmZXJzOwotICAgIC8qIExpc3Qg b2YgYnVmZmVycyByZS1zaG93biBpbiB0aGlzIHdpbmRvdy4gICovCi0gICAgTGlzcF9PYmpl Y3QgbmV4dF9idWZmZXJzOwotCiAgICAgLyogTnVtYmVyIHNheWluZyBob3cgcmVjZW50bHkg d2luZG93IHdhcyBzZWxlY3RlZC4gICovCiAgICAgRU1BQ1NfSU5UIHVzZV90aW1lOwogCkBA IC0xMjI4LDYgKzEyMjYsNyBAQCAjZGVmaW5lIENIRUNLX0xJVkVfV0lORE9XKFdJTkRPVykJ CQkJXAogZXh0ZXJuIHZvaWQgd3NldF9idWZmZXIgKHN0cnVjdCB3aW5kb3cgKiwgTGlzcF9P YmplY3QpOwogZXh0ZXJuIGJvb2wgd2luZG93X291dGRhdGVkIChzdHJ1Y3Qgd2luZG93ICop OwogZXh0ZXJuIHB0cmRpZmZfdCB3aW5kb3dfcG9pbnQgKHN0cnVjdCB3aW5kb3cgKncpOwor ZXh0ZXJuIHZvaWQgd2luZG93X2Rpc2NhcmRfYnVmZmVyX2Zyb21fZGVhZF93aW5kb3dzIChM aXNwX09iamVjdCk7CiBleHRlcm4gdm9pZCBpbml0X3dpbmRvd19vbmNlICh2b2lkKTsKIGV4 dGVybiB2b2lkIGluaXRfd2luZG93ICh2b2lkKTsKIGV4dGVybiB2b2lkIHN5bXNfb2Zfd2lu ZG93ICh2b2lkKTsK --------------0cpMOBypjKdTdjfLu6e2lIGs--
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 16 Jul 2024 22:14:22 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jul 16 18:14:22 2024 Received: from localhost ([127.0.0.1]:34548 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sTqRC-0005kq-69 for submit <at> debbugs.gnu.org; Tue, 16 Jul 2024 18:14:22 -0400 Received: from thaodan.de ([185.216.177.71]:38468) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <bjorn.bidar@HIDDEN>) id 1sTqR9-0005kU-J4 for 59862 <at> debbugs.gnu.org; Tue, 16 Jul 2024 18:14:20 -0400 Received: from odin (dsl-trebng12-50dc75-154.dhcp.inet.fi [80.220.117.154]) by thaodan.de (Postfix) with ESMTPSA id 96491D00030; Wed, 17 Jul 2024 01:14:10 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=thaodan.de; s=mail; t=1721168050; bh=JkUCfw3/Iuujbfnmh21NeLuyyO7tsB5IxRhMqbbVY5Y=; h=From:To:Cc:Subject:In-Reply-To:References:Date; b=nv5sK/7GLyPMBoe9XhFyVZJBVlhN+PxH6WHKux/M/lPXbR2/XxIAI8nQ4aqJznuxG O2JigzzyWWx9Wp1LtbHS1zoturd4x0oHZyP+lotFNh1LGWeE9t0nYtIUFdVeajd9s0 eZy6Lw38QxClI6djGj2q4hnQN18JgriyFWcFXzKwJliHGF5E9Z7WHjHUuy6B1xwO2Y lNmqoQ79ricEhReyw+HqIT1Wt9ehEhz6yFwwcQU+Yq4r8ZfT5V8FZM8RRN75SqP3Jj 3+6uytSYP2ZMaujSikhDOHHjlylEMwOjJydGMbSnRy5ERaL0VT3UBsZbzAl7ta7PeP fDxwgPQwBGFNzXsvWRPVC5ncXqBse8n9LV8q3lOl0JIV7Webgia8o60qnLhEdG1UKm I3T8HOQFAdRA94PoVmwdl2FoPdaNUdvlWX1fAYrg8Yyc+bPTz3rMW66hknmwSPioJs c2hxSwUTPkYGlsQpPT584ercZL4v9NxQwABWlS1LD6mjjaKyws36YeDdsOiyU346Rj mMwWymWcBUuXuFYP3isMNAjOWtgqTmSsBCeAjsMZM/bB8hdNQURG2S/Eib3eeWQdm6 rJwz99Ug9r6jTTzrhZzjI6UL+G9H6IMwIxFgv+pDWG5lalP0iOvESvIlE8XPyYvOHi r0rErZ9LfT4maR1Dz9CESgCQ= From: =?utf-8?Q?Bj=C3=B6rn?= Bidar <bjorn.bidar@HIDDEN> To: martin rudalics via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <ee4e7e95-53d3-4b01-bd1a-ae2cd77352b2@HIDDEN> (martin rudalics via's message of "Tue, 16 Jul 2024 10:22:34 +0200") References: <86fsds8mlm.fsf@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <1fb1cc7a-b8ea-4d6d-ac6d-19abffef44f3@HIDDEN> <ee4e7e95-53d3-4b01-bd1a-ae2cd77352b2@HIDDEN> Autocrypt: addr=bjorn.bidar@HIDDEN; prefer-encrypt=nopreference; keydata= mDMEZNfpPhYJKwYBBAHaRw8BAQdACBEmr+0xwIIHZfIDlZmm7sa+lHHSb0g9FZrN6qE6ru60JUJq w7ZybiBCaWRhciA8Ympvcm4uYmlkYXJAdGhhb2Rhbi5kZT6IlgQTFgoAPgIbAwULCQgHAgIiAgYV CgkICwIEFgIDAQIeBwIXgBYhBFHxdut1RzAepymoq1wbdKFlHF9oBQJk1/YmAhkBAAoJEFwbdKFl HF9oB9cBAJoIIGQKXm4cpap+Flxc/EGnYl0123lcEyzuduqvlDT0AQC3OlFKm/OiqJ8IMTrzJRZ8 phFssTkSrrFXnM2jm5PYDoiTBBMWCgA7FiEEUfF263VHMB6nKairXBt0oWUcX2gFAmTX6T4CGwMF CwkIBwICIgIGFQoJCAsCBBYCAwECHgcCF4AACgkQXBt0oWUcX2hbCQEAtru7kvM8hi8zo6z9ux2h K+B5xViKuo7Z8K3IXuK5ugwA+wUfKzomzdBPhfxDsqLcEziGRxoyx0Q3ld9aermBUccHtBxCasO2 cm4gQmlkYXIgPG1lQHRoYW9kYW4uZGU+iJMEExYKADsCGwMFCwkIBwICIgIGFQoJCAsCBBYCAwEC HgcCF4AWIQRR8XbrdUcwHqcpqKtcG3ShZRxfaAUCZNf2FQAKCRBcG3ShZRxfaCzSAP4hZ7cSp0YN XYpcjHdsySh2MuBhhoPeLGXs+2kSiqBiOwD/TP8AgPEg/R+SI9GI9on7fBJJ0mp2IT8kZ2rhDOjg gA6IkwQTFgoAOxYhBFHxdut1RzAepymoq1wbdKFlHF9oBQJk1+ntAhsDBQsJCAcCAiICBhUKCQgL AgQWAgMBAh4HAheAAAoJEFwbdKFlHF9oBgwA/iQHwe0VL4Df4GGTYlNjMSHFlIkBmN4UfYGLYj3E TrOUAQC51M+M3cjsL8WHdpBz6VAo6df9d+rVwhQ9vQuFHqevArg4BGTX6T4SCisGAQQBl1UBBQEB B0Cbohc3JEfn005/cm0AOGjSsW1ZxAkgaoVNjbpqk4MgNAMBCAeIeAQYFgoAIBYhBFHxdut1RzAe pymoq1wbdKFlHF9oBQJk1+k+AhsMAAoJEFwbdKFlHF9ooHABAKGmrGBic/Vys3BBrOQiRB3Z7izO HwhqTRpAqFZtXS2nAQDZhp/5aYw1TZjTzkm1KVt9QiYnjd/MvxRE9iaY6x4mDbgzBGTX6T4WCSsG AQQB2kcPAQEHQAgRJq/tMcCCB2XyA5WZpu7GvpRx0m9IPRWazeqhOq7uiO8EGBYKACAWIQRR8Xbr dUcwHqcpqKtcG3ShZRxfaAUCZNf71AIbIgCBCRBcG3ShZRxfaHYgBBkWCgAdFiEEUfF263VHMB6n KairXBt0oWUcX2gFAmTX+9QACgkQXBt0oWUcX2jeSwD6AtWn0cuo8IF35YRo4o3cDRJnUfJnbvJy GxyCDThR+zYBAKG6/jdwmZkBQZKslnDAbMMd2WfiZZT5JW3IWC4EaKMO7HkBAKYPGZ3UbfkRvfFK S+pQ9CgtNfkSJQBtT1Ob7Y6nsacgAQCpyXN7yppmhW/oBgivITPy9Lkg+V4NK9WZYZCU9Q7LBA== Date: Wed, 17 Jul 2024 01:14:09 +0300 Message-ID: <871q3tc7da.fsf@> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 1.2 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: martin rudalics via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> writes: >> What about use cases where the frame was only spawned for that >> particular window? >> >> For a frame focused setup frames mostly contain only one window and >> don't close when the only window in [...] Content analysis details: (1.2 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -0.0 SPF_PASS SPF: sender matches SPF record 1.2 INVALID_MSGID Message-Id is not valid, according to RFC 2822 X-Debbugs-Envelope-To: 59862 Cc: martin rudalics <rudalics@HIDDEN>, 59862 <at> debbugs.gnu.org, juri@HIDDEN X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 0.2 (/) martin rudalics via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> writes: >> What about use cases where the frame was only spawned for that >> particular window? >> >> For a frame focused setup frames mostly contain only one window and >> don't close when the only window in it is killed > > Do you mean "window" or "buffer" here? C-x 0 in a frame containing only > one window gets you an "Attempt to delete minibuffer or sole ordinary > window" error. I suppose you meant "buffer" here. I meant window. Same as you explain further below in your message I call quit-window on a dedicate window the frame also dies with it. >> leaving a window with >> the scratch buffer around. > > Let's distinguish two different cases: If, after evaluating > > (custom-set-variables > '(display-buffer-alist '(("\\*info\\*" display-buffer-same-window))) > '(frame-auto-hide-function 'delete-frame)) > > you do C-x 5 2 then C-h i and finally q, the second frame will stay > around and show *scratch*. Alternatively, you can evaluate > > (custom-set-variables > '(display-buffer-alist '(("\\*info\\*" display-buffer-same-window)))) > > do C-x 5 2 then C-h i and finally C-u q which also kills the *info* > buffer. These are the behaviors needed for handling the Bug#12764 > scenario. > > If instead you evaluate > > (custom-set-variables > '(display-buffer-alist '(("\\*info\\*" display-buffer-pop-up-frame))) > '(frame-auto-hide-function 'delete-frame)) > > and then do C-h i followed by q, the second frame gets deleted. > Alternatively you can get the same visual behavior via > > (custom-set-variables > '(display-buffer-alist '(("\\*info\\*" display-buffer-pop-up-frame)))) > > followed by C-h i and C-u q where the latter also kills the *info* > buffer. > > In the thread of Bug#12764 I argued that deleting the frame would make > sense in the first scenario too. But then we would have to look into > the history of the last window on that frame to decide whether the > buffer it previously showed should be restored or not. Even if there is > no previous buffer for that window we should at least optionally allow > the frame to stay alive. > I very much agree with you on that point. I think if the window inside of a frame didn't contain any other buffer than the initial buffer and a new buffer that uses the same window there could be the argument that the window should die and thus the frame too.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 16 Jul 2024 22:14:26 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jul 16 18:14:26 2024 Received: from localhost ([127.0.0.1]:34550 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sTqRF-0005l0-KI for submit <at> debbugs.gnu.org; Tue, 16 Jul 2024 18:14:26 -0400 Received: from lists.gnu.org ([209.51.188.17]:39480) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <bjorn.bidar@HIDDEN>) id 1sTqRB-0005kj-4O for submit <at> debbugs.gnu.org; Tue, 16 Jul 2024 18:14:21 -0400 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 <bjorn.bidar@HIDDEN>) id 1sTqR8-0006jJ-2G for bug-gnu-emacs@HIDDEN; Tue, 16 Jul 2024 18:14:18 -0400 Received: from thaodan.de ([2a03:4000:4f:f15::1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <bjorn.bidar@HIDDEN>) id 1sTqR4-00020G-W2 for bug-gnu-emacs@HIDDEN; Tue, 16 Jul 2024 18:14:17 -0400 Received: from odin (dsl-trebng12-50dc75-154.dhcp.inet.fi [80.220.117.154]) by thaodan.de (Postfix) with ESMTPSA id 96491D00030; Wed, 17 Jul 2024 01:14:10 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=thaodan.de; s=mail; t=1721168050; bh=JkUCfw3/Iuujbfnmh21NeLuyyO7tsB5IxRhMqbbVY5Y=; h=From:To:Cc:Subject:In-Reply-To:References:Date; b=nv5sK/7GLyPMBoe9XhFyVZJBVlhN+PxH6WHKux/M/lPXbR2/XxIAI8nQ4aqJznuxG O2JigzzyWWx9Wp1LtbHS1zoturd4x0oHZyP+lotFNh1LGWeE9t0nYtIUFdVeajd9s0 eZy6Lw38QxClI6djGj2q4hnQN18JgriyFWcFXzKwJliHGF5E9Z7WHjHUuy6B1xwO2Y lNmqoQ79ricEhReyw+HqIT1Wt9ehEhz6yFwwcQU+Yq4r8ZfT5V8FZM8RRN75SqP3Jj 3+6uytSYP2ZMaujSikhDOHHjlylEMwOjJydGMbSnRy5ERaL0VT3UBsZbzAl7ta7PeP fDxwgPQwBGFNzXsvWRPVC5ncXqBse8n9LV8q3lOl0JIV7Webgia8o60qnLhEdG1UKm I3T8HOQFAdRA94PoVmwdl2FoPdaNUdvlWX1fAYrg8Yyc+bPTz3rMW66hknmwSPioJs c2hxSwUTPkYGlsQpPT584ercZL4v9NxQwABWlS1LD6mjjaKyws36YeDdsOiyU346Rj mMwWymWcBUuXuFYP3isMNAjOWtgqTmSsBCeAjsMZM/bB8hdNQURG2S/Eib3eeWQdm6 rJwz99Ug9r6jTTzrhZzjI6UL+G9H6IMwIxFgv+pDWG5lalP0iOvESvIlE8XPyYvOHi r0rErZ9LfT4maR1Dz9CESgCQ= From: =?utf-8?Q?Bj=C3=B6rn?= Bidar <bjorn.bidar@HIDDEN> To: martin rudalics via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <ee4e7e95-53d3-4b01-bd1a-ae2cd77352b2@HIDDEN> (martin rudalics via's message of "Tue, 16 Jul 2024 10:22:34 +0200") References: <86fsds8mlm.fsf@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <1fb1cc7a-b8ea-4d6d-ac6d-19abffef44f3@HIDDEN> <ee4e7e95-53d3-4b01-bd1a-ae2cd77352b2@HIDDEN> Autocrypt: addr=bjorn.bidar@HIDDEN; prefer-encrypt=nopreference; keydata= mDMEZNfpPhYJKwYBBAHaRw8BAQdACBEmr+0xwIIHZfIDlZmm7sa+lHHSb0g9FZrN6qE6ru60JUJq w7ZybiBCaWRhciA8Ympvcm4uYmlkYXJAdGhhb2Rhbi5kZT6IlgQTFgoAPgIbAwULCQgHAgIiAgYV CgkICwIEFgIDAQIeBwIXgBYhBFHxdut1RzAepymoq1wbdKFlHF9oBQJk1/YmAhkBAAoJEFwbdKFl HF9oB9cBAJoIIGQKXm4cpap+Flxc/EGnYl0123lcEyzuduqvlDT0AQC3OlFKm/OiqJ8IMTrzJRZ8 phFssTkSrrFXnM2jm5PYDoiTBBMWCgA7FiEEUfF263VHMB6nKairXBt0oWUcX2gFAmTX6T4CGwMF CwkIBwICIgIGFQoJCAsCBBYCAwECHgcCF4AACgkQXBt0oWUcX2hbCQEAtru7kvM8hi8zo6z9ux2h K+B5xViKuo7Z8K3IXuK5ugwA+wUfKzomzdBPhfxDsqLcEziGRxoyx0Q3ld9aermBUccHtBxCasO2 cm4gQmlkYXIgPG1lQHRoYW9kYW4uZGU+iJMEExYKADsCGwMFCwkIBwICIgIGFQoJCAsCBBYCAwEC HgcCF4AWIQRR8XbrdUcwHqcpqKtcG3ShZRxfaAUCZNf2FQAKCRBcG3ShZRxfaCzSAP4hZ7cSp0YN XYpcjHdsySh2MuBhhoPeLGXs+2kSiqBiOwD/TP8AgPEg/R+SI9GI9on7fBJJ0mp2IT8kZ2rhDOjg gA6IkwQTFgoAOxYhBFHxdut1RzAepymoq1wbdKFlHF9oBQJk1+ntAhsDBQsJCAcCAiICBhUKCQgL AgQWAgMBAh4HAheAAAoJEFwbdKFlHF9oBgwA/iQHwe0VL4Df4GGTYlNjMSHFlIkBmN4UfYGLYj3E TrOUAQC51M+M3cjsL8WHdpBz6VAo6df9d+rVwhQ9vQuFHqevArg4BGTX6T4SCisGAQQBl1UBBQEB B0Cbohc3JEfn005/cm0AOGjSsW1ZxAkgaoVNjbpqk4MgNAMBCAeIeAQYFgoAIBYhBFHxdut1RzAe pymoq1wbdKFlHF9oBQJk1+k+AhsMAAoJEFwbdKFlHF9ooHABAKGmrGBic/Vys3BBrOQiRB3Z7izO HwhqTRpAqFZtXS2nAQDZhp/5aYw1TZjTzkm1KVt9QiYnjd/MvxRE9iaY6x4mDbgzBGTX6T4WCSsG AQQB2kcPAQEHQAgRJq/tMcCCB2XyA5WZpu7GvpRx0m9IPRWazeqhOq7uiO8EGBYKACAWIQRR8Xbr dUcwHqcpqKtcG3ShZRxfaAUCZNf71AIbIgCBCRBcG3ShZRxfaHYgBBkWCgAdFiEEUfF263VHMB6n KairXBt0oWUcX2gFAmTX+9QACgkQXBt0oWUcX2jeSwD6AtWn0cuo8IF35YRo4o3cDRJnUfJnbvJy GxyCDThR+zYBAKG6/jdwmZkBQZKslnDAbMMd2WfiZZT5JW3IWC4EaKMO7HkBAKYPGZ3UbfkRvfFK S+pQ9CgtNfkSJQBtT1Ob7Y6nsacgAQCpyXN7yppmhW/oBgivITPy9Lkg+V4NK9WZYZCU9Q7LBA== Date: Wed, 17 Jul 2024 01:14:09 +0300 Message-ID: <871q3tc7da.fsf@> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2a03:4000:4f:f15::1; envelope-from=bjorn.bidar@HIDDEN; helo=thaodan.de X-Spam_score_int: -14 X-Spam_score: -1.5 X-Spam_bar: - X-Spam_report: (-1.5 / 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, INVALID_MSGID=0.568, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -0.2 (/) X-Debbugs-Envelope-To: submit Cc: martin rudalics <rudalics@HIDDEN>, 59862 <at> debbugs.gnu.org, juri@HIDDEN X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.2 (-) martin rudalics via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> writes: >> What about use cases where the frame was only spawned for that >> particular window? >> >> For a frame focused setup frames mostly contain only one window and >> don't close when the only window in it is killed > > Do you mean "window" or "buffer" here? C-x 0 in a frame containing only > one window gets you an "Attempt to delete minibuffer or sole ordinary > window" error. I suppose you meant "buffer" here. I meant window. Same as you explain further below in your message I call quit-window on a dedicate window the frame also dies with it. >> leaving a window with >> the scratch buffer around. > > Let's distinguish two different cases: If, after evaluating > > (custom-set-variables > '(display-buffer-alist '(("\\*info\\*" display-buffer-same-window))) > '(frame-auto-hide-function 'delete-frame)) > > you do C-x 5 2 then C-h i and finally q, the second frame will stay > around and show *scratch*. Alternatively, you can evaluate > > (custom-set-variables > '(display-buffer-alist '(("\\*info\\*" display-buffer-same-window)))) > > do C-x 5 2 then C-h i and finally C-u q which also kills the *info* > buffer. These are the behaviors needed for handling the Bug#12764 > scenario. > > If instead you evaluate > > (custom-set-variables > '(display-buffer-alist '(("\\*info\\*" display-buffer-pop-up-frame))) > '(frame-auto-hide-function 'delete-frame)) > > and then do C-h i followed by q, the second frame gets deleted. > Alternatively you can get the same visual behavior via > > (custom-set-variables > '(display-buffer-alist '(("\\*info\\*" display-buffer-pop-up-frame)))) > > followed by C-h i and C-u q where the latter also kills the *info* > buffer. > > In the thread of Bug#12764 I argued that deleting the frame would make > sense in the first scenario too. But then we would have to look into > the history of the last window on that frame to decide whether the > buffer it previously showed should be restored or not. Even if there is > no previous buffer for that window we should at least optionally allow > the frame to stay alive. > I very much agree with you on that point. I think if the window inside of a frame didn't contain any other buffer than the initial buffer and a new buffer that uses the same window there could be the argument that the window should die and thus the frame too.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 16 Jul 2024 08:22:51 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jul 16 04:22:51 2024 Received: from localhost ([127.0.0.1]:60924 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sTdSU-0003Z3-MS for submit <at> debbugs.gnu.org; Tue, 16 Jul 2024 04:22:51 -0400 Received: from mout.gmx.net ([212.227.15.19]:49419) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sTdSS-0003Yq-59 for 59862 <at> debbugs.gnu.org; Tue, 16 Jul 2024 04:22:49 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1721118159; x=1721722959; i=rudalics@HIDDEN; bh=ygpYlppB5HhVCRMnG3MPwCjQwpYhTW0+IXQ/+ZuEW+k=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=mxBpbgx5VoOfbIUvc6Z+H5VeKf2zv6eTUF14qu3j8T5QZpI/C13QAtV01ZsOC/YX 6jFLBu5jD9ZV0GnRy1m8qg7+eH0uh7McV3oDVq4KfoMOaDhIWsiyyMy2cXfBD1tRQ qXF8mP1z08prlTGaOgqWns6199uIxQdM6/LQwWA2yv2DfqCOuWDcL4ktQeIwoEQCM z4QvoXQkuAvFNnzlXfwX9vZjLK5yEdNV56ACgWKbrw764uSNh/j1QWJhol59utf/6 dkPg+h4bEwFHRO8X0Mj6xlZovB7ngNdbWmOvoZ10Hw0/FQMSjw33uPqBYCgmxQJt6 XX+uDl0uDUyak+sYFg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([46.125.249.102]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MDQeK-1sakTA03ny-002Aig; Tue, 16 Jul 2024 10:22:38 +0200 Message-ID: <ee4e7e95-53d3-4b01-bd1a-ae2cd77352b2@HIDDEN> Date: Tue, 16 Jul 2024 10:22:34 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: =?UTF-8?Q?Bj=C3=B6rn_Bidar?= <bjorn.bidar@HIDDEN>, martin rudalics via Bug reports for GNU "Emacs, " the Swiss army knife of text editors <bug-gnu-emacs@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <1fb1cc7a-b8ea-4d6d-ac6d-19abffef44f3@HIDDEN> <87frs9kgve.fsf@> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <87frs9kgve.fsf@> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:FiIVgqZdbamrxEH/JE1d7rT99w4pw3n6Wv5EX9CgjcEb0agG1ir AzHyHT+QH+GXd5CxGSoGISAGwhSTl3AVBbCXsoDn9Ku0smiZXjfyCG68/87VSYXs1Gt9vzb Cb2ccuowfpGI78yxu6pM8KkZD7YgY2+vqrwKlsWwhicZF3Z5IOJLp25VcQa8s1hgjuYptDI AvXrIM6J+jKQkmZXzpqtQ== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:z0ymmL1P0Qc=;zIjQWwrUIapC4YxZPgZgRPpzBbY ZS4EWi+3iumQnuFiWCSZgOyhCwNH0nPfZu3kxrW1zjp58opj+IYLYYStViW3AKq3OepC7dKUQ RZNjthA018AoY2ItUsV3IX0HFbRj0AtSfl/YvHbBU2fXam8LCjR++sHt+JYeooKg7IoLPrQAA x349qWiD1Ig52jX0rAEsqkvqyroLGWNsrk+Z4OazEDIYuR8M1+MKV+b0M+Uf5U4nL/q0rZRgd isGoqXrRvLamgjQolDGl7ecQfUjF2OdsggdmVnhmCQ/eYLNC0v60inP4a8M4XWa57G0pT7ujG CRwcOkV8HIDuMu6H26Eexpqn6rkPFxMyipT4zciEedxXqt+A2F19XbRS/UDzeUWo1vCiXhvEo Esmxz/QJ1JUeDMDMX7yoXbC0gHlI/M55OVByj245PmHigYImZsfYO1b1uyPnUk431tBlKNGp3 t9wgECbAt2i2W7+o4aZ8SbeGXmthf/YM4oMoP86fodByKqVbViL07F9y1KDCxj/rWyM+GoCSg Z6riEYkENtNdp3gBuqdzmc0Mdq0ulLinhjBi1n9/4rIZDG+vX3LkKibrjK31xmSi+RzkCRCmS nRUZOXFRjxub+9GG+gwJ5cAJHuxCeUG1d9j67qhCQMzRaFMq/X+MFPywFQv/5AEAMZcThohQF 54pjG8dMNMOf2506PsMfcvn/EFupstcCsVv2WWF76M3ti8gaOO5L4eqxv7Qd7x+n6qUAiC1wk h5oq1r0rgUmhg5lMSBaErfCImhES7SppS35B2anOtOWul0927KmGhGRpnp9wHvZYYpuFyDFB+ koCjl78orrT5/I0x/Wcl5BZR+qrNifmAjqauBvvd3VGfM= X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org, Juri Linkov <juri@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > What about use cases where the frame was only spawned for that > particular window? > > For a frame focused setup frames mostly contain only one window and > don't close when the only window in it is killed Do you mean "window" or "buffer" here? C-x 0 in a frame containing only one window gets you an "Attempt to delete minibuffer or sole ordinary window" error. I suppose you meant "buffer" here. > leaving a window with > the scratch buffer around. Let's distinguish two different cases: If, after evaluating (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-same-window))) '(frame-auto-hide-function 'delete-frame)) you do C-x 5 2 then C-h i and finally q, the second frame will stay around and show *scratch*. Alternatively, you can evaluate (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-same-window)))) do C-x 5 2 then C-h i and finally C-u q which also kills the *info* buffer. These are the behaviors needed for handling the Bug#12764 scenario. If instead you evaluate (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-pop-up-frame))) '(frame-auto-hide-function 'delete-frame)) and then do C-h i followed by q, the second frame gets deleted. Alternatively you can get the same visual behavior via (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-pop-up-frame)))) followed by C-h i and C-u q where the latter also kills the *info* buffer. In the thread of Bug#12764 I argued that deleting the frame would make sense in the first scenario too. But then we would have to look into the history of the last window on that frame to decide whether the buffer it previously showed should be restored or not. Even if there is no previous buffer for that window we should at least optionally allow the frame to stay alive. martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 16 Jul 2024 08:22:57 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jul 16 04:22:57 2024 Received: from localhost ([127.0.0.1]:60927 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sTdSb-0003ZP-3s for submit <at> debbugs.gnu.org; Tue, 16 Jul 2024 04:22:57 -0400 Received: from lists.gnu.org ([209.51.188.17]:48430) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sTdSY-0003ZG-RG for submit <at> debbugs.gnu.org; Tue, 16 Jul 2024 04:22:55 -0400 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 <rudalics@HIDDEN>) id 1sTdSW-0004HN-1k for bug-gnu-emacs@HIDDEN; Tue, 16 Jul 2024 04:22:52 -0400 Received: from mout.gmx.net ([212.227.15.19]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <rudalics@HIDDEN>) id 1sTdSU-0000Xo-38 for bug-gnu-emacs@HIDDEN; Tue, 16 Jul 2024 04:22:51 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1721118159; x=1721722959; i=rudalics@HIDDEN; bh=ygpYlppB5HhVCRMnG3MPwCjQwpYhTW0+IXQ/+ZuEW+k=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=mxBpbgx5VoOfbIUvc6Z+H5VeKf2zv6eTUF14qu3j8T5QZpI/C13QAtV01ZsOC/YX 6jFLBu5jD9ZV0GnRy1m8qg7+eH0uh7McV3oDVq4KfoMOaDhIWsiyyMy2cXfBD1tRQ qXF8mP1z08prlTGaOgqWns6199uIxQdM6/LQwWA2yv2DfqCOuWDcL4ktQeIwoEQCM z4QvoXQkuAvFNnzlXfwX9vZjLK5yEdNV56ACgWKbrw764uSNh/j1QWJhol59utf/6 dkPg+h4bEwFHRO8X0Mj6xlZovB7ngNdbWmOvoZ10Hw0/FQMSjw33uPqBYCgmxQJt6 XX+uDl0uDUyak+sYFg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([46.125.249.102]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MDQeK-1sakTA03ny-002Aig; Tue, 16 Jul 2024 10:22:38 +0200 Message-ID: <ee4e7e95-53d3-4b01-bd1a-ae2cd77352b2@HIDDEN> Date: Tue, 16 Jul 2024 10:22:34 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: =?UTF-8?Q?Bj=C3=B6rn_Bidar?= <bjorn.bidar@HIDDEN>, martin rudalics via Bug reports for GNU "Emacs, " the Swiss army knife of text editors <bug-gnu-emacs@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <1fb1cc7a-b8ea-4d6d-ac6d-19abffef44f3@HIDDEN> <87frs9kgve.fsf@> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <87frs9kgve.fsf@> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:FiIVgqZdbamrxEH/JE1d7rT99w4pw3n6Wv5EX9CgjcEb0agG1ir AzHyHT+QH+GXd5CxGSoGISAGwhSTl3AVBbCXsoDn9Ku0smiZXjfyCG68/87VSYXs1Gt9vzb Cb2ccuowfpGI78yxu6pM8KkZD7YgY2+vqrwKlsWwhicZF3Z5IOJLp25VcQa8s1hgjuYptDI AvXrIM6J+jKQkmZXzpqtQ== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:z0ymmL1P0Qc=;zIjQWwrUIapC4YxZPgZgRPpzBbY ZS4EWi+3iumQnuFiWCSZgOyhCwNH0nPfZu3kxrW1zjp58opj+IYLYYStViW3AKq3OepC7dKUQ RZNjthA018AoY2ItUsV3IX0HFbRj0AtSfl/YvHbBU2fXam8LCjR++sHt+JYeooKg7IoLPrQAA x349qWiD1Ig52jX0rAEsqkvqyroLGWNsrk+Z4OazEDIYuR8M1+MKV+b0M+Uf5U4nL/q0rZRgd isGoqXrRvLamgjQolDGl7ecQfUjF2OdsggdmVnhmCQ/eYLNC0v60inP4a8M4XWa57G0pT7ujG CRwcOkV8HIDuMu6H26Eexpqn6rkPFxMyipT4zciEedxXqt+A2F19XbRS/UDzeUWo1vCiXhvEo Esmxz/QJ1JUeDMDMX7yoXbC0gHlI/M55OVByj245PmHigYImZsfYO1b1uyPnUk431tBlKNGp3 t9wgECbAt2i2W7+o4aZ8SbeGXmthf/YM4oMoP86fodByKqVbViL07F9y1KDCxj/rWyM+GoCSg Z6riEYkENtNdp3gBuqdzmc0Mdq0ulLinhjBi1n9/4rIZDG+vX3LkKibrjK31xmSi+RzkCRCmS nRUZOXFRjxub+9GG+gwJ5cAJHuxCeUG1d9j67qhCQMzRaFMq/X+MFPywFQv/5AEAMZcThohQF 54pjG8dMNMOf2506PsMfcvn/EFupstcCsVv2WWF76M3ti8gaOO5L4eqxv7Qd7x+n6qUAiC1wk h5oq1r0rgUmhg5lMSBaErfCImhES7SppS35B2anOtOWul0927KmGhGRpnp9wHvZYYpuFyDFB+ koCjl78orrT5/I0x/Wcl5BZR+qrNifmAjqauBvvd3VGfM= Received-SPF: pass client-ip=212.227.15.19; envelope-from=rudalics@HIDDEN; helo=mout.gmx.net X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 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_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit Cc: 59862 <at> debbugs.gnu.org, Juri Linkov <juri@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.3 (--) > What about use cases where the frame was only spawned for that > particular window? > > For a frame focused setup frames mostly contain only one window and > don't close when the only window in it is killed Do you mean "window" or "buffer" here? C-x 0 in a frame containing only one window gets you an "Attempt to delete minibuffer or sole ordinary window" error. I suppose you meant "buffer" here. > leaving a window with > the scratch buffer around. Let's distinguish two different cases: If, after evaluating (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-same-window))) '(frame-auto-hide-function 'delete-frame)) you do C-x 5 2 then C-h i and finally q, the second frame will stay around and show *scratch*. Alternatively, you can evaluate (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-same-window)))) do C-x 5 2 then C-h i and finally C-u q which also kills the *info* buffer. These are the behaviors needed for handling the Bug#12764 scenario. If instead you evaluate (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-pop-up-frame))) '(frame-auto-hide-function 'delete-frame)) and then do C-h i followed by q, the second frame gets deleted. Alternatively you can get the same visual behavior via (custom-set-variables '(display-buffer-alist '(("\\*info\\*" display-buffer-pop-up-frame)))) followed by C-h i and C-u q where the latter also kills the *info* buffer. In the thread of Bug#12764 I argued that deleting the frame would make sense in the first scenario too. But then we would have to look into the history of the last window on that frame to decide whether the buffer it previously showed should be restored or not. Even if there is no previous buffer for that window we should at least optionally allow the frame to stay alive. martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 16 Jul 2024 06:09:37 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jul 16 02:09:37 2024 Received: from localhost ([127.0.0.1]:60840 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sTbNY-0008Sj-NH for submit <at> debbugs.gnu.org; Tue, 16 Jul 2024 02:09:37 -0400 Received: from thaodan.de ([185.216.177.71]:51944) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <bjorn.bidar@HIDDEN>) id 1sTbNX-0008SP-AV for 59862 <at> debbugs.gnu.org; Tue, 16 Jul 2024 02:09:35 -0400 Received: from odin (dsl-trebng12-50dc75-154.dhcp.inet.fi [80.220.117.154]) by thaodan.de (Postfix) with ESMTPSA id 785A1D00076; Tue, 16 Jul 2024 09:09:26 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=thaodan.de; s=mail; t=1721110166; bh=TPrdyD0RjZzo6X6eYuVTX/2bo5vFPECue3U8Ni72DVM=; h=From:To:Cc:Subject:In-Reply-To:References:Date; b=MjETrgTesnVrgIMZRE/v0K+e2ipDpFmBVaD0lASr3DtKRNjEjsKuVmrjtAyg0FYDr 2NV94V7X3r/4oJKv3ClEg503Y1G5yqSB2Nf21yK8OoZQl3g/+daY9M/+obmuKutaNh 69Gc1LRhJAolslVDDO3FUndthGnmPES5HGSxsw0y6ApSi5N4RsLUP2j3LAOPfWjEVt qERTFw833JxCeYiIyNCUmM/ILnBA0lz16jXxQateV0T6ooF7/UNm2MYyoGoTnj3F8o FN8bvELDSABA9+ZEP0Zc8I0bEYREJMp9ZL3OpjtSXVRaL5Fgs2nKEf+NvX/r/x66T+ 2M66xMTRXaZpYrWg7gog3XD3Qfwei0LImL3MCpBa7YpHntoe4+9iKFUimLPuQ/baVR BGXAOZD40fv32YfJRkjHdkA3CM0t83hotpWyIvyyhmpo0WhFwd0+aT7/u6cpGD+e1/ f/BMalIiJ28Uqt9mUrqcRzJroS/Alwt2LTkM5PVEqttMOX2QLXAnM+XlswxAMvYhOx HfjRJFzPcf2VIZM/0LujOrrtgD/ZMrwwsLBKExwLp6rBVOkXo27XZUnU61kgEkW9Uq YpZmgnIIHYGN5a1wyMKZTrf4Zqdg6LPRLeL/xTkHd+vGQWcD6iSaTAfQl5rW3cllqX 6FiRhDAsdvrwfL5PJIH2vaM8= From: =?utf-8?Q?Bj=C3=B6rn?= Bidar <bjorn.bidar@HIDDEN> To: martin rudalics via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <1fb1cc7a-b8ea-4d6d-ac6d-19abffef44f3@HIDDEN> (martin rudalics via's message of "Mon, 15 Jul 2024 09:32:33 +0200") References: <86fsds8mlm.fsf@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <1fb1cc7a-b8ea-4d6d-ac6d-19abffef44f3@HIDDEN> Autocrypt: addr=bjorn.bidar@HIDDEN; prefer-encrypt=nopreference; keydata= mDMEZNfpPhYJKwYBBAHaRw8BAQdACBEmr+0xwIIHZfIDlZmm7sa+lHHSb0g9FZrN6qE6ru60JUJq w7ZybiBCaWRhciA8Ympvcm4uYmlkYXJAdGhhb2Rhbi5kZT6IlgQTFgoAPgIbAwULCQgHAgIiAgYV CgkICwIEFgIDAQIeBwIXgBYhBFHxdut1RzAepymoq1wbdKFlHF9oBQJk1/YmAhkBAAoJEFwbdKFl HF9oB9cBAJoIIGQKXm4cpap+Flxc/EGnYl0123lcEyzuduqvlDT0AQC3OlFKm/OiqJ8IMTrzJRZ8 phFssTkSrrFXnM2jm5PYDoiTBBMWCgA7FiEEUfF263VHMB6nKairXBt0oWUcX2gFAmTX6T4CGwMF CwkIBwICIgIGFQoJCAsCBBYCAwECHgcCF4AACgkQXBt0oWUcX2hbCQEAtru7kvM8hi8zo6z9ux2h K+B5xViKuo7Z8K3IXuK5ugwA+wUfKzomzdBPhfxDsqLcEziGRxoyx0Q3ld9aermBUccHtBxCasO2 cm4gQmlkYXIgPG1lQHRoYW9kYW4uZGU+iJMEExYKADsCGwMFCwkIBwICIgIGFQoJCAsCBBYCAwEC HgcCF4AWIQRR8XbrdUcwHqcpqKtcG3ShZRxfaAUCZNf2FQAKCRBcG3ShZRxfaCzSAP4hZ7cSp0YN XYpcjHdsySh2MuBhhoPeLGXs+2kSiqBiOwD/TP8AgPEg/R+SI9GI9on7fBJJ0mp2IT8kZ2rhDOjg gA6IkwQTFgoAOxYhBFHxdut1RzAepymoq1wbdKFlHF9oBQJk1+ntAhsDBQsJCAcCAiICBhUKCQgL AgQWAgMBAh4HAheAAAoJEFwbdKFlHF9oBgwA/iQHwe0VL4Df4GGTYlNjMSHFlIkBmN4UfYGLYj3E TrOUAQC51M+M3cjsL8WHdpBz6VAo6df9d+rVwhQ9vQuFHqevArg4BGTX6T4SCisGAQQBl1UBBQEB B0Cbohc3JEfn005/cm0AOGjSsW1ZxAkgaoVNjbpqk4MgNAMBCAeIeAQYFgoAIBYhBFHxdut1RzAe pymoq1wbdKFlHF9oBQJk1+k+AhsMAAoJEFwbdKFlHF9ooHABAKGmrGBic/Vys3BBrOQiRB3Z7izO HwhqTRpAqFZtXS2nAQDZhp/5aYw1TZjTzkm1KVt9QiYnjd/MvxRE9iaY6x4mDbgzBGTX6T4WCSsG AQQB2kcPAQEHQAgRJq/tMcCCB2XyA5WZpu7GvpRx0m9IPRWazeqhOq7uiO8EGBYKACAWIQRR8Xbr dUcwHqcpqKtcG3ShZRxfaAUCZNf71AIbIgCBCRBcG3ShZRxfaHYgBBkWCgAdFiEEUfF263VHMB6n KairXBt0oWUcX2gFAmTX+9QACgkQXBt0oWUcX2jeSwD6AtWn0cuo8IF35YRo4o3cDRJnUfJnbvJy GxyCDThR+zYBAKG6/jdwmZkBQZKslnDAbMMd2WfiZZT5JW3IWC4EaKMO7HkBAKYPGZ3UbfkRvfFK S+pQ9CgtNfkSJQBtT1Ob7Y6nsacgAQCpyXN7yppmhW/oBgivITPy9Lkg+V4NK9WZYZCU9Q7LBA== Date: Tue, 16 Jul 2024 09:09:25 +0300 Message-ID: <87frs9kgve.fsf@> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 1.2 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: martin rudalics via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> writes: >>> This will keep the frame around so >>> Bu#12764 is not affected and the normal behavior of C-h i followed by >>> C-h e is not affected either unless a user deleted *scratch* in between. >> >> Sorr [...] Content analysis details: (1.2 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -0.0 SPF_PASS SPF: sender matches SPF record 1.2 INVALID_MSGID Message-Id is not valid, according to RFC 2822 X-Debbugs-Envelope-To: 59862 Cc: martin rudalics <rudalics@HIDDEN>, 59862 <at> debbugs.gnu.org, Juri Linkov <juri@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 0.2 (/) martin rudalics via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> writes: >>> This will keep the frame around so >>> Bu#12764 is not affected and the normal behavior of C-h i followed by >>> C-h e is not affected either unless a user deleted *scratch* in between. >> >> Sorry, I know nothing about the frame case. > > When creating a frame as part of 'display-buffer', quitting the sole > window of that frame should delete the frame. When creating a frame > separately and calling 'display-buffer' to show a buffer in its only > window, quitting the window should not delete the frame even if that > window has no previous buffer. See Bug#12764 for the details. What about use cases where the frame was only spawned for that particular window? For a frame focused setup frames mostly contain only one window and don't close when the only window in it is killed leaving a window with the scratch buffer around.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 16 Jul 2024 06:09:42 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jul 16 02:09:42 2024 Received: from localhost ([127.0.0.1]:60842 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sTbNe-0008Sw-2F for submit <at> debbugs.gnu.org; Tue, 16 Jul 2024 02:09:42 -0400 Received: from lists.gnu.org ([209.51.188.17]:56800) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <bjorn.bidar@HIDDEN>) id 1sTbNY-0008Sc-8I for submit <at> debbugs.gnu.org; Tue, 16 Jul 2024 02:09:36 -0400 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 <bjorn.bidar@HIDDEN>) id 1sTbNV-0008Oq-Je for bug-gnu-emacs@HIDDEN; Tue, 16 Jul 2024 02:09:33 -0400 Received: from thaodan.de ([2a03:4000:4f:f15::1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <bjorn.bidar@HIDDEN>) id 1sTbNT-0007y4-KE for bug-gnu-emacs@HIDDEN; Tue, 16 Jul 2024 02:09:33 -0400 Received: from odin (dsl-trebng12-50dc75-154.dhcp.inet.fi [80.220.117.154]) by thaodan.de (Postfix) with ESMTPSA id 785A1D00076; Tue, 16 Jul 2024 09:09:26 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=thaodan.de; s=mail; t=1721110166; bh=TPrdyD0RjZzo6X6eYuVTX/2bo5vFPECue3U8Ni72DVM=; h=From:To:Cc:Subject:In-Reply-To:References:Date; b=MjETrgTesnVrgIMZRE/v0K+e2ipDpFmBVaD0lASr3DtKRNjEjsKuVmrjtAyg0FYDr 2NV94V7X3r/4oJKv3ClEg503Y1G5yqSB2Nf21yK8OoZQl3g/+daY9M/+obmuKutaNh 69Gc1LRhJAolslVDDO3FUndthGnmPES5HGSxsw0y6ApSi5N4RsLUP2j3LAOPfWjEVt qERTFw833JxCeYiIyNCUmM/ILnBA0lz16jXxQateV0T6ooF7/UNm2MYyoGoTnj3F8o FN8bvELDSABA9+ZEP0Zc8I0bEYREJMp9ZL3OpjtSXVRaL5Fgs2nKEf+NvX/r/x66T+ 2M66xMTRXaZpYrWg7gog3XD3Qfwei0LImL3MCpBa7YpHntoe4+9iKFUimLPuQ/baVR BGXAOZD40fv32YfJRkjHdkA3CM0t83hotpWyIvyyhmpo0WhFwd0+aT7/u6cpGD+e1/ f/BMalIiJ28Uqt9mUrqcRzJroS/Alwt2LTkM5PVEqttMOX2QLXAnM+XlswxAMvYhOx HfjRJFzPcf2VIZM/0LujOrrtgD/ZMrwwsLBKExwLp6rBVOkXo27XZUnU61kgEkW9Uq YpZmgnIIHYGN5a1wyMKZTrf4Zqdg6LPRLeL/xTkHd+vGQWcD6iSaTAfQl5rW3cllqX 6FiRhDAsdvrwfL5PJIH2vaM8= From: =?utf-8?Q?Bj=C3=B6rn?= Bidar <bjorn.bidar@HIDDEN> To: martin rudalics via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <1fb1cc7a-b8ea-4d6d-ac6d-19abffef44f3@HIDDEN> (martin rudalics via's message of "Mon, 15 Jul 2024 09:32:33 +0200") References: <86fsds8mlm.fsf@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> <1fb1cc7a-b8ea-4d6d-ac6d-19abffef44f3@HIDDEN> Autocrypt: addr=bjorn.bidar@HIDDEN; prefer-encrypt=nopreference; keydata= mDMEZNfpPhYJKwYBBAHaRw8BAQdACBEmr+0xwIIHZfIDlZmm7sa+lHHSb0g9FZrN6qE6ru60JUJq w7ZybiBCaWRhciA8Ympvcm4uYmlkYXJAdGhhb2Rhbi5kZT6IlgQTFgoAPgIbAwULCQgHAgIiAgYV CgkICwIEFgIDAQIeBwIXgBYhBFHxdut1RzAepymoq1wbdKFlHF9oBQJk1/YmAhkBAAoJEFwbdKFl HF9oB9cBAJoIIGQKXm4cpap+Flxc/EGnYl0123lcEyzuduqvlDT0AQC3OlFKm/OiqJ8IMTrzJRZ8 phFssTkSrrFXnM2jm5PYDoiTBBMWCgA7FiEEUfF263VHMB6nKairXBt0oWUcX2gFAmTX6T4CGwMF CwkIBwICIgIGFQoJCAsCBBYCAwECHgcCF4AACgkQXBt0oWUcX2hbCQEAtru7kvM8hi8zo6z9ux2h K+B5xViKuo7Z8K3IXuK5ugwA+wUfKzomzdBPhfxDsqLcEziGRxoyx0Q3ld9aermBUccHtBxCasO2 cm4gQmlkYXIgPG1lQHRoYW9kYW4uZGU+iJMEExYKADsCGwMFCwkIBwICIgIGFQoJCAsCBBYCAwEC HgcCF4AWIQRR8XbrdUcwHqcpqKtcG3ShZRxfaAUCZNf2FQAKCRBcG3ShZRxfaCzSAP4hZ7cSp0YN XYpcjHdsySh2MuBhhoPeLGXs+2kSiqBiOwD/TP8AgPEg/R+SI9GI9on7fBJJ0mp2IT8kZ2rhDOjg gA6IkwQTFgoAOxYhBFHxdut1RzAepymoq1wbdKFlHF9oBQJk1+ntAhsDBQsJCAcCAiICBhUKCQgL AgQWAgMBAh4HAheAAAoJEFwbdKFlHF9oBgwA/iQHwe0VL4Df4GGTYlNjMSHFlIkBmN4UfYGLYj3E TrOUAQC51M+M3cjsL8WHdpBz6VAo6df9d+rVwhQ9vQuFHqevArg4BGTX6T4SCisGAQQBl1UBBQEB B0Cbohc3JEfn005/cm0AOGjSsW1ZxAkgaoVNjbpqk4MgNAMBCAeIeAQYFgoAIBYhBFHxdut1RzAe pymoq1wbdKFlHF9oBQJk1+k+AhsMAAoJEFwbdKFlHF9ooHABAKGmrGBic/Vys3BBrOQiRB3Z7izO HwhqTRpAqFZtXS2nAQDZhp/5aYw1TZjTzkm1KVt9QiYnjd/MvxRE9iaY6x4mDbgzBGTX6T4WCSsG AQQB2kcPAQEHQAgRJq/tMcCCB2XyA5WZpu7GvpRx0m9IPRWazeqhOq7uiO8EGBYKACAWIQRR8Xbr dUcwHqcpqKtcG3ShZRxfaAUCZNf71AIbIgCBCRBcG3ShZRxfaHYgBBkWCgAdFiEEUfF263VHMB6n KairXBt0oWUcX2gFAmTX+9QACgkQXBt0oWUcX2jeSwD6AtWn0cuo8IF35YRo4o3cDRJnUfJnbvJy GxyCDThR+zYBAKG6/jdwmZkBQZKslnDAbMMd2WfiZZT5JW3IWC4EaKMO7HkBAKYPGZ3UbfkRvfFK S+pQ9CgtNfkSJQBtT1Ob7Y6nsacgAQCpyXN7yppmhW/oBgivITPy9Lkg+V4NK9WZYZCU9Q7LBA== Date: Tue, 16 Jul 2024 09:09:25 +0300 Message-ID: <87frs9kgve.fsf@> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2a03:4000:4f:f15::1; envelope-from=bjorn.bidar@HIDDEN; helo=thaodan.de X-Spam_score_int: -14 X-Spam_score: -1.5 X-Spam_bar: - X-Spam_report: (-1.5 / 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, INVALID_MSGID=0.568, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -0.2 (/) X-Debbugs-Envelope-To: submit Cc: martin rudalics <rudalics@HIDDEN>, 59862 <at> debbugs.gnu.org, Juri Linkov <juri@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.2 (-) martin rudalics via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> writes: >>> This will keep the frame around so >>> Bu#12764 is not affected and the normal behavior of C-h i followed by >>> C-h e is not affected either unless a user deleted *scratch* in between. >> >> Sorry, I know nothing about the frame case. > > When creating a frame as part of 'display-buffer', quitting the sole > window of that frame should delete the frame. When creating a frame > separately and calling 'display-buffer' to show a buffer in its only > window, quitting the window should not delete the frame even if that > window has no previous buffer. See Bug#12764 for the details. What about use cases where the frame was only spawned for that particular window? For a frame focused setup frames mostly contain only one window and don't close when the only window in it is killed leaving a window with the scratch buffer around.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 15 Jul 2024 07:32:45 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jul 15 03:32:45 2024 Received: from localhost ([127.0.0.1]:58943 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sTGCS-0000Ge-VV for submit <at> debbugs.gnu.org; Mon, 15 Jul 2024 03:32:45 -0400 Received: from mout.gmx.net ([212.227.15.19]:59733) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sTGCP-0000Es-Ub for 59862 <at> debbugs.gnu.org; Mon, 15 Jul 2024 03:32:42 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1721028753; x=1721633553; i=rudalics@HIDDEN; bh=tgiaPf+BkK6UtK5G/12lIPhCZEEZdNkcErQizE31sAc=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=OwgPlA2YUhDp6U3lV7OlljXayrg7MWX8b9JCfJhTP1gN/0TLm2plF5IhXMMkCIE/ NsNBjXs1Hv9iuE8oKyldQTvbBCylmpuGYf35Hzwv49Tovw5A5ja2+BROQIPMIc/R1 YGL3/yjqfJAGkjKySv050Ubywc8LYAsi6RMpYiH4+FZXo5FhnnPPUvlmXBjRHo42E jhoEOjlJu+TU2UIqM42Fdl5vma8ul9IJ/ZgcbzvRL9hLe8Y3Vv9u+csdJixMRdwd1 AGsrPRQ3WweKljMtA6A9HL+yL8RmE0jgPEvorWb8008ymA9reHBqC1fJoI2GgJpms a47CXXg84uT0+qQsmg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([46.125.249.67]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MbirE-1rvabn3B66-00mAmH; Mon, 15 Jul 2024 09:32:33 +0200 Message-ID: <1fb1cc7a-b8ea-4d6d-ac6d-19abffef44f3@HIDDEN> Date: Mon, 15 Jul 2024 09:32:33 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> <86h6csct0w.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86h6csct0w.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:Birs+mARIjxxDqDkPZd0AKM2/KGdkBIMvwvUQ6psGjfLdMnup+B UPTgJNOoWqZUn9RrTYVBCpBfOQVBpcTmLLPCPmu1HZEWnev7zC68fgkgLko3fbpW6e3z52R 5G3ew4A+kIEfN79xD98ZQB16ZLQtV3hS1HImxbepLgcCQNsLy1nuCYWC9QjZQEuAVWjIQ+I 4TaHYi+J202MA3m4/PdCg== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:ILn3KdyyuIw=;vzBG35+rqQm372uEaLjbcvC2d1X Pc44UJkE5CUzjnm6Xc5xBl9hD2xdI5yehhdIv5j/RaA6o3b8JL3ibcS1ETbsNMB8vWuhZazmD t/QKsTou47b1FUnrMIYsoZXE75jDgYDwtNfj0vOYMB0Xx8IICsdHiIIp9mdNvNlRTHmY/75uU D2kHm5vBcRbOplWcD2oVDZd+Uv6WIGppJ8uW4SyeQUDMn0RNhpTxP0cUr1CtzzAVpwPNTMHys zokW+Qawn4j+/94UuTsJYED8j9tl5Y+ID6tdJcUYgZr6q6HSpwif9ne6rrstmQ5UaO538RcUY rrkjvwjt+YAdVZi0Yk14X6P47tofjljVFTpwJzuwgiLy0BZ4DuY3B4BboyCMaWRa5k5fQWwIe YFzZXacV3oaAQd32fWyl6tVVpCYWJ4cfYmy6+0bSkdbEMEBjt/HyVFm/TpQesiTuedbO1ptpP q4z2rfEbrZYaLawsrkD9Z+tf3wseBfQjvyvBS9Znb0U/qMKJygPndAKThvvWXmw0Cc4HresYM WQASG8hybRLi95L9yyPO6JOjWtK5jpS7urad9nctZe7/IoJjrpohb7ppwN7CiAPsdl8GtPPXC 6MWAcQnHWCeYQsH437wxNEzgJ6jgSfnhgocab1g/9uicCdRgFo4RgJWo7jnqb6iu3wUy4i19B E8DwXQFCyk73M7FW17u4RDiSmp33XFC6XMkrQ4i4nJ+9plC7esXHpVAUsrfeqUY6MR7+5lrvw N5BwDBscBTxZYraDCADwqEYDrK98Fsg5ozwJIXQpKN0kBM0QMWT83G1yxwzWRMh73ekSaQM+9 iQ1gnUZ2krCvAK/UmZjR5E8Kceq9+UTp7HcM8w05B/+Lc= X-Spam-Score: 2.9 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: >> This will keep the frame around so >> Bu#12764 is not affected and the normal behavior of C-h i followed by >> C-h e is not affected either unless a user deleted *scratch* in between. > > Sorry, I [...] Content analysis details: (2.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [46.125.249.67 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.19 listed in list.dnswl.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.9 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: >> This will keep the frame around so >> Bu#12764 is not affected and the normal behavior of C-h i followed by >> C-h e is not affected either unless a user deleted *scratch* in between. > > Sorry, I [...] Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.19 listed in list.dnswl.org] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [46.125.249.67 listed in zen.spamhaus.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager >> This will keep the frame around so >> Bu#12764 is not affected and the normal behavior of C-h i followed by >> C-h e is not affected either unless a user deleted *scratch* in between. > > Sorry, I know nothing about the frame case. When creating a frame as part of 'display-buffer', quitting the sole window of that frame should delete the frame. When creating a frame separately and calling 'display-buffer' to show a buffer in its only window, quitting the window should not delete the frame even if that window has no previous buffer. See Bug#12764 for the details. > OTOH, I tried to add the tab case handling to the same places > where the frame case is handled, and everything works nicely > with this patch applied over your previous patches: If nobody objects I'll install my patch next week and you can install your changes on top of it. martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 14 Jul 2024 07:51:31 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jul 14 03:51:31 2024 Received: from localhost ([127.0.0.1]:57107 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sSu14-0003oi-WE for submit <at> debbugs.gnu.org; Sun, 14 Jul 2024 03:51:31 -0400 Received: from relay1-d.mail.gandi.net ([217.70.183.193]:56115) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sSu12-0003oU-UK for 59862 <at> debbugs.gnu.org; Sun, 14 Jul 2024 03:51:29 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id A0A2D240003; Sun, 14 Jul 2024 07:50:59 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> (martin rudalics's message of "Fri, 12 Jul 2024 10:20:32 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> Date: Sun, 14 Jul 2024 10:49:35 +0300 Message-ID: <86h6csct0w.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) >> Ok, I will try to move it. > > We could replace the > > (or (eq (nth 1 quit-restore) 'frame) > (and (eq (nth 1 quit-restore) 'window) > ;; If the window has been created on an existing > ;; frame and ended up as the sole window on that > ;; frame, do not delete it (Bug#12764). > (not (eq window (frame-root-window window))))) > > clause with > > (or (eq (nth 1 quit-restore) 'frame) > ;; If the window has been created on an existing > ;; frame and ended up as the sole window on that > ;; frame, do not delete it (Bug#12764). > (not (eq window (frame-root-window window)))) > > with the motivation that if a window does not have a previous buffer, > there is no reason to switch to it. This will keep the frame around so > Bu#12764 is not affected and the normal behavior of C-h i followed by > C-h e is not affected either unless a user deleted *scratch* in between. Sorry, I know nothing about the frame case. > Try it and if it works for you I'll add it to the new patch. OTOH, I tried to add the tab case handling to the same places where the frame case is handled, and everything works nicely with this patch applied over your previous patches: diff --git a/lisp/window.el b/lisp/window.el index 58120c919c7..82efb3c40ce 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -4120,6 +4120,11 @@ window-deletable-p (let ((frame (window-frame window))) (cond + ((and (eq (nth 1 (window-parameter window 'quit-restore)) 'tab) + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) + (window-list-1 nil 'nomini)) + 2)) + 'tab) ((frame-root-window-p window) ;; WINDOW's frame can be deleted only if there are other frames ;; on the same terminal, and it does not contain the active @@ -4990,6 +4995,9 @@ window--delete (unless (and dedicated-only (not (window-dedicated-p window))) (let ((deletable (window-deletable-p window))) (cond + ((eq deletable 'tab) + (tab-bar-close-tab) + 'tab) ((eq deletable 'frame) (let ((frame (window-frame window))) (cond @@ -5303,10 +5311,8 @@ quit-restore-window ((and (not prev-buffer) (eq (nth 1 quit-restore) 'tab) (eq (nth 3 quit-restore) buffer) - (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) - (window-list-1 nil 'nomini)) - 2)) - (tab-bar-close-tab) + (window--delete + window nil (memq bury-or-kill '(kill killing)))) ;; If the previously selected window is still alive, select it. (window--quit-restore-select-window quit-restore-2)) ((and (not prev-buffer)
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 12 Jul 2024 08:20:43 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 12 04:20:43 2024 Received: from localhost ([127.0.0.1]:53144 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sSBWE-000492-Ms for submit <at> debbugs.gnu.org; Fri, 12 Jul 2024 04:20:42 -0400 Received: from mout.gmx.net ([212.227.15.18]:41415) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sSBWC-00048o-PC for 59862 <at> debbugs.gnu.org; Fri, 12 Jul 2024 04:20:41 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1720772434; x=1721377234; i=rudalics@HIDDEN; bh=vW2X1/MRpcMYNGY82oUgS7Rypy9VDO65J7wxIdYDiWU=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=riDNST08wRhtjuygu1o6q4RpZXFKVatRLUl7pD/iUrgK0ZSrIbt4QIH61RGXXREm Qd/XV6A8yApYDMW4Yq784L1Nt+YRG2uk5eCmwRin88ZDLfRlr9EiBZX1Yra0L60mU KagJv+kPnW98vstaTkLQk3f6NpfSdW4tkQIaP7iYmRDlrqfmfxA35KlpEkbhXEBmj tMbmTYtl/NNNeYTyckcVpan1rnJICdOtoIfszu4qQYAYqoXXZRIDJc3X9vkzt5Bi9 DCRR2MAE7zpKWWcDkXOlhHpyB/1fFMEZnhdoyY9xn60eylo5kxJodcAX7DHYTfgMm QEOsrLK09DtSZOw/Qw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.131]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MdefD-1rt7kO3I5R-00i3xq; Fri, 12 Jul 2024 10:20:33 +0200 Message-ID: <3f399d4f-3dd2-4624-b857-e198f70b5565@HIDDEN> Date: Fri, 12 Jul 2024 10:20:32 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> <867cdr3xs7.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <867cdr3xs7.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:tV56pxdOjOJsIwBlFZChAYMWlPkH3qHVQGcxEkPwoTdv8Yt49iq bcn61+EFMk42JUT1shOVcttiRciiYa7c7Lvx8GbSIf4mNp6teCP5DUBcyI2mIqlbY1vxJIx CDry2s2cUo6wBgqZ/vjnwI+IfD1gWvISPvjqg+j+J97IdRtG8NtdFPxpp0wUhni6QIxsTe9 SNt/7rlPCyfKADaAIsWuw== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:ZrSWVXBi1q8=;8xBTvDgZQMljxN9Vw+Ea30CLf4w q4AUewtcKb7eqDxeQB0ZhzC7ofA1RKfpsYitP2Fz6iWL6Z2cN2uZIWgPoOmdmeR9WNGI4wa1y leOhkNfHIlZZZ7x8FDvp8hERL9YJ0MnSFNc4BGkn3Z2Vi+LJ2zWEAgTcCnz4n/X47f57ceuw3 xvgEVa59w5+N5fElBb58+qCp17pye/tyvf7+myekP+Ll23v4t+upaGN+NG5VKhvLCTjgp1k4u WktOe6f49qUv82eFHEGjaXsjy6ryrBgnY9oQagO8XYlQeZFpfS07HRpKES+mEExPTBM/580J5 AIjbrJlfVDjGmS9qE5wa7cuuCIMnYEdi75vMc4TX4FofgQE9cDnHbx9mFLZ1ArJtxz676IwtI TiZk3PzCFCs/BjVAVPbyR/hWK6u1BbzC0Ck73qx+z09d0wHX5OCpkBDoUCFscpiZ6wBviBeJa Je0iP1rj4X3TrYwU6xdpoLHzi4WjcIdvTuSgc7WDQqFGtmcClwY3o1Vs7nncxhhcsGw6K+1Tc 8guGDJlHjTOEXBhoWtNayTxHKd+4rDzYpiK9PjPEkM2HjnCUlCK2j5EworoBxhiw3ngAx6Lk8 i0jgLvZq5tSxeIoKu2yR83yusH0xKMu8TMF5hSpRI/MaDg8hdgMiu3syxHhInYnRXp2xBgAon AgrXefgf9BASj/kscmFM3cyghEGASU7pEVhMBpubGC3yFc0pF0foA2Ki9okqLU6UEfWxR2eYW jV4VTnRH8FIziqUWV8pEfNwAxY5uAMq9IIUr+5/2IYe11k9qMs14ILQC4CKfaGWYZP2bTyXNc 83BP53/S9Z7fkAf14t0UbqashoqdTQ6E/dUR3idnUX+IM= X-Spam-Score: 2.9 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > Ok, I will try to move it. We could replace the (or (eq (nth 1 quit-restore) 'frame) (and (eq (nth 1 quit-restore) 'window) ;; If the window has been created on an existing ;; frame and ended up as the sole window on that ;; frame, do not delete i [...] Content analysis details: (2.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.131 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.18 listed in list.dnswl.org] 0.0 RCVD_IN_MSPIKE_H4 RBL: Very Good reputation (+4) [212.227.15.18 listed in wl.mailspike.net] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.9 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > Ok, I will try to move it. We could replace the (or (eq (nth 1 quit-restore) 'frame) (and (eq (nth 1 quit-restore) 'window) ;; If the window has been created on an existing ;; frame and ended up as the sole window on that ;; frame, do not delete i [...] Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 RCVD_IN_MSPIKE_H4 RBL: Very Good reputation (+4) [212.227.15.18 listed in wl.mailspike.net] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.18 listed in list.dnswl.org] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.131 listed in zen.spamhaus.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager > Ok, I will try to move it. We could replace the (or (eq (nth 1 quit-restore) 'frame) (and (eq (nth 1 quit-restore) 'window) ;; If the window has been created on an existing ;; frame and ended up as the sole window on that ;; frame, do not delete it (Bug#12764). (not (eq window (frame-root-window window))))) clause with (or (eq (nth 1 quit-restore) 'frame) ;; If the window has been created on an existing ;; frame and ended up as the sole window on that ;; frame, do not delete it (Bug#12764). (not (eq window (frame-root-window window)))) with the motivation that if a window does not have a previous buffer, there is no reason to switch to it. This will keep the frame around so Bu#12764 is not affected and the normal behavior of C-h i followed by C-h e is not affected either unless a user deleted *scratch* in between. Try it and if it works for you I'll add it to the new patch. martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 12 Jul 2024 06:55:27 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jul 12 02:55:27 2024 Received: from localhost ([127.0.0.1]:53049 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sSABj-000203-Du for submit <at> debbugs.gnu.org; Fri, 12 Jul 2024 02:55:27 -0400 Received: from relay6-d.mail.gandi.net ([217.70.183.198]:58887) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sSABh-0001zp-Bx for 59862 <at> debbugs.gnu.org; Fri, 12 Jul 2024 02:55:25 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id 24898C0009; Fri, 12 Jul 2024 06:55:15 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> (martin rudalics's message of "Thu, 11 Jul 2024 10:36:46 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> Date: Fri, 12 Jul 2024 09:54:48 +0300 Message-ID: <867cdr3xs7.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) >> I checked that prev-buffers is nil in both frame and tab cases, >> so everything is correct here. > > It's not correct in the sense that in the tab case the window showing > *info* had a previous buffer - *scratch*. Think of users working on > some buffer who want to consult Info on something in that buffer with > the intention to turn back to that buffer as soon as they are done. > While consulting *info* they hit C-h e. Now quitting *info* would > delete the window showing *info* and leave them with a window showing > *Messages* instead. Is that really the behavior you have in mind? How > would a user go back to the original buffer? The tab case should not differ from the frame case that has no previous buffer. >> The difference between frame and tab case is that the frame branch >> calls 'window--delete' that decides whether to delete the frame, >> or just delete the window. But in the tab case it either >> closes the tab, or does nothing. So in the tab case >> it should call 'window--delete' as well, that will decide >> whether to close the tab, or just delete the window. >> >> Then 'window--delete' should do something like this: >> >> (unless (and dedicated-only (not (window-dedicated-p window))) >> (let ((deletable (window-deletable-p window))) >> (cond >> + ((eq deletable 'tab) >> + (tab-bar-close-tab) >> + 'tab) >> ((eq deletable 'frame) >> (let ((frame (window-frame window))) >> (cond >> >> Then maybe 'seq-count' with (window-parameter w 'quit-restore) >> should be moved to 'window-deletable-p'. > > IIUC when 'display-buffer-record-window' installs a 'quit-restore' > parameter of the 'tab' type, it assumes full responsibility for all > windows on that frame as long as the corresponding tab has not been > closed. This means that the tab code has to assure a coherent state of > the frame's windows after the tab has been closed. If you can guarantee > that, feel free to move that check wherever you want. Ok, I will try to move it.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 11 Jul 2024 08:36:55 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jul 11 04:36:55 2024 Received: from localhost ([127.0.0.1]:50992 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sRpIM-00053P-Sc for submit <at> debbugs.gnu.org; Thu, 11 Jul 2024 04:36:55 -0400 Received: from mout.gmx.net ([212.227.15.18]:34303) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sRpIL-00053B-AR for 59862 <at> debbugs.gnu.org; Thu, 11 Jul 2024 04:36:54 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1720687007; x=1721291807; i=rudalics@HIDDEN; bh=hs56+dRhwD4GGyKsvgnnHOiq/M44n7UsWRoX0xrC+Ak=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=HDCsuEzm6v9iJ4GDSBvKLfg9e4FznXnyesBIJUYTm1E1E1w0UZLkIwRC32T/wk/0 jqEm8OJ4juWYGle6PHr4v8ka22WDtMhA3/nG6Afz9qRGQh0ZVLrWMDmB2VRl2ssaz 8BLVK9Yml+yrJSvO0jW3mkEO8aTF99q9ooOL54ZinQpDxX+oXq8NH2AIBMYBidLsy im2EJD2n9cOaxJWVx41S9MjrCoKT3I9k7X5dNDk5z3oR+51E6UzmAKB3NWGMklqlA jERqusw18xkKs2H832Muq3B+zIpSl3u4kdrrKRXuNZ9ZKb/0KkzDOHHboC0sTQhVl COUcWU0Zd3B3jUpi2Q== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.8.206]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1Mnps0-1s2x0904uQ-00jdYH; Thu, 11 Jul 2024 10:36:47 +0200 Message-ID: <eb3b984d-dd6a-48e3-88c8-ef2cd146b0b7@HIDDEN> Date: Thu, 11 Jul 2024 10:36:46 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> <86a5ioo269.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86a5ioo269.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:WYZtfpE7X5V3Wqi+3KBX4isaByPU5Mwr2GBirqoigkTNWmEKL3L 7b356pUg1x95NhUb8OiU6ZqT0GpfACfMaJupUse1IAkrwWbtaDfpbSk12mqFjRB5gLY1YMI AS5C/NVzvpnsrvSngXIuPtb1wxBJdOVJIS3PvClq2hi3muGyoD7/zXC7nZO/Mt2fFXJIfI1 BwbGibKZuU2pScx3X4M0Q== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:gFApIb53e+I=;imkj/b+D31SDhBBagzp3zTr5ldm uAv3TZ/TxfoAEI0t3g2SOC0eljZ+rFE/RRINxd9NRU5gu5CCwDszT24P5fQthn7jV5KUB7VCE zuR3dz/1a9oniVqWd5Bzh5AcRrZBudMEazOeu3rGM3+I3BP6qlMbXj51coMkxFOwtXGyG9BYj pqAf+iOhlUdnKO6r0MhH+PjHvjxelD5Wcb5+bcG54qzFGtyLPYbh+9H8enwU/3CXCg35t3tUn JO7fNBumsEuYfOWoYgijfuNQamJmm0RUHw+9RtLKoc+k1rZ7P0d0bu5zVxr3FCTDv/aQ5x3Gd jdXY9PFIgVzaI0Xpl2scGsY0Klp8g9QVhRGOncnygcucgeWP5rkAA7Vq+E+KPD5IcRnaV+trY Hc4Tk2A3RWO+Ox/HJ80tLXDJb2NJGcerRqD8fXfjb+z0HL9InRJFHGEwfMpnQ2VglKdSeo2fG Xl/rA0oWxBta+f6hSNkYbB2oj1/Mf1Iw9nPIVp/uhoaX5zETXyG2T7EFPXm7Qz9e8/eZu/wdN VdcZ2D6Ba7agHVW1nofZCxTE0wdv+11k9fEy/b32lHPqpYfHjqu0IHtGGN6JcZ4cjWRWJaAo0 u7vM8BEFe5RLMu6pL007pjDeX9AjZ3b4gpl5hp78gEXVXHlokYBlZXS9jsUWhyiK2WUR8tUgD W3Th2XMTMvDG6/vLLi7m4SGP51Oq5zrDgmjPbIec0roC99TD7MmKkQfSU96GsNrLEUTaw6my7 n4ZC3R2wlyE/9RKyY3R1B7C1+NDFJqaGbFIq+hsq2mrJ3PwnaQEmenUJFSA0npJZzwYvIv8w4 PaI4xVUEjeLhdmK5nszFaEMQ== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > I checked that prev-buffers is nil in both frame and tab cases, > so everything is correct here. It's not correct in the sense that in the tab case the window showing *info* had a previous buffer - *scratch*. Think of users working on some buffer who want to consult Info on something in that buffer with the intention to turn back to that buffer as soon as they are done. While consulting *info* they hit C-h e. Now quitting *info* would delete the window showing *info* and leave them with a window showing *Messages* instead. Is that really the behavior you have in mind? How would a user go back to the original buffer? > The difference between frame and tab case is that the frame branch > calls 'window--delete' that decides whether to delete the frame, > or just delete the window. But in the tab case it either > closes the tab, or does nothing. So in the tab case > it should call 'window--delete' as well, that will decide > whether to close the tab, or just delete the window. > > Then 'window--delete' should do something like this: > > (unless (and dedicated-only (not (window-dedicated-p window))) > (let ((deletable (window-deletable-p window))) > (cond > + ((eq deletable 'tab) > + (tab-bar-close-tab) > + 'tab) > ((eq deletable 'frame) > (let ((frame (window-frame window))) > (cond > > Then maybe 'seq-count' with (window-parameter w 'quit-restore) > should be moved to 'window-deletable-p'. IIUC when 'display-buffer-record-window' installs a 'quit-restore' parameter of the 'tab' type, it assumes full responsibility for all windows on that frame as long as the corresponding tab has not been closed. This means that the tab code has to assure a coherent state of the frame's windows after the tab has been closed. If you can guarantee that, feel free to move that check wherever you want. martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 11 Jul 2024 06:57:42 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jul 11 02:57:42 2024 Received: from localhost ([127.0.0.1]:50782 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sRnkL-0002Oz-RC for submit <at> debbugs.gnu.org; Thu, 11 Jul 2024 02:57:42 -0400 Received: from relay4-d.mail.gandi.net ([217.70.183.196]:46047) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sRnkH-0002Oi-89 for 59862 <at> debbugs.gnu.org; Thu, 11 Jul 2024 02:57:40 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id 8A6ABE0003; Thu, 11 Jul 2024 06:57:10 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> (martin rudalics's message of "Wed, 10 Jul 2024 11:16:24 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> Date: Thu, 11 Jul 2024 09:47:27 +0300 Message-ID: <86a5ioo269.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) >> But there is no *scratch* in the list of previous buffers for 'C-x t t C-h i' >> (that can be confirmed when tab-line is enabled), so the user won't expect >> to show *scratch*. And indeed the frame case doesn't show *scratch*. > > 'window--display-buffer' resets that window's previous buffers here > > (when (memq type '(window frame tab)) > (set-window-prev-buffers window nil)) > > In the "window" and "frame" case these are actually not needed because > when making a new window (on the same or a new frame), that window's > previous buffers are automatically set to nil - by make_window in the > release version and by the allocation routine with my patch. I reset > them just to make sure. When you show *info* in an already existing > window, that window's previous buffers are not reset. So the presence > of "tab" in the form above is not entirely correct in this regard. I checked that prev-buffers is nil in both frame and tab cases, so everything is correct here. >> I hoped that it would be possible for the tab case to do the same, >> but I don't know how the frame case is handled to do the right thing. > > In 'quit-restore-window' you count the windows with a 'quit-restore' > parameter. In the scenario at hand this gives 2 so you don't close the > tab. If you told me in detail what this counting is supposed to > accomplish, I might be able to help you. 'seq-count' with (window-parameter w 'quit-restore) is intended to be equivalent to (frame-root-window window) in the frame case, and even better. So the problem is not here. The difference between frame and tab case is that the frame branch calls 'window--delete' that decides whether to delete the frame, or just delete the window. But in the tab case it either closes the tab, or does nothing. So in the tab case it should call 'window--delete' as well, that will decide whether to close the tab, or just delete the window. Then 'window--delete' should do something like this: (unless (and dedicated-only (not (window-dedicated-p window))) (let ((deletable (window-deletable-p window))) (cond + ((eq deletable 'tab) + (tab-bar-close-tab) + 'tab) ((eq deletable 'frame) (let ((frame (window-frame window))) (cond Then maybe 'seq-count' with (window-parameter w 'quit-restore) should be moved to 'window-deletable-p'.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 10 Jul 2024 09:16:41 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jul 10 05:16:41 2024 Received: from localhost ([127.0.0.1]:54873 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sRTRJ-0006fO-0N for submit <at> debbugs.gnu.org; Wed, 10 Jul 2024 05:16:41 -0400 Received: from mout.gmx.net ([212.227.15.15]:54921) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sRTRG-0006fA-I4 for 59862 <at> debbugs.gnu.org; Wed, 10 Jul 2024 05:16:39 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1720602985; x=1721207785; i=rudalics@HIDDEN; bh=Ru7+jHGMSCmVOt5p+Qc4LU3joUNgqnWrZjVlg8ZDgUI=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=Pcnqnm0gmU1zSNlpWlGIfIQoo5pJF/SAlILIETv/aQn3jW2v4LSmlYn3iJLjqh7a iZHZGU8tr6ZB08e6ujuzISEVODAdc3omjCh9mF08jN/rP1cAhB6YZKWo9IjwEZUk3 hLVgP+7i86kGxM1Sifr4HOda6xWEGBFNSXeJfPVDqFwi1aL1ozLawBsMbVgdVi44a x6fKbftP8u43i5svUQGLqb8yhTPj6wjb/sdJYAuQpv3uDzqbxkhgZcRAxcKiQA8s/ Dc9m5UUNHZkX6THjYSYrir5vX8aISCJ8/OXpji1PlGMiYnqhJ0HDQAfEIon85DkUC SljmnU8cYk0pv0tfQw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.5]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1N63Vi-1sKy8H2Cee-010Exo; Wed, 10 Jul 2024 11:16:25 +0200 Message-ID: <61c4f245-3dd8-4e24-9c84-7ddd4cfe3c49@HIDDEN> Date: Wed, 10 Jul 2024 11:16:24 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> <86y169kafb.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86y169kafb.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:w/jfLKvtCZA2UlgZqLNntCEa0gFL8hjJX1p/4/kpfXh/zBpgcEN 6/bCR+B3V3x+B4rxNyEzLnNNJA5cAm/mYjV2OLKJVf0a7rVPUYCKh7Z9BU2hp+/6b44qG/P 8z5JK3A9bGT/AofBbuk3GPuR95Lv2LGVLsdZo5AQm47P8JXlUUwA/K/7hOfG+BpYG+iFLiS GnyqCC9VxFPdgP3MdRqoA== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:z9J2uk1PNhg=;qKsdvLdoAln+vCQwobj8hxFqwOI iVGL3JQiRCB4cWb7lRDN2qvUSmtsTu1xRs8u3x+dR+8wRhsMEf0ggvzpQBsVPAOjWT2zJw/qM xml6NaznNIY1v288ymYIXGz0h95vkwDDSpYuznE1Q25DGX5HmANOvBhJhzLLZrmuI2w3tQxLz kBiBPHagq5UfVVN8Tb3Z6OazKmC3ScYfwT+W4uqM7yOXUlfURUK6CmJalkyW7TNLqn8UkXbA0 U1T1LbLD3ba4YZNtyYPgfAa1pJcXGX7wtvd6E4SL1vt0ZR6n4w1qnqWw7PIFbc6HtJgYUI6Zr bbE0Kg7YpIZwKNhxmeie6C8KKCdmiyIKLjzRTnuXtMt2OO86pZ/LUdfwx8vQpr6Cf/mrRdEsX yZniv34M5yd/YvGdNGjWHNTWTGcyguCmp8ChS68KmO+4kDx93vIKlk7CftQybYNYwO+XWYL8w lOWZbvrafExs7vMscnIHh6EqIIWUPiDIOIgHDf1PnCuQnWhs97gLhz3HNLSnd6z4Umv4DtkFq trLmSgZlPVzz3l+zp4qw+NpxDb+37cNKsEfVWEjAfGuwK6bqtphooV4h656bP6yL1QMV5xWHM fGxRA4ikSii3v5yOC8g4svJk8rlDEch4F2BYHTSYYeAx0oaI6oEI5/vm7WSd4oBH877JMFYGy hJ10AR4SNgB5e/pGe8uRQeWmNuSi7j6iV4hF2qd/UloPn0KaBvUCT413uO/B5N+B3fmOYcKE+ WrDzmix1eRk7LUG3VoaJLqpgYsZQsauVWXS1mebuNB1uiOVS6cKq44xUv0lONLv1kTwGyjsxD RfY5axM99JYooOJ97DNcQ8+oxc0WBNBZD16cJv2quY0As= X-Spam-Score: 2.9 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > But there is no *scratch* in the list of previous buffers for 'C-x t t C-h i' > (that can be confirmed when tab-line is enabled), so the user won't expect > to show *scratch*. And indeed the frame [...] Content analysis details: (2.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.5 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.15 listed in list.dnswl.org] 0.0 RCVD_IN_MSPIKE_H4 RBL: Very Good reputation (+4) [212.227.15.15 listed in wl.mailspike.net] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.9 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > But there is no *scratch* in the list of previous buffers for 'C-x t t C-h i' > (that can be confirmed when tab-line is enabled), so the user won't expect > to show *scratch*. And indeed the frame [...] Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.15 listed in list.dnswl.org] 0.0 RCVD_IN_MSPIKE_H4 RBL: Very Good reputation (+4) [212.227.15.15 listed in wl.mailspike.net] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.5 listed in zen.spamhaus.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager > But there is no *scratch* in the list of previous buffers for 'C-x t t C-h i' > (that can be confirmed when tab-line is enabled), so the user won't expect > to show *scratch*. And indeed the frame case doesn't show *scratch*. 'window--display-buffer' resets that window's previous buffers here (when (memq type '(window frame tab)) (set-window-prev-buffers window nil)) In the "window" and "frame" case these are actually not needed because when making a new window (on the same or a new frame), that window's previous buffers are automatically set to nil - by make_window in the release version and by the allocation routine with my patch. I reset them just to make sure. When you show *info* in an already existing window, that window's previous buffers are not reset. So the presence of "tab" in the form above is not entirely correct in this regard. > I hoped that it would be possible for the tab case to do the same, > but I don't know how the frame case is handled to do the right thing. In 'quit-restore-window' you count the windows with a 'quit-restore' parameter. In the scenario at hand this gives 2 so you don't close the tab. If you told me in detail what this counting is supposed to accomplish, I might be able to help you. martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 10 Jul 2024 06:54:10 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jul 10 02:54:09 2024 Received: from localhost ([127.0.0.1]:54721 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sRRDN-0008TL-Ix for submit <at> debbugs.gnu.org; Wed, 10 Jul 2024 02:54:09 -0400 Received: from relay5-d.mail.gandi.net ([217.70.183.197]:51433) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sRRDL-0008Sp-Jl for 59862 <at> debbugs.gnu.org; Wed, 10 Jul 2024 02:54:08 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id 1D5371C0004; Wed, 10 Jul 2024 06:53:31 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> (martin rudalics's message of "Tue, 9 Jul 2024 10:52:03 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> Date: Wed, 10 Jul 2024 09:50:32 +0300 Message-ID: <86y169kafb.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) >> I suppose it will affect only interactive uses of 'kill-buffer'. > > Why? It affects all uses of 'kill-buffer'. I'm not sure about this, I just had a feeling that killing a temporary buffer should not affect its window. But a test case is needed to see if this is a real problem. >> PS: I noticed one difference between handling of frames and tabs: >> >> C-x 5 5 ;; other-frame-prefix >> C-h i ;; info >> C-h e ;; view-echo-area-messages >> q ;; quit-window >> This deletes the Info window, and doesn't delete the frame. >> Everything is correct. >> >> C-x t t ;; other-tab-prefix >> C-h i ;; info >> C-h e ;; view-echo-area-messages >> q ;; quit-window >> This doesn't close the tab (correct), >> but doesn't delete the Info window. >> This differs from the frame case that keeps >> only the Messages window on the frame. > > Suppose you do > > C-h i ;; info > C-h e ;; view-echo-area-messages > q ;; quit-window > > Then the difference is obvious. The C-h i reuses the one existing > window showing *scratch*. 'display-buffer-record-window' cannot tell > this case apart from the one where a user does want to show *scratch* > again in that window after being done with *info*. But there is no *scratch* in the list of previous buffers for 'C-x t t C-h i' (that can be confirmed when tab-line is enabled), so the user won't expect to show *scratch*. And indeed the frame case doesn't show *scratch*. I hoped that it would be possible for the tab case to do the same, but I don't know how the frame case is handled to do the right thing.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 9 Jul 2024 08:52:21 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jul 09 04:52:21 2024 Received: from localhost ([127.0.0.1]:52117 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sR6aD-0003zU-Gp for submit <at> debbugs.gnu.org; Tue, 09 Jul 2024 04:52:21 -0400 Received: from mout.gmx.net ([212.227.17.20]:44043) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sR6aB-0003zG-42 for 59862 <at> debbugs.gnu.org; Tue, 09 Jul 2024 04:52:20 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1720515127; x=1721119927; i=rudalics@HIDDEN; bh=EHgvQDcOqjrJiPQOpIx77zzL4evUofoAwj3FniKinU4=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=eMJWD5QkSlFxzcp6/D1fQQRE8LhYtHXZ+rxiJYMJRwGEK5jmhvy/M2GJU88AdvpK OzTg9zEqwotdiEIqaESaWfIoZG88TQDPwvJ4uK9IoJ2jcjEpjmaSvThjjf9edPqsu dwh9GYxsdSlG+BLcwn82FAGijMImi3jq/qIuMNj3B650bdcDHyGdHIEMXoDM4CqQo 82RUifmHn/z5e1NqikfYcYhBqjsPtKO/+K3TpGnVQ3ogXI/0csEPGF3xPt69ZkcC5 +b+FBJy0M/UtH7azkQ+aZ4DWyGc+AN3nZ1KM/WEUBMB2jWNxDIj1w2Fk1g3ZrlNY+ GiGfD3vidD7pFieqOQ== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([213.142.97.150]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MNt0C-1skoFq49Q8-00SHnU; Tue, 09 Jul 2024 10:52:07 +0200 Message-ID: <a972688e-01f6-428e-9dc0-67a45bc9a770@HIDDEN> Date: Tue, 9 Jul 2024 10:52:03 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> <86le2b12ni.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86le2b12ni.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:3p17tgocLDQzym3lw6RuAXvyNdu4S8UG8xeMwCCJz4v3TrI3mAi XohZPnmZCQb3Lg4aV09nNUaCmsJBueGJTj/QgVsAVjFwYzDWDlDqmr+YZef0zNTIHmXbZLj sNsWC55yCQHeV//tmI4I9uawuYfHLro6rHTL7JqfZncU9oShn/qNGij/Qk6FajbxHQV2GuE qK3b8laxTULTXmsabIe0A== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:twvukzr3B4w=;JHCo683RM02fWgkgLciYfb5HdI/ DR72UqjDK4H/ikf/al88uBa0SoJ54shetzsk7Xq9d+0fVcqw66rlyN6Tv482q57rLeYBe2g1c rRd1UU1JWi/uHrB2Rj8drSVl4MSj8FvHydkaxU1eIy9eVrndxI8KOlW9xr006u/+I7kwDKeJQ wO9naWQ1vbVWbYupzw1yazRK6a4Nh8YuB4+i0IpN4n+sRoOrpxHBLQjP21zzzcm3ETE+EaCKN BoE9LBRQ8zfUR6/e4bjO4SdyiwQR/9R+qIctSFgQKqhEgMFVyPq7/U9sjzpIb+5KOos9ui5ET IDKFnYw4qanNrl7LBXT+Uk57+AGaCTkJGWCMAMUHe9BR9gM0kZyHZq2mNWVoQ0p5TRsKuZ1gA WhvB4aWG2KtjyXysyH6cBBVf1GNzY4wFDONMSwdBMhJzzkrzGeJiFRer38S4ad/lynt3esPF5 RmNYNDfWDAFzWk4nIW2Q9GVB0P8cu91EjVENHj85N3VN01T17uJHEmV5EDwr3teM6sTfXhr0r BHKrWq8V7v75oKZ4XF+k/zi1vdudVf8FQz1whMfKj+dO952Vw5W91xwHo1YAMX+NTq/tsuGPT 2AnFDpr/z1FG3ljKjLQMslTLGRneOCIwd0fB2OLY2ngdAZ7o4B9bkisVGyqnkWlvVm9QoAgZu +KqG7ryTSJfjaS5Q0VXmIK0oKu4bhdgMBycSdhEkEu8sZaJj3FznOPhu2r6dFD7JUS7DUX7q2 3bbmjTr29rxHsFUV5Iywx/bpA/Rk/Prh+PIj2TWnTbH407QFJ1RbYGSOPyH/IzigexJVySZB1 4dCJfBLbIp2eg+2sfm2qnZbnOjX0CuGul+8HXrsl/Ux3s= X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > I suppose it will affect only interactive uses of 'kill-buffer'. Why? It affects all uses of 'kill-buffer'. > PS: I noticed one difference between handling of frames and tabs: > > C-x 5 5 ;; other-frame-prefix > C-h i ;; info > C-h e ;; view-echo-area-messages > q ;; quit-window > This deletes the Info window, and doesn't delete the frame. > Everything is correct. > > C-x t t ;; other-tab-prefix > C-h i ;; info > C-h e ;; view-echo-area-messages > q ;; quit-window > This doesn't close the tab (correct), > but doesn't delete the Info window. > This differs from the frame case that keeps > only the Messages window on the frame. Suppose you do C-h i ;; info C-h e ;; view-echo-area-messages q ;; quit-window Then the difference is obvious. The C-h i reuses the one existing window showing *scratch*. 'display-buffer-record-window' cannot tell this case apart from the one where a user does want to show *scratch* again in that window after being done with *info*. If we wanted a behavior that deleted the *info* window in this case (it could do that only if there is another window on that frame), the caller could add an alist entry, say 'delete-reused-window-if-possible', and add something like (when (and (eq type 'reuse) (assq 'delete-reused-window-if-possible alist)) (setq type 'window)) immediately before the (display-buffer-record-window type window buffer) call in 'window--display-buffer'. But you pass 'tab' as TYPE argument to 'window--display-buffer' and that would have to be handled in a maybe similar but still different way. martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 9 Jul 2024 06:59:31 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jul 09 02:59:31 2024 Received: from localhost ([127.0.0.1]:52018 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sR4p0-000185-KG for submit <at> debbugs.gnu.org; Tue, 09 Jul 2024 02:59:31 -0400 Received: from relay4-d.mail.gandi.net ([217.70.183.196]:38985) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sR4oy-00017r-2e for 59862 <at> debbugs.gnu.org; Tue, 09 Jul 2024 02:59:29 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id B13BEE0007; Tue, 9 Jul 2024 06:58:55 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> (martin rudalics's message of "Mon, 8 Jul 2024 18:49:52 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> Date: Tue, 09 Jul 2024 09:58:49 +0300 Message-ID: <86le2b12ni.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > It took me some time to rewrite the code for this since I found a couple > of leaks in the window handling code which I tried to plug now. In a > nutshell, the new patch is supposed to fix the following issues. > > - I introduced a new variable called 'kill-buffer-quit-windows'. If > non-nil, it makes killing a buffer call 'quit-restore-window' for each > window showing the buffer thus implementing the behavior you want. If > nil, killing a buffer works as before apart from the fixes I added > below. Thanks, I hope it will help to replace such configurations: (defun quit-window-kill-buffer () "Quit WINDOW and kill its buffer." (interactive) (quit-window 1)) (define-key special-mode-map "q" 'quit-window-kill-buffer) (define-key image-mode-map "q" 'quit-window-kill-buffer) (define-key global-map "\C-q" 'quit-window-kill-buffer) (define-key dired-mode-map "q" 'quit-window-kill-buffer) (define-key archive-mode-map "q" 'quit-window-kill-buffer) (define-key tar-mode-map "q" 'quit-window-kill-buffer) ... I suppose it will affect only interactive uses of 'kill-buffer'. > In earlier versions of Emacs, window configurations were mostly used to > handle window excursions and were consequently rather short-lived. Your > tab bar code has changed that. Hence we should try to avoid any leaks > introduced by long-lived configurations. Indeed now window configurations are long-lived, so tab-bar uses (split-window) followed by (delete-window) to create a new window different from the window saved in a window configuration. > Please test the patch intensively and report any problems you see. I > used the forms below to test the various features of the patch. I have used your previous patch for a long time, and it worked perfectly. I hope your new patch will be as good as the old one. PS: I noticed one difference between handling of frames and tabs: C-x 5 5 ;; other-frame-prefix C-h i ;; info C-h e ;; view-echo-area-messages q ;; quit-window This deletes the Info window, and doesn't delete the frame. Everything is correct. C-x t t ;; other-tab-prefix C-h i ;; info C-h e ;; view-echo-area-messages q ;; quit-window This doesn't close the tab (correct), but doesn't delete the Info window. This differs from the frame case that keeps only the Messages window on the frame.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 8 Jul 2024 16:50:11 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jul 08 12:50:11 2024 Received: from localhost ([127.0.0.1]:51377 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sQrZ3-0001nd-No for submit <at> debbugs.gnu.org; Mon, 08 Jul 2024 12:50:11 -0400 Received: from mout.gmx.net ([212.227.17.20]:45199) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sQrYz-0001mw-Ug for 59862 <at> debbugs.gnu.org; Mon, 08 Jul 2024 12:50:07 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1720457393; x=1721062193; i=rudalics@HIDDEN; bh=FBNap9ctbV82IG6GZWIU5J5XfgR7r4lTqpm9nE/Ws2A=; h=X-UI-Sender-Class:Content-Type:Message-ID:Date:MIME-Version: Subject:To:Cc:References:From:In-Reply-To:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=TGBMcQNqqzCVbhCuQGulfUnaXxm2hDrHwYqBAxPEqUHuyOrF1wLcxEUOsHJEU2nE G553CoYgDV01WaqauCrXM5sZd2oEfNMPAtVGeOp3sfth3rujwhQYOl+lR/8SFaXQk 9OIEkVrIweHTUneeEQnn102xRspnRVZohCX1WV81TcnBKlzHSYjmiVEiexj3rWsel lCxFaVns6Qt+X/NeQTYILKL+Jx2VVVvRIFTcdqlso+iis6J63yDjgwcCTtlrv673q e1h3VC7tkxDaYedYS64Odj8It0USPSIzKubkIRl7jEPWu9RC5FSEIOM/rweQd7PNh 9aKgRq2dQvBvtDddiA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([213.142.96.136]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MQv8x-1sme6I2IXX-00T70h; Mon, 08 Jul 2024 18:49:53 +0200 Content-Type: multipart/mixed; boundary="------------LljYayqEV1Ur0nfWMbfh90n8" Message-ID: <ca1388d2-3481-49c4-8721-42792a399340@HIDDEN> Date: Mon, 8 Jul 2024 18:49:52 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86plsgrfvu.fsf@HIDDEN> X-Provags-ID: V03:K1:Vtd2K3RtoMN3dOzca5pGWX/9apTNSZTjBq1FZi9g0BM0xU26Evl NpF3ecVxs3F8xEhtZq38FTEzaH0BFjnKxEGulX/cDIuOsFntTn1rsROJWkMbfcJm9rAFUvc qlGUqmUPfuV7jsCLD9hTHhZikhnJWRTd6SRweywgohEZ1M3sUdxoq8YRFcVpk0wr6UYarfW ONeZYxIzRfW5cTlDdSwgg== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:4Eb8diwgEFc=;xa2bCXnvr4d3rw5gQVefMm24ZeG MlWW9RnHgLww7KxA08jKS16K/SC0QFJOCrLioD7OLD7PCotk2i0DNaPfPOFXkdiDeVJ0CbaYa nhyxttjKO6iPvC5jrvQQDDhKuPqayuiazUpJ5yhaI5GjJnxzo5+gKlXcGVn8NX1LRrMq6KbLE 1PlDWLAJTa0J/1CYjoXJ27xnNl3Y83sI9lMhUIbbI4XrbFWpD2XU4RUSGpQ3svc8u60iQByg2 9SreZGJuEx7KZ+eBKrfgQFSXfym3BJlxJD2G1e7HTTo36iijsXz7RG705NdIO4DzV1aap9ezA Xj3DMpx4EBl1zSm2GBZyYw6Qkv6uirKy5wpcHZh9rjePamTHlGbEziFWzI3rWxbRA8nLhwL53 PS1DSmXeZQULEj0Cs+ChOQ8gQrlru825LQIV66zJ4H0p4mp06AHnmFqMwP5B4m+W5upvBGHS7 DW8KdIpsGHk8jpr3Xg6TNbQ/UyPsNU3XWtfB0IQZwEc8vtEXpQmpduG5sIO6ivcjMEMln/jF4 DckCk62juYRtc/QxiKom/zy5H7CeZiV5yXRUtP7kB2C7MtzqQz+9yNopqOEOFuMJRXI6Nm9RS YD3KjWgGcCDNuASldnCYUBiHHTfocfMAOBPsQVwR6/zf5I147YdEfKJZvQ3aKVsJj+Gyp8w/f glqDVrsUis7+xU+NO53j5NbyDm225Pu2wlN+MdvoF2+ywvIFlCadJxmtApXZEopwjr6/i7uER C4qCWjsQ1GrRC4yTwPIVVot9pp1RjLQPtPxI4fOPA+NeC75zMJTkIvJznJWaXM+D/RWn9pgfP vPkj0Xz+qNexQXeHK56rZMEQje6I1C8Fi345yTb74gikA= X-Spam-Score: 2.9 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: It took me some time to rewrite the code for this since I found a couple of leaks in the window handling code which I tried to plug now. In a nutshell, the new patch is supposed to fix the following i [...] Content analysis details: (2.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [213.142.96.136 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.17.20 listed in list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.9 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: It took me some time to rewrite the code for this since I found a couple of leaks in the window handling code which I tried to plug now. In a nutshell, the new patch is supposed to fix the following i [...] Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.17.20 listed in list.dnswl.org] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [213.142.96.136 listed in zen.spamhaus.org] -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager This is a multi-part message in MIME format. --------------LljYayqEV1Ur0nfWMbfh90n8 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit It took me some time to rewrite the code for this since I found a couple of leaks in the window handling code which I tried to plug now. In a nutshell, the new patch is supposed to fix the following issues. - I introduced a new variable called 'kill-buffer-quit-windows'. If non-nil, it makes killing a buffer call 'quit-restore-window' for each window showing the buffer thus implementing the behavior you want. If nil, killing a buffer works as before apart from the fixes I added below. - The new window parameter type 'quit-restore-prev' that was already in the previous patch handles most scenarios of traversing an entire chain of buffer display operations back to the one that initially created a window or a frame. The only thing it does not handle is to restore the previously selected window for all but the first and last such operation. - As in the previous patch I remove a buffer from all live windows' previous/next buffers and quit-restore(-prev) parameters when killing it. In the present patch I remove it also from dead windows (windows presumably stored in window configurations if they survived at least one collection cycle after their deletion). This should eliminate the necessity to scan these lists separately in the mark phase of the collector. - The old code erroneously has an internal window share the lists of previous/next buffers of a live window whenever that internal window is created by splitting the live window. If the live window is subsequently deleted but the internal window persists, these lists will continue to exist until the internal window is deleted. Since you cannot switch buffers in internal windows, these lists are completely useless while increasing memory overhead. The patch fixes this leak. Dead windows are kept in a weak hash table, adding a window when it is deleted and removing it when restoring it from a saved window configuration. The collector is supposed to remove all dead windows whose configurations have died in its finalization phase. For testing purposes, this hash table is accessible from Lisp via the variable 'window-dead-windows-table'. In earlier versions of Emacs, window configurations were mostly used to handle window excursions and were consequently rather short-lived. Your tab bar code has changed that. Hence we should try to avoid any leaks introduced by long-lived configurations. The hash table based code should also work for the incremental (MPS based) collector once it is capable of handling weak hash tables correctly. The present approach to emulate the above mentioned separate mark steps in Elisp is completely inadequate in this regard since it cannot identify dead windows. Please test the patch intensively and report any problems you see. I used the forms below to test the various features of the patch. martin (display-buffer (get-buffer-create "*foo*")) (display-buffer (get-buffer-create "*bar*")) (setq kill-buffer-quit-windows t) (kill-buffer "*bar*") (kill-buffer "*foo*") (setq foo (current-window-configuration)) (set-window-configuration foo) (setq foo nil) ; To reclaim all dead windows of foo (garbage-collect) (hash-table-count window-dead-windows-table) --------------LljYayqEV1Ur0nfWMbfh90n8 Content-Type: text/x-patch; charset=UTF-8; name="windows-and-buffers.diff" Content-Disposition: attachment; filename="windows-and-buffers.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2xpc3Avd2luZG93LmVsIGIvbGlzcC93aW5kb3cuZWwKaW5kZXggOWZj MmU1ZDY1ZTguLjBhODJhYTk5ODlkIDEwMDY0NAotLS0gYS9saXNwL3dpbmRvdy5lbAorKysg Yi9saXNwL3dpbmRvdy5lbApAQCAtNDU0MiwxNCArNDU0MiwxOCBAQCByZWNvcmQtd2luZG93 LWJ1ZmZlcgogICAgICAgKHB1c2gtd2luZG93LWJ1ZmZlci1vbnRvLXByZXYgd2luZG93KQog ICAgICAgKHJ1bi1ob29rcyAnYnVmZmVyLWxpc3QtdXBkYXRlLWhvb2spKSkpCiAKKzs7IEEg dmVyc2lvbiBpbiBDIHRoYXQgaGFuZGxlcyBkZWFkIHdpbmRvd3MgKHRoYXQgcHJlc3VtYWJs eSBhcmUgcGFydCBvZgorOzsgYSBzYXZlZCB3aW5kb3cgY29uZmlndXJhdGlvbikgbGl2ZXMg aW4gd2luZG93LmMgYW5kIGlzIGNhbGxlZAorOzsgd2luZG93X2Rpc2NhcmRfYnVmZmVyX2Zy b21fZGVhZF93aW5kb3cuICBXZSBjb3VsZCBjYWxsIHRoYXQgZnJvbSBoZXJlCis7OyBidXQg aXQgc2VlbXMgbW9yZSBwcmFjdGljYWwgdG8gaGFuZGxlIGxpdmUgd2luZG93cyBlbnRpcmVs eSBpbiBFbGlzcC4KIChkZWZ1biB1bnJlY29yZC13aW5kb3ctYnVmZmVyICgmb3B0aW9uYWwg d2luZG93IGJ1ZmZlcikKICAgIlVucmVjb3JkIEJVRkZFUiBpbiBXSU5ET1cuCi1XSU5ET1cg bXVzdCBiZSBhIGxpdmUgd2luZG93IGFuZCBkZWZhdWx0cyB0byB0aGUgc2VsZWN0ZWQgb25l LgotQlVGRkVSIG11c3QgYmUgYSBsaXZlIGJ1ZmZlciBhbmQgZGVmYXVsdHMgdG8gdGhlIGJ1 ZmZlciBvZgotV0lORE9XLgorV0lORE9XIG11c3QgYmUgYSBsaXZlIHdpbmRvdyBhbmQgZGVm YXVsdHMgdG8gdGhlIHNlbGVjdGVkIG9uZS4gIEJVRkZFUgorbXVzdCBiZSBhIGxpdmUgYnVm ZmVyIGFuZCBkZWZhdWx0cyB0byB0aGUgYnVmZmVyIG9mIFdJTkRPVyAoYWx0aG91Z2gKK3Ro YXQgZGVmYXVsdCBoYXJkbHkgbWFrZXMgYW55IHNlbnNlKS4KIAotTWFrZSBCVUZGRVIgZGlz YXBwZWFyIGZyb20gYWxsIHZhcmlhYmxlcyBtZW50aW9uZWQgYnkgdGhlIG9iamVjdCBvZgot V0lORE9XLiAgVGhpcyBpbmNsdWRlcyB0aGUgYnVmZmVycyBwcmV2aW91c2x5IHNod29uIGlu IFdJTkRPVyBhcyB3ZWxsIGFzCitNYWtlIEJVRkZFUiBkaXNhcHBlYXIgZnJvbSBtb3N0IGNv bXBvbmVudHMgc3BlY2lmaWVkIGJ5IHRoZSBvYmplY3Qgb2YKK1dJTkRPVy4gIFRoaXMgaW5j bHVkZXMgdGhlIGJ1ZmZlcnMgcHJldmlvdXNseSBzaG93biBpbiBXSU5ET1cgYXMgd2VsbCBh cwogYW55IGJ1ZmZlcnMgbWVudGlvbmVkIGJ5IFdJTkRPVydzIGBxdWl0LXJlc3RvcmUnIGFu ZCBgcXVpdC1yZXN0b3JlLXByZXYnCiBwYXJhbWV0ZXJzLiIKICAgKGxldCogKCh3aW5kb3cg KHdpbmRvdy1ub3JtYWxpemUtd2luZG93IHdpbmRvdyB0KSkKQEAgLTQ1NjIsNyArNDU2Niwx MyBAQCB1bnJlY29yZC13aW5kb3ctYnVmZmVyCiAgICAgICAgd2luZG93IChhc3NxLWRlbGV0 ZS1hbGwgYnVmZmVyICh3aW5kb3ctcHJldi1idWZmZXJzIHdpbmRvdykpKQogICAgICAgKHNl dC13aW5kb3ctbmV4dC1idWZmZXJzCiAgICAgICAgd2luZG93IChkZWxxIGJ1ZmZlciAod2lu ZG93LW5leHQtYnVmZmVycyB3aW5kb3cpKSkKLQorICAgICAgOzsgSWYgdGhlIGZvdXJ0aCBl bGVtZW50cyBvZiB0aGUgJ3F1aXQtcmVzdG9yZScgb3IKKyAgICAgIDs7ICdxdWl0LXJlc3Rv cmUtcHJldicgcGFyYW1ldGVycyBlcXVhbCBCVUZGRVIsIHRoZXNlIHBhcmFtZXRlcnMKKyAg ICAgIDs7IGJlY29tZSB1c2VsZXNzIC0gaW4gJ3F1aXQtcmVzdG9yZS13aW5kb3cnIHRoZSBm b3VydGggZWxlbWVudAorICAgICAgOzsgbXVzdCBlcXVhbCB0aGUgYnVmZmVyIG9mIFdJTkRP VyBpbiBvcmRlciB0byB1c2UgdGhhdCBwYXJhbWV0ZXIuCisgICAgICA7OyBJZiBCVUZGRVIg aXMgbWVudGlvbmVkIGluIHRoZSBzZWNvbmQgZWxlbWVudCBvZiB0aGUgcGFyYW1ldGVyLAor ICAgICAgOzsgJ3F1aXQtcmVzdG9yZS13aW5kb3cnIGNhbm5vdCBwb3NzaWJseSBzaG93IEJV RkZFUiBpbnN0ZWFkOyBzbworICAgICAgOzsgdGhpcyBwYXJhbWV0ZXIgYmVjb21lcyB1c2Vs ZXNzIHRvby4KICAgICAgICh3aGVuIChvciAoZXEgYnVmZmVyIChudGggMyBxdWl0LXJlc3Rv cmUtcHJldikpCiAJCShhbmQgKGxpc3RwIChzZXRxIHF1YWQgKG50aCAxIHF1aXQtcmVzdG9y ZS1wcmV2KSkpCiAJCSAgICAgKGVxIChjYXIgcXVhZCkgYnVmZmVyKSkpCkBAIC00NTcyLDcg KzQ1ODIsOCBAQCB1bnJlY29yZC13aW5kb3ctYnVmZmVyCiAJCShhbmQgKGxpc3RwIChzZXRx IHF1YWQgKG50aCAxIHF1aXQtcmVzdG9yZSkpKQogCQkgICAgIChlcSAoY2FyIHF1YWQpIGJ1 ZmZlcikpKQogCShzZXQtd2luZG93LXBhcmFtZXRlcgotCSB3aW5kb3cgJ3F1aXQtcmVzdG9y ZSAod2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZS1wcmV2KSkpKSkpCisJ IHdpbmRvdyAncXVpdC1yZXN0b3JlICh3aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVpdC1y ZXN0b3JlLXByZXYpKQorCShzZXQtd2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVz dG9yZS1wcmV2IG5pbCkpKSkpCiAKIChkZWZ1biBzZXQtd2luZG93LWJ1ZmZlci1zdGFydC1h bmQtcG9pbnQgKHdpbmRvdyBidWZmZXIgJm9wdGlvbmFsIHN0YXJ0IHBvaW50KQogICAiU2V0 IFdJTkRPVydzIGJ1ZmZlciB0byBCVUZGRVIuCkBAIC01MDkxLDYgKzUxMDIsMTggQEAgcHJl dmlvdXMtYnVmZmVyCiAgICAgICAgICAgICAgICAgIChub3QgKG9yIGV4ZWN1dGluZy1rYmQt bWFjcm8gbm9uaW50ZXJhY3RpdmUpKSkKICAgICAgICAgKHVzZXItZXJyb3IgIk5vIHByZXZp b3VzIGJ1ZmZlciIpKSkpKSkKIAorKGRlZmN1c3RvbSBraWxsLWJ1ZmZlci1xdWl0LXdpbmRv d3MgbmlsCisgICJOb24tbmlsIG1lYW5zIGtpbGxpbmcgYnVmZmVycyBzaGFsbCBxdWl0IHdp bmRvd3MuCitJZiB0aGlzIGlzIG5pbCwga2lsbGluZyBhIGJ1ZmZlciBtYXkgZGVsZXRlIGRl ZGljYXRlZCB3aW5kb3dzIG9ubHkuICBJZgordGhpcyBpcyBub24tbmlsLCBga2lsbC1idWZm ZXInIChhbmQgYHJlcGxhY2UtYnVmZmVyLWluLXdpbmRvd3MnIGluCitjb25zZXF1ZW5jZSkg aGF2ZSBgcXVpdC1yZXN0b3JlLXdpbmRvdycgZGVhbCB3aXRoIGFueSB3aW5kb3cgc2hvd2lu ZyB0aGUKK2J1ZmZlciB0byBiZSBraWxsZWQgd2hpY2ggbWF5IGRlbGV0ZSB0aGUgd2luZG93 IGlmIGl0J3Mgbm90IGRlZGljYXRlZCB0bworaXRzIGJ1ZmZlci4gIEFsc28sIGBkZWxldGUt d2luZG93cy1vbicgd2lsbCB1c2UgYHF1aXQtcmVzdG9yZS13aW5kb3cnIGFzCitmYWxsYmFj ayB3aGVuIGEgd2luZG93IGNhbm5vdCBiZSBkZWxldGVkIG90aGVyd2lzZS4iCisgIDp0eXBl ICdib29sZWFuCisgIDp2ZXJzaW9uICIzMS4xIgorICA6Z3JvdXAgJ3dpbmRvd3MpCisKIChk ZWZ1biBkZWxldGUtd2luZG93cy1vbiAoJm9wdGlvbmFsIGJ1ZmZlci1vci1uYW1lIGZyYW1l KQogICAiRGVsZXRlIGFsbCB3aW5kb3dzIHNob3dpbmcgQlVGRkVSLU9SLU5BTUUuCiBCVUZG RVItT1ItTkFNRSBtYXkgYmUgYSBidWZmZXIgb3IgdGhlIG5hbWUgb2YgYW4gZXhpc3Rpbmcg YnVmZmVyCkBAIC01MTI4LDggKzUxNTEsMTAgQEAgZGVsZXRlLXdpbmRvd3Mtb24KIHRlcm1p bmFsLCBkZWxldGUgdGhhdCBmcmFtZS4gIE90aGVyd2lzZSwgZG8gbm90IGRlbGV0ZSBhIGZy YW1lJ3Mgcm9vdAogd2luZG93IGlmIGl0IHNob3dzIHRoZSBidWZmZXIgc3BlY2lmaWVkIGJ5 IEJVRkZFUi1PUi1OQU1FIGFuZCBkbyBub3QKIGRlbGV0ZSBhbnkgZnJhbWUncyBtYWluIHdp bmRvdyBzaG93aW5nIHRoYXQgYnVmZmVyIGVpdGhlci4gIFJhdGhlciwgaW4KLWFueSBzdWNo IGNhc2UsIGNhbGwgYHF1aXQtcmVzdG9yZS13aW5kb3cnIHRvIHNob3cgYW5vdGhlciBidWZm ZXIgaW4gdGhhdAotd2luZG93IGFuZCBtYWtlIHN1cmUgdGhlIHdpbmRvdyBpcyBubyBtb3Jl IGRlZGljYXRlZCB0byBpdHMgYnVmZmVyLgorYW55IHN1Y2ggY2FzZSwgY2FsbCBlaXRoZXIg YHF1aXQtcmVzdG9yZS13aW5kb3cnIChwcm92aWRlZAorYGtpbGwtYnVmZmVyLXF1aXQtd2lu ZG93cycgaXMgbm9uLW5pbCkgb3IgYHN3aXRjaC10by1wcmV2LWJ1ZmZlcicgdG8KK3Nob3cg YW5vdGhlciBidWZmZXIgaW4gdGhhdCB3aW5kb3cgYW5kIG1ha2Ugc3VyZSB0aGUgd2luZG93 IGlzIG5vIG1vcmUKK2RlZGljYXRlZCB0byBpdHMgYnVmZmVyLgogCiBJZiB0aGUgYnVmZmVy IHNwZWNpZmllZCBieSBCVUZGRVItT1ItTkFNRSBpcyBzaG93biBpbiBhIG1pbmlidWZmZXIK IHdpbmRvdywgZG8gbm90aGluZyBmb3IgdGhhdCB3aW5kb3cuICBGb3IgYW55IHdpbmRvdyB0 aGF0IGRvZXMgbm90IHNob3cKQEAgLTUxNjYsOSArNTE5MSwxOCBAQCBkZWxldGUtd2luZG93 cy1vbgogCSAgICAgKChlcSBkZWxldGFibGUgdCkKIAkgICAgICA7OyBEZWxldGUgd2luZG93 LgogCSAgICAgIChkZWxldGUtd2luZG93IHdpbmRvdykpCisJICAgICAoa2lsbC1idWZmZXIt cXVpdC13aW5kb3dzCisJICAgICAgKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93ICdidXJ5 KQorCSAgICAgICh3aGVuICh3aW5kb3ctbGl2ZS1wIHdpbmRvdykKKwkJOzsgVW5yZWNvcmQg QlVGRkVSIGluIHRoaXMgd2luZG93LgorCQkodW5yZWNvcmQtd2luZG93LWJ1ZmZlciB3aW5k b3cgYnVmZmVyKSkpCiAJICAgICAodAotCSAgICAgICh3aGVuIChlcSAod2luZG93LWJ1ZmZl ciB3aW5kb3cpIGJ1ZmZlcikKLQkJKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93ICdidXJ5 KSkKKwkgICAgICA7OyBJbiB3aW5kb3cgc3dpdGNoIHRvIHByZXZpb3VzIGJ1ZmZlci4KKwkg ICAgICAoc2V0LXdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cgbmlsKQorCSAgICAgIChzd2l0 Y2gtdG8tcHJldi1idWZmZXIgd2luZG93ICdidXJ5KQorCSAgICAgIDs7IFJlc3RvcmUgdGhl IGRlZGljYXRlZCAnc2lkZScgZmxhZy4KKwkgICAgICAod2hlbiAoZXEgZGVkaWNhdGVkICdz aWRlKQorICAgICAgICAgICAgICAgIChzZXQtd2luZG93LWRlZGljYXRlZC1wIHdpbmRvdyAn c2lkZSkpCiAJICAgICAgKHdoZW4gKHdpbmRvdy1saXZlLXAgd2luZG93KQogCQk7OyBVbnJl Y29yZCBCVUZGRVIgaW4gdGhpcyB3aW5kb3cuCiAJCSh1bnJlY29yZC13aW5kb3ctYnVmZmVy IHdpbmRvdyBidWZmZXIpKSkpKQpAQCAtNTE3NywyOSArNTIxMSw0NiBAQCBkZWxldGUtd2lu ZG93cy1vbgogCiAoZGVmdW4gcmVwbGFjZS1idWZmZXItaW4td2luZG93cyAoJm9wdGlvbmFs IGJ1ZmZlci1vci1uYW1lKQogICAiUmVwbGFjZSBCVUZGRVItT1ItTkFNRSB3aXRoIHNvbWUg b3RoZXIgYnVmZmVyIGluIGFsbCB3aW5kb3dzIHNob3dpbmcgaXQuCi1CVUZGRVItT1ItTkFN RSBtYXkgYmUgYSBidWZmZXIgb3IgdGhlIG5hbWUgb2YgYW4gZXhpc3RpbmcgYnVmZmVyCi1h bmQgZGVmYXVsdHMgdG8gdGhlIGN1cnJlbnQgYnVmZmVyLiAgTWluaWJ1ZmZlciB3aW5kb3dz IGFyZSBub3QKLWNvbnNpZGVyZWQuCi0KLVdpdGggdGhlIGV4Y2VwdGlvbiBvZiBzaWRlIHdp bmRvd3MsIHdoZW4gYSB3aW5kb3cgc2hvd2luZyBCVUZGRVItT1ItTkFNRQotaXMgZGVkaWNh dGVkLCB0aGF0IHdpbmRvdyBpcyBkZWxldGVkLiAgSWYgdGhhdCB3aW5kb3cgaXMgdGhlIG9u bHkgd2luZG93Ci1vbiBpdHMgZnJhbWUsIHRoZSBmcmFtZSBpcyBkZWxldGVkIHRvbyB3aGVu IHRoZXJlIGFyZSBvdGhlciBmcmFtZXMgbGVmdC4KLUlmIHRoZXJlIGFyZSBubyBvdGhlciBm cmFtZXMgbGVmdCwgc29tZSBvdGhlciBidWZmZXIgaXMgZGlzcGxheWVkIGluIHRoYXQKK0JV RkZFUi1PUi1OQU1FIG1heSBiZSBhIGJ1ZmZlciBvciB0aGUgbmFtZSBvZiBhbiBleGlzdGlu ZyBidWZmZXIgYW5kCitkZWZhdWx0cyB0byB0aGUgY3VycmVudCBidWZmZXIuICBNaW5pYnVm ZmVyIHdpbmRvd3MgYXJlIG5vdCBjb25zaWRlcmVkLgorCitJZiB0aGUgb3B0aW9uIGBraWxs LWJ1ZmZlci1xdWl0LXdpbmRvd3MnIGlzIG5pbCwgYmVoYXZlIGFzIGZvbGxvd3M6IFdpdGgK K3RoZSBleGNlcHRpb24gb2Ygc2lkZSB3aW5kb3dzLCB3aGVuIGEgd2luZG93IHNob3dpbmcg QlVGRkVSLU9SLU5BTUUgaXMKK2RlZGljYXRlZCwgZGVsZXRlIHRoYXQgd2luZG93LiAgSWYg dGhhdCB3aW5kb3cgaXMgdGhlIG9ubHkgd2luZG93IG9uIGl0cworZnJhbWUsIGRlbGV0ZSBp dHMgZnJhbWUgd2hlbiB0aGVyZSBhcmUgb3RoZXIgZnJhbWVzIGxlZnQuICBJbiBhbnkgb3Ro ZXIKK2Nhc2UsIGNhbGwgYHN3aXRjaC10by1wcmV2LWJ1ZmZlcicgdG8gZGlzcGxheSBzb21l IG90aGVyIGJ1ZmZlciBpbiB0aGF0CiB3aW5kb3cuCiAKLVRoaXMgZnVuY3Rpb24gcmVtb3Zl cyB0aGUgYnVmZmVyIGRlbm90ZWQgYnkgQlVGRkVSLU9SLU5BTUUgZnJvbSBhbGwKLXdpbmRv dy1sb2NhbCBidWZmZXIgbGlzdHMgYW5kIHJlbW92ZXMgYW55IGBxdWl0LXJlc3RvcmUnIG9y Ci1gcXVpdC1yZXN0b3JlLXByZXYnIHBhcmFtZXRlcnMgbWVudGlvbmluZyBpdC4iCitJZiBg a2lsbC1idWZmZXItcXVpdC13aW5kb3dzJyBpcyBub24tbmlsLCBjYWxsIGBxdWl0LXJlc3Rv cmUtd2luZG93JyBmb3IKK2FueSB3aW5kb3cgc2hvd2luZyBCVUZGRVItT1ItTkFNRSB3aXRo IHRoZSBhcmd1bWVudCBCVVJZLU9SLUtJTEwgc2V0IHRvCitga2lsbGluZycgdG8gYXZvaWQg dGhhdCB0aGUgbGF0dGVyIGtpbGxzIHRoZSBidWZmZXIgcHJlbWF0dXJlbHkuCisKK0luIGVp dGhlciBjYXNlLCByZW1vdmUgdGhlIGJ1ZmZlciBkZW5vdGVkIGJ5IEJVRkZFUi1PUi1OQU1F IGZyb20gdGhlCitsaXN0cyBvZiBwcmV2aW91cyBhbmQgbmV4dCBidWZmZXJzIG9mIGFsbCB3 aW5kb3dzIGFuZCByZW1vdmUgYW55CitgcXVpdC1yZXN0b3JlJyBvciBgcXVpdC1yZXN0b3Jl LXByZXYnIHBhcmFtZXRlcnMgbWVudGlvbmluZyBpdC4KKworVGhpcyBmdW5jdGlvbiBpcyBj YWxsZWQgYnkgYGtpbGwtYnVmZmVyJyB3aGljaCBraWxscyB0aGUgYnVmZmVyCitzcGVjaWZp ZWQgYnkgYGJ1ZmZlci1vci1uYW1lJyBhZnRlcndhcmRzLiAgSXQgbmV2ZXIga2lsbHMgYSBi dWZmZXIgYnkKK2l0c2VsZi4iCiAgIChpbnRlcmFjdGl2ZSAiYkJ1ZmZlciB0byByZXBsYWNl OiAiKQogICAobGV0ICgoYnVmZmVyICh3aW5kb3ctbm9ybWFsaXplLWJ1ZmZlciBidWZmZXIt b3ItbmFtZSkpKQotICAgIDs7IFNjYW4gYWxsIHdpbmRvd3MuICBXZSBoYXZlIHRvIHVucmVj b3JkIEJVRkZFUiBpbiB0aG9zZSBub3QKLSAgICA7OyBzaG93aW5nIGl0LgorICAgIDs7IFNj YW4gYWxsIHdpbmRvd3MuICBXZSBoYXZlIHRvIHVucmVjb3JkIEJVRkZFUi1PUi1OQU1FIGlu IHRob3NlCisgICAgOzsgbm90IHNob3dpbmcgaXQuCiAgICAgKGRvbGlzdCAod2luZG93ICh3 aW5kb3ctbGlzdC0xIG5pbCBuaWwgdCkpCiAgICAgICAod2hlbiAoZXEgKHdpbmRvdy1idWZm ZXIgd2luZG93KSBidWZmZXIpCi0JKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93KSkKLSAg ICAgICh3aGVuICh3aW5kb3ctbGl2ZS1wIHdpbmRvdykKLQk7OyBVbnJlY29yZCBCVUZGRVIg aW4gdGhpcyB3aW5kb3cuCi0JKHVucmVjb3JkLXdpbmRvdy1idWZmZXIgd2luZG93IGJ1ZmZl cikpKSkpCisJKGlmIGtpbGwtYnVmZmVyLXF1aXQtd2luZG93cworCSAgICAocXVpdC1yZXN0 b3JlLXdpbmRvdyB3aW5kb3cgJ2tpbGxpbmcpCisJICAobGV0ICgoZGVkaWNhdGVkLXNpZGUg KGVxICh3aW5kb3ctZGVkaWNhdGVkLXAgd2luZG93KSAnc2lkZSkpKQorICAgICAgICAgICAg KHdoZW4gKG9yIGRlZGljYXRlZC1zaWRlIChub3QgKHdpbmRvdy0tZGVsZXRlIHdpbmRvdyB0 ICdraWxsKSkpCisJICAgICAgOzsgU3dpdGNoIHRvIGFub3RoZXIgYnVmZmVyIGluIHRoYXQg d2luZG93LgorCSAgICAgIChzZXQtd2luZG93LWRlZGljYXRlZC1wIHdpbmRvdyBuaWwpCisJ ICAgICAgKGlmIChzd2l0Y2gtdG8tcHJldi1idWZmZXIgd2luZG93ICdraWxsKQorICAgICAg ICAgICAgICAgICAgKGFuZCBkZWRpY2F0ZWQtc2lkZSAoc2V0LXdpbmRvdy1kZWRpY2F0ZWQt cCB3aW5kb3cgJ3NpZGUpKQorCQkod2luZG93LS1kZWxldGUgd2luZG93IG5pbCAna2lsbCkp KSkpKQorCisJKHdoZW4gKHdpbmRvdy1saXZlLXAgd2luZG93KQorCSAgOzsgVW5yZWNvcmQg QlVGRkVSIGluIHRoaXMgd2luZG93LgorCSAgKHVucmVjb3JkLXdpbmRvdy1idWZmZXIgd2lu ZG93IGJ1ZmZlcikpKSkpCiAKIChkZWZjdXN0b20gcXVpdC13aW5kb3ctaG9vayBuaWwKICAg Ikhvb2sgcnVuIGJlZm9yZSBwZXJmb3JtaW5nIGFueSBvdGhlciBhY3Rpb25zIGluIHRoZSBg cXVpdC13aW5kb3cnIGNvbW1hbmQuIgpAQCAtNTI0OSw3ICs1MzAwLDE0IEBAIHF1aXQtcmVz dG9yZS13aW5kb3cKICAgbW9zdCByZWxpYWJsZSByZW1lZHkgdG8gbm90IGhhdmUgYHN3aXRj aC10by1wcmV2LWJ1ZmZlcicgc3dpdGNoCiAgIHRvIHRoaXMgYnVmZmVyIGFnYWluIHdpdGhv dXQga2lsbGluZyB0aGUgYnVmZmVyLgogCi1ga2lsbCcgbWVhbnMgdG8ga2lsbCBXSU5ET1cn cyBidWZmZXIuIgorYGtpbGwnIG1lYW5zIHRvIGtpbGwgV0lORE9XJ3MgYnVmZmVyLgorCitg a2lsbGluZycgaXMgbGlrZSBga2lsbCcgYnV0IG1lYW5zIHRoYXQgV0lORE9XJ3MgYnVmZmVy IHdpbGwgZ2V0IGtpbGxlZAorZWxzZXdoZXJlLiAgVGhpcyB2YWx1ZSBpcyB1c2VkIGJ5IGBy ZXBsYWNlLWJ1ZmZlci1pbi13aW5kb3dzJyBhbmQKK2BxdWl0LXdpbmRvd3Mtb24nLgorCitg YnVyeWluZycgaXMgbGlrZSBgYnVyeScgYnV0IG1lYW5zIHRoYXQgV0lORE9XJ3MgYnVmZmVy IHdpbGwgZ2V0IGJ1cmllZAorZWxzZXdoZXJlLiAgVGhpcyB2YWx1ZSBpcyB1c2VkIGJ5IGBx dWl0LXdpbmRvd3Mtb24nLiIKICAgKHNldHEgd2luZG93ICh3aW5kb3ctbm9ybWFsaXplLXdp bmRvdyB3aW5kb3cgdCkpCiAgIChsZXQqICgoYnVmZmVyICh3aW5kb3ctYnVmZmVyIHdpbmRv dykpCiAJIChxdWl0LXJlc3RvcmUgKHdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJl c3RvcmUpKQpAQCAtNTI2NSwzMiArNTMyMywzMCBAQCBxdWl0LXJlc3RvcmUtd2luZG93CiAg ICAgKGNvbmQKICAgICAgOzsgRmlyc3QgdHJ5IHRvIGRlbGV0ZSBkZWRpY2F0ZWQgd2luZG93 cyB0aGF0IGFyZSBub3Qgc2lkZSB3aW5kb3dzLgogICAgICAoKGFuZCBkZWRpY2F0ZWQgKG5v dCAoZXEgZGVkaWNhdGVkICdzaWRlKSkKLSAgICAgICAgICAgKHdpbmRvdy0tZGVsZXRlIHdp bmRvdyAnZGVkaWNhdGVkIChlcSBidXJ5LW9yLWtpbGwgJ2tpbGwpKSkKKyAgICAgICAgICAg KHdpbmRvdy0tZGVsZXRlCisJICAgIHdpbmRvdyAnZGVkaWNhdGVkIChtZW1xIGJ1cnktb3It a2lsbCAnKGtpbGwga2lsbGluZykpKSkKICAgICAgIDs7IElmIHRoZSBwcmV2aW91c2x5IHNl bGVjdGVkIHdpbmRvdyBpcyBzdGlsbCBhbGl2ZSwgc2VsZWN0IGl0LgogICAgICAgKHdpbmRv dy0tcXVpdC1yZXN0b3JlLXNlbGVjdC13aW5kb3cgcXVpdC1yZXN0b3JlLTIpKQogICAgICAo KGFuZCAobm90IHByZXYtYnVmZmVyKQogCSAgIChlcSAobnRoIDEgcXVpdC1yZXN0b3JlKSAn dGFiKQotCSAgIChlcSAobnRoIDMgcXVpdC1yZXN0b3JlKSBidWZmZXIpKQorCSAgIChlcSAo bnRoIDMgcXVpdC1yZXN0b3JlKSBidWZmZXIpCisJICAgKDwgKHNlcS1jb3VudCAobGFtYmRh ICh3KSAod2luZG93LXBhcmFtZXRlciB3ICdxdWl0LXJlc3RvcmUpKQorCQkgICAgICAgICAo d2luZG93LWxpc3QtMSBuaWwgJ25vbWluaSkpCisgICAgICAgICAgICAgIDIpKQogICAgICAg KHRhYi1iYXItY2xvc2UtdGFiKQogICAgICAgOzsgSWYgdGhlIHByZXZpb3VzbHkgc2VsZWN0 ZWQgd2luZG93IGlzIHN0aWxsIGFsaXZlLCBzZWxlY3QgaXQuCiAgICAgICAod2luZG93LS1x dWl0LXJlc3RvcmUtc2VsZWN0LXdpbmRvdyBxdWl0LXJlc3RvcmUtMikpCiAgICAgICgoYW5k IChub3QgcHJldi1idWZmZXIpCi0JICAgKG9yIChhbmQgKG9yIChlcSAobnRoIDEgcXVpdC1y ZXN0b3JlKSAnZnJhbWUpCi0JCQkoYW5kIChlcSAobnRoIDEgcXVpdC1yZXN0b3JlKSAnd2lu ZG93KQotCQkJICAgICA7OyBJZiB0aGUgd2luZG93IGhhcyBiZWVuIGNyZWF0ZWQgb24gYW4K LQkJCSAgICAgOzsgZXhpc3RpbmcgZnJhbWUgYW5kIGVuZGVkIHVwIGFzIHRoZSBzb2xlCi0J CQkgICAgIDs7IHdpbmRvdyBvbiB0aGF0IGZyYW1lLCBkbyBub3QgZGVsZXRlIGl0Ci0JCQkg ICAgIDs7IChCdWcjMTI3NjQpLgotCQkJICAgICAobm90IChlcSB3aW5kb3cgKGZyYW1lLXJv b3Qtd2luZG93IHdpbmRvdykpKSkpCi0JCSAgICAoZXEgKG50aCAzIHF1aXQtcmVzdG9yZSkg YnVmZmVyKSkKLQkgICAgICAgKGFuZCAob3IgKGVxIChudGggMSBxdWl0LXJlc3RvcmUtcHJl dikgJ2ZyYW1lKQotCQkJKGFuZCAoZXEgKG50aCAxIHF1aXQtcmVzdG9yZS1wcmV2KSAnd2lu ZG93KQotCQkJICAgICAobm90IChlcSB3aW5kb3cgKGZyYW1lLXJvb3Qtd2luZG93IHdpbmRv dykpKSkpCi0JCSAgICAoZXEgKG50aCAzIHF1aXQtcmVzdG9yZS1wcmV2KSBidWZmZXIpCi0J CSAgICA7OyBVc2Ugc2VsZWN0ZWQgd2luZG93IGZyb20gcXVpdC1yZXN0b3JlLXByZXYuCi0J CSAgICAoc2V0cSBxdWl0LXJlc3RvcmUtMiBxdWl0LXJlc3RvcmUtcHJldi0yKSkpCisJICAg KG9yIChlcSAobnRoIDEgcXVpdC1yZXN0b3JlKSAnZnJhbWUpCisJICAgICAgIChhbmQgKGVx IChudGggMSBxdWl0LXJlc3RvcmUpICd3aW5kb3cpCisJCSAgICA7OyBJZiB0aGUgd2luZG93 IGhhcyBiZWVuIGNyZWF0ZWQgb24gYW4gZXhpc3RpbmcKKwkJICAgIDs7IGZyYW1lIGFuZCBl bmRlZCB1cCBhcyB0aGUgc29sZSB3aW5kb3cgb24gdGhhdAorCQkgICAgOzsgZnJhbWUsIGRv IG5vdCBkZWxldGUgaXQgKEJ1ZyMxMjc2NCkuCisJCSAgICAobm90IChlcSB3aW5kb3cgKGZy YW1lLXJvb3Qtd2luZG93IHdpbmRvdykpKSkpCisJICAgKGVxIChudGggMyBxdWl0LXJlc3Rv cmUpIGJ1ZmZlcikKIAkgICA7OyBEZWxldGUgV0lORE9XIGlmIHBvc3NpYmxlLgotCSAgICh3 aW5kb3ctLWRlbGV0ZSB3aW5kb3cgbmlsIChlcSBidXJ5LW9yLWtpbGwgJ2tpbGwpKSkKKwkg ICAod2luZG93LS1kZWxldGUKKwkgICAgd2luZG93IG5pbCAobWVtcSBidXJ5LW9yLWtpbGwg JyhraWxsIGtpbGxpbmcpKSkpCiAgICAgICA7OyBJZiB0aGUgcHJldmlvdXNseSBzZWxlY3Rl ZCB3aW5kb3cgaXMgc3RpbGwgYWxpdmUsIHNlbGVjdCBpdC4KICAgICAgICh3aW5kb3ctLXF1 aXQtcmVzdG9yZS1zZWxlY3Qtd2luZG93IHF1aXQtcmVzdG9yZS0yKSkKICAgICAgKChvciAo YW5kIChsaXN0cCAoc2V0cSBxdWFkIChudGggMSBxdWl0LXJlc3RvcmUtcHJldikpKQpAQCAt NTMyOCw3ICs1Mzg0LDcgQEAgcXVpdC1yZXN0b3JlLXdpbmRvdwogICAgICAgOzsgRGVhbCB3 aXRoIHRoZSBidWZmZXIgd2UganVzdCByZW1vdmVkIGZyb20gV0lORE9XLgogICAgICAgKHNl dHEgZW50cnkgKGFuZCAoZXEgYnVyeS1vci1raWxsICdhcHBlbmQpCiAJCSAgICAgICAoYXNz cSBidWZmZXIgKHdpbmRvdy1wcmV2LWJ1ZmZlcnMgd2luZG93KSkpKQotICAgICAgKHdoZW4g YnVyeS1vci1raWxsCisgICAgICAod2hlbiAobWVtcSBidXJ5LW9yLWtpbGwgJyhidXJ5IGJ1 cnlpbmcga2lsbCBraWxsaW5nKSkKIAk7OyBSZW1vdmUgYnVmZmVyIGZyb20gV0lORE9XJ3Mg cHJldmlvdXMgYW5kIG5leHQgYnVmZmVycy4KIAkoc2V0LXdpbmRvdy1wcmV2LWJ1ZmZlcnMK IAkgd2luZG93IChhc3NxLWRlbGV0ZS1hbGwgYnVmZmVyICh3aW5kb3ctcHJldi1idWZmZXJz IHdpbmRvdykpKQpAQCAtNTM1OSwxMyArNTQxNSwxNCBAQCBxdWl0LXJlc3RvcmUtd2luZG93 CiAgICAgICAoaWYgKHN3aXRjaC10by1wcmV2LWJ1ZmZlciB3aW5kb3cgYnVyeS1vci1raWxs KQogICAgICAgICAgICh3aGVuIChlcSBkZWRpY2F0ZWQgJ3NpZGUpCiAgICAgICAgICAgICAo c2V0LXdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cgJ3NpZGUpKQotICAgICAgICAod2luZG93 LS1kZWxldGUgd2luZG93IG5pbCAoZXEgYnVyeS1vci1raWxsICdraWxsKSkpKSkKKyAgICAg ICAgKHdpbmRvdy0tZGVsZXRlCisJIHdpbmRvdyBuaWwgKG1lbXEgYnVyeS1vci1raWxsICco a2lsbCBraWxsaW5nKSkpKSkpCiAgICAgOzsgRGVhbCB3aXRoIHRoZSBidWZmZXIuCiAgICAg KGNvbmQKICAgICAgKChub3QgKGJ1ZmZlci1saXZlLXAgYnVmZmVyKSkpCiAgICAgICgoZXEg YnVyeS1vci1raWxsICdraWxsKQogICAgICAgKGtpbGwtYnVmZmVyIGJ1ZmZlcikpCi0gICAg IChidXJ5LW9yLWtpbGwKKyAgICAgKChlcSBidXJ5LW9yLWtpbGwgJ2J1cnkpCiAgICAgICAo YnVyeS1idWZmZXItaW50ZXJuYWwgYnVmZmVyKSkpKSkKIAogKGRlZnVuIHF1aXQtd2luZG93 ICgmb3B0aW9uYWwga2lsbCB3aW5kb3cpCkBAIC01NDA2LDExICs1NDYzLDE4IEBAIHF1aXQt d2luZG93cy1vbgogCShmcmFtZXMgKGNvbmQgKChub3QgZnJhbWUpIHQpICgoZXEgZnJhbWUg dCkgbmlsKSAodCBmcmFtZSkpKSkKICAgICAoZG9saXN0ICh3aW5kb3cgKHdpbmRvdy1saXN0 LTEgbmlsIG5pbCBmcmFtZXMpKQogICAgICAgKHdoZW4gKGVxICh3aW5kb3ctYnVmZmVyIHdp bmRvdykgYnVmZmVyKQotCShxdWl0LXJlc3RvcmUtd2luZG93IHdpbmRvdyBraWxsKSkKKwko cXVpdC1yZXN0b3JlLXdpbmRvdworCSB3aW5kb3cgKGlmIGtpbGwgJ2tpbGxpbmcgJ2J1cnlp bmcpKSkKIAogICAgICAgKHdoZW4gKHdpbmRvdy1saXZlLXAgd2luZG93KQogCTs7IFVucmVj b3JkIEJVRkZFUiBpbiB0aGlzIHdpbmRvdy4KLQkodW5yZWNvcmQtd2luZG93LWJ1ZmZlciB3 aW5kb3cgYnVmZmVyKSkpKSkKKwkodW5yZWNvcmQtd2luZG93LWJ1ZmZlciB3aW5kb3cgYnVm ZmVyKSkpCisKKyAgICA7OyBEZWFsIHdpdGggQlVGRkVSLU9SLU5BTUUuCisgICAgKGNvbmQK KyAgICAgKChub3QgKGJ1ZmZlci1saXZlLXAgYnVmZmVyKSkpCisgICAgIChraWxsIChraWxs LWJ1ZmZlciBidWZmZXIpKQorICAgICAodCAoYnVyeS1idWZmZXItaW50ZXJuYWwgYnVmZmVy KSkpKSkKIAwKIChkZWZ1biB3aW5kb3ctLWNvbWJpbmF0aW9uLXJlc2l6YWJsZSAocGFyZW50 ICZvcHRpb25hbCBob3Jpem9udGFsKQogICAiUmV0dXJuIG51bWJlciBvZiBwaXhlbHMgcmVj b3ZlcmFibGUgZnJvbSBoZWlnaHQgb2Ygd2luZG93IFBBUkVOVC4KQEAgLTY3MjMsOSArNjc4 NywxMSBAQCBkaXNwbGF5LWJ1ZmZlci1yZWNvcmQtd2luZG93CiAKIElmIFRZUEUgaXMgYHJl dXNlJywgQlVGRkVSIGlzIGRpZmZlcmVudCBmcm9tIHRoZSBvbmUgY3VycmVudGx5IGRpc3Bs YXllZAogaW4gV0lORE9XLCBhbmQgV0lORE9XIGFscmVhZHkgaGFzIGEgYHF1aXQtcmVzdG9y ZScgcGFyYW1ldGVyLCBpbnN0YWxsIG9yCi11cGRhdGUgYSBgcXVpdC1yZXN0b3JlLXByZXYn IHBhcmFtZXRlciBmb3IgdGhpcyB3aW5kb3cgdGhhdCBhbGxvd3MgdG8KLXF1aXQgV0lORE9X IGluIGEgc2ltaWxhciBmYXNoaW9uIGJ1dCByZW1lbWJlcnMgdGhlIHZlcnkgZmlyc3QgaW4g YQotc2VyaWVzIG9mIGJ1ZmZlciBkaXNwbGF5IG9wZXJhdGlvbnMgZm9yIHRoaXMgd2luZG93 LiIKK3VwZGF0ZSBhIGBxdWl0LXJlc3RvcmUtcHJldicgcGFyYW1ldGVyIGZvciB0aGlzIHdp bmRvdy4gIFRoaXMgYWxsb3dzIGZvcgorcXVpdHRpbmcgV0lORE9XIGluIGEgc2ltaWxhciBm YXNoaW9uIGJ1dCBhbHNvIGtlZXBzIHRoZSB2ZXJ5IGZpcnN0CitgcXVpdC1yZXN0b3JlJyBw YXJhbWV0ZXIgc3RvcmVkIGZvciB0aGlzIHdpbmRvdyBhcm91bmQuICBDb25zZXF1ZW50bHks CitXSU5ET1cgKG9yIGl0cyBmcmFtZSkgY2FuIGJlIGV2ZW50dWFsbHkgZGVsZXRlZCBieSBg cXVpdC1yZXN0b3JlLXdpZG93JworaWYgdGhhdCBwYXJhbWV0ZXIncyBmb3VydGggZWxlbWVu dCBlcXVhbHMgV0lORE9XJ3MgYnVmZmVyLiIKICAgKGNvbmQKICAgICgoZXEgdHlwZSAncmV1 c2UpCiAgICAgKGlmIChlcSAod2luZG93LWJ1ZmZlciB3aW5kb3cpIGJ1ZmZlcikKZGlmZiAt LWdpdCBhL3NyYy9hbGxvYy5jIGIvc3JjL2FsbG9jLmMKaW5kZXggNjY2Zjc3YmZjZTEuLmI5 NTU2NTFmNWMwIDEwMDY0NAotLS0gYS9zcmMvYWxsb2MuYworKysgYi9zcmMvYWxsb2MuYwpA QCAtNjk5OCwzMyArNjk5OCw2IEBAIG1hcmtfZmFjZV9jYWNoZSAoc3RydWN0IGZhY2VfY2Fj aGUgKmMpCiAgICAgfQogfQogCi0vKiBSZW1vdmUga2lsbGVkIGJ1ZmZlcnMgb3IgaXRlbXMg d2hvc2UgY2FyIGlzIGEga2lsbGVkIGJ1ZmZlciBmcm9tCi0gICBMSVNULCBhbmQgbWFyayBv dGhlciBpdGVtcy4gIFJldHVybiBjaGFuZ2VkIExJU1QsIHdoaWNoIGlzIG1hcmtlZC4gICov Ci0KLXN0YXRpYyBMaXNwX09iamVjdAotbWFya19kaXNjYXJkX2tpbGxlZF9idWZmZXJzIChM aXNwX09iamVjdCBsaXN0KQotewotICBMaXNwX09iamVjdCB0YWlsLCAqcHJldiA9ICZsaXN0 OwotCi0gIGZvciAodGFpbCA9IGxpc3Q7IENPTlNQICh0YWlsKSAmJiAhY29uc19tYXJrZWRf cCAoWENPTlMgKHRhaWwpKTsKLSAgICAgICB0YWlsID0gWENEUiAodGFpbCkpCi0gICAgewot ICAgICAgTGlzcF9PYmplY3QgdGVtID0gWENBUiAodGFpbCk7Ci0gICAgICBpZiAoQ09OU1Ag KHRlbSkpCi0JdGVtID0gWENBUiAodGVtKTsKLSAgICAgIGlmIChCVUZGRVJQICh0ZW0pICYm ICFCVUZGRVJfTElWRV9QIChYQlVGRkVSICh0ZW0pKSkKLQkqcHJldiA9IFhDRFIgKHRhaWwp OwotICAgICAgZWxzZQotCXsKLQkgIHNldF9jb25zX21hcmtlZCAoWENPTlMgKHRhaWwpKTsK LQkgIG1hcmtfb2JqZWN0IChYQ0FSICh0YWlsKSk7Ci0JICBwcmV2ID0geGNkcl9hZGRyICh0 YWlsKTsKLQl9Ci0gICAgfQotICBtYXJrX29iamVjdCAodGFpbCk7Ci0gIHJldHVybiBsaXN0 OwotfQotCiBzdGF0aWMgdm9pZAogbWFya19mcmFtZSAoc3RydWN0IExpc3BfVmVjdG9yICpw dHIpCiB7CkBAIC03MDc5LDE1ICs3MDUyLDYgQEAgbWFya193aW5kb3cgKHN0cnVjdCBMaXNw X1ZlY3RvciAqcHRyKQogICAgICAgbWFya19nbHlwaF9tYXRyaXggKHctPmN1cnJlbnRfbWF0 cml4KTsKICAgICAgIG1hcmtfZ2x5cGhfbWF0cml4ICh3LT5kZXNpcmVkX21hdHJpeCk7CiAg ICAgfQotCi0gIC8qIEZpbHRlciBvdXQga2lsbGVkIGJ1ZmZlcnMgZnJvbSBib3RoIGJ1ZmZl ciBsaXN0cwotICAgICBpbiBhdHRlbXB0IHRvIGhlbHAgR0MgdG8gcmVjbGFpbSBraWxsZWQg YnVmZmVycyBmYXN0ZXIuCi0gICAgIFdlIGNhbiBkbyBpdCBlbHNld2hlcmUgZm9yIGxpdmUg d2luZG93cywgYnV0IHRoaXMgaXMgdGhlCi0gICAgIGJlc3QgcGxhY2UgdG8gZG8gaXQgZm9y IGRlYWQgd2luZG93cy4gICovCi0gIHdzZXRfcHJldl9idWZmZXJzCi0gICAgKHcsIG1hcmtf ZGlzY2FyZF9raWxsZWRfYnVmZmVycyAody0+cHJldl9idWZmZXJzKSk7Ci0gIHdzZXRfbmV4 dF9idWZmZXJzCi0gICAgKHcsIG1hcmtfZGlzY2FyZF9raWxsZWRfYnVmZmVycyAody0+bmV4 dF9idWZmZXJzKSk7CiB9CiAKIC8qIEVudHJ5IG9mIHRoZSBtYXJrIHN0YWNrLiAgKi8KZGlm ZiAtLWdpdCBhL3NyYy9idWZmZXIuYyBiL3NyYy9idWZmZXIuYwppbmRleCA3NDRiMGVmNTU0 OC4uNmVjNDBhZmY2NDYgMTAwNjQ0Ci0tLSBhL3NyYy9idWZmZXIuYworKysgYi9zcmMvYnVm ZmVyLmMKQEAgLTIwMTIsNiArMjAxMiwxMyBAQCBERUZVTiAoImtpbGwtYnVmZmVyIiwgRmtp bGxfYnVmZmVyLCBTa2lsbF9idWZmZXIsIDAsIDEsICJiS2lsbCBidWZmZXI6ICIsCiAgICAg IGJ1ZmZlciAoYnVnIzEwMTE0KS4gICovCiAgIHJlcGxhY2VfYnVmZmVyX2luX3dpbmRvd3Mg KGJ1ZmZlcik7CiAKKyAgLyogRm9yIGRlYWQgd2luZG93cyB0aGF0IGhhdmUgbm90IGJlZW4g Y29sbGVjdGVkIHlldCwgcmVtb3ZlIHRoaXMKKyAgICAgYnVmZmVyIGZyb20gdGhvc2Ugd2lu ZG93cycgbGlzdHMgb2YgcHJldmlvdXNseSBhbmQgbmV4dCBzaG93bgorICAgICBidWZmZXJz IGFuZCByZW1vdmUgYW55ICdxdWl0LXJlc3RvcmUnIG9yICdxdWl0LXJlc3RvcmUtcHJldicK KyAgICAgcGFyYW1ldGVycyBtZW50aW9uaW5nIHRoZSBidWZmZXIuICAqLworICBpZiAoWEZJ WE5VTSAoQlZBUiAoYiwgZGlzcGxheV9jb3VudCkpID4gMCkKKyAgICB3aW5kb3dfZGlzY2Fy ZF9idWZmZXJfZnJvbV9kZWFkX3dpbmRvd3MgKGJ1ZmZlcik7CisKICAgLyogRXhpdCBpZiBy ZXBsYWNpbmcgdGhlIGJ1ZmZlciBpbiB3aW5kb3dzIGhhcyBraWxsZWQgb3VyIGJ1ZmZlci4g ICovCiAgIGlmICghQlVGRkVSX0xJVkVfUCAoYikpCiAgICAgcmV0dXJuIFF0OwpkaWZmIC0t Z2l0IGEvc3JjL3dpbmRvdy5jIGIvc3JjL3dpbmRvdy5jCmluZGV4IGZmMjhiYWM1MzA2Li5k ZDBhYmU4NGZkZiAxMDA2NDQKLS0tIGEvc3JjL3dpbmRvdy5jCisrKyBiL3NyYy93aW5kb3cu YwpAQCAtMzI3Nyw2ICszMjc3LDkwIEBAIHdpbmRvd19waXhlbF90b190b3RhbCAoTGlzcF9P YmplY3QgZnJhbWUsIExpc3BfT2JqZWN0IGhvcml6b250YWwpCiB9CiAKIAorLyogUmVtb3Zl IGZpcnN0IG9jY3VycmVuY2Ugb2YgZWxlbWVudCB3aG9zZSBjYXIgaXMgQlVGRkVSIGZyb20g QUxJU1QuCisgICBSZXR1cm4gY2hhbmdlZCBBTElTVC4gICovCitzdGF0aWMgTGlzcF9PYmpl Y3QKK3dpbmRvd19kaXNjYXJkX2J1ZmZlcl9mcm9tX2FsaXN0IChMaXNwX09iamVjdCBidWZm ZXIsIExpc3BfT2JqZWN0IGFsaXN0KQoreworICBMaXNwX09iamVjdCB0YWlsLCAqcHJldiA9 ICZhbGlzdDsKKworICBmb3IgKHRhaWwgPSBhbGlzdDsgQ09OU1AgKHRhaWwpOyB0YWlsID0g WENEUiAodGFpbCkpCisgICAgeworICAgICAgTGlzcF9PYmplY3QgdGVtID0gWENBUiAodGFp bCk7CisKKyAgICAgIHRlbSA9IFhDQVIgKHRlbSk7CisKKyAgICAgIGlmIChFUSAodGVtLCBi dWZmZXIpKQorCXsKKwkgICpwcmV2ID0gWENEUiAodGFpbCk7CisJICBicmVhazsKKwl9Cisg ICAgICBlbHNlCisJcHJldiA9IHhjZHJfYWRkciAodGFpbCk7CisgICAgfQorCisgIHJldHVy biBhbGlzdDsKK30KKworLyogUmVtb3ZlIGZpcnN0IG9jY3VycmVuY2Ugb2YgQlVGRkVSIGZy b20gTElTVC4gIFJldHVybiBjaGFuZ2VkCisgICBMSVNULiAgKi8KK3N0YXRpYyBMaXNwX09i amVjdAord2luZG93X2Rpc2NhcmRfYnVmZmVyX2Zyb21fbGlzdCAoTGlzcF9PYmplY3QgYnVm ZmVyLCBMaXNwX09iamVjdCBsaXN0KQoreworICBMaXNwX09iamVjdCB0YWlsLCAqcHJldiA9 ICZsaXN0OworCisgIGZvciAodGFpbCA9IGxpc3Q7IENPTlNQICh0YWlsKTsgdGFpbCA9IFhD RFIgKHRhaWwpKQorICAgIHsKKyAgICAgIGlmIChFUSAoWENBUiAodGFpbCksIGJ1ZmZlcikp CisJeworCSAgKnByZXYgPSBYQ0RSICh0YWlsKTsKKwkgIGJyZWFrOworCX0KKyAgICAgIGVs c2UKKwlwcmV2ID0geGNkcl9hZGRyICh0YWlsKTsKKyAgICB9CisKKyAgcmV0dXJuIGxpc3Q7 Cit9CisKK3N0YXRpYyB2b2lkCit3aW5kb3dfZGlzY2FyZF9idWZmZXJfZnJvbV9kZWFkX3dp bmRvdyAoTGlzcF9PYmplY3QgYnVmZmVyLCBMaXNwX09iamVjdCB3aW5kb3cpCit7CisgIHN0 cnVjdCB3aW5kb3cgKncgPSBYV0lORE9XICh3aW5kb3cpOworICBMaXNwX09iamVjdCBxdWl0 X3Jlc3RvcmUgPSB3aW5kb3dfcGFyYW1ldGVyICh3LCBRcXVpdF9yZXN0b3JlKTsKKyAgTGlz cF9PYmplY3QgcXVpdF9yZXN0b3JlX3ByZXYgPSB3aW5kb3dfcGFyYW1ldGVyICh3LCBRcXVp dF9yZXN0b3JlX3ByZXYpOworICBMaXNwX09iamVjdCBxdWFkOworCisgIHdzZXRfcHJldl9i dWZmZXJzCisgICAgKHcsIHdpbmRvd19kaXNjYXJkX2J1ZmZlcl9mcm9tX2FsaXN0IChidWZm ZXIsIHctPnByZXZfYnVmZmVycykpOworICB3c2V0X25leHRfYnVmZmVycworICAgICh3LCB3 aW5kb3dfZGlzY2FyZF9idWZmZXJfZnJvbV9saXN0IChidWZmZXIsIHctPm5leHRfYnVmZmVy cykpOworCisgIGlmIChFUSAoYnVmZmVyLCBGbnRoIChtYWtlX2ZpeG51bSAoMyksIHF1aXRf cmVzdG9yZV9wcmV2KSkKKyAgICAgIHx8IChDT05TUCAocXVhZCA9IEZjYXIgKEZjZHIgKHF1 aXRfcmVzdG9yZV9wcmV2KSkpCisJICAmJiBFUSAoRmNhciAocXVhZCksIGJ1ZmZlcikpKQor ICAgIEZzZXRfd2luZG93X3BhcmFtZXRlciAod2luZG93LCBRcXVpdF9yZXN0b3JlX3ByZXYs IFFuaWwpOworCisgIGlmIChFUSAoYnVmZmVyLCBGbnRoIChtYWtlX2ZpeG51bSAoMyksIHF1 aXRfcmVzdG9yZSkpCisgICAgICB8fCAoQ09OU1AgKHF1YWQgPSBGY2FyIChGY2RyIChxdWl0 X3Jlc3RvcmUpKSkKKwkgICYmIEVRIChGY2FyIChxdWFkKSwgYnVmZmVyKSkpCisgICAgewor ICAgICAgRnNldF93aW5kb3dfcGFyYW1ldGVyICh3aW5kb3csIFFxdWl0X3Jlc3RvcmUsCisJ CQkgICAgIHdpbmRvd19wYXJhbWV0ZXIgKHcsIFFxdWl0X3Jlc3RvcmVfcHJldikpOworICAg ICAgRnNldF93aW5kb3dfcGFyYW1ldGVyICh3aW5kb3csIFFxdWl0X3Jlc3RvcmVfcHJldiwg UW5pbCk7CisgICAgfQorfQorCit2b2lkCit3aW5kb3dfZGlzY2FyZF9idWZmZXJfZnJvbV9k ZWFkX3dpbmRvd3MgKExpc3BfT2JqZWN0IGJ1ZmZlcikKK3sKKyAgc3RydWN0IExpc3BfSGFz aF9UYWJsZSAqaCA9IFhIQVNIX1RBQkxFICh3aW5kb3dfZGVhZF93aW5kb3dzX3RhYmxlKTsK KworICBET0hBU0ggKGgsIGssIHYpCisgICAgd2luZG93X2Rpc2NhcmRfYnVmZmVyX2Zyb21f ZGVhZF93aW5kb3cgKGJ1ZmZlciwgdik7Cit9CisKKwogREVGVU4gKCJkZWxldGUtb3RoZXIt d2luZG93cy1pbnRlcm5hbCIsIEZkZWxldGVfb3RoZXJfd2luZG93c19pbnRlcm5hbCwKICAg ICAgICBTZGVsZXRlX290aGVyX3dpbmRvd3NfaW50ZXJuYWwsIDAsIDIsICIiLAogICAgICAg IGRvYzogLyogTWFrZSBXSU5ET1cgZmlsbCBpdHMgZnJhbWUuCkBAIC00NDAyLDYgKzQ0ODYs MTAgQEAgbWFrZV9wYXJlbnRfd2luZG93IChMaXNwX09iamVjdCB3aW5kb3csIGJvb2wgaG9y ZmxhZykKICAgd3NldF9idWZmZXIgKHAsIFFuaWwpOwogICB3c2V0X2NvbWJpbmF0aW9uIChw LCBob3JmbGFnLCB3aW5kb3cpOwogICB3c2V0X2NvbWJpbmF0aW9uX2xpbWl0IChwLCBRbmls KTsKKyAgLyogUmVzZXQgYW55IHByZXZpb3VzIGFuZCBuZXh0IGJ1ZmZlcnMgb2YgcCB3aGlj aCBoYXZlIGJlZW4gaW5zdGFsbGVkCisgICAgIGJ5IHRoZSBtZW1jcHkgYWJvdmUuICAqLwor ICB3c2V0X3ByZXZfYnVmZmVycyAocCwgUW5pbCk7CisgIHdzZXRfbmV4dF9idWZmZXJzIChw LCBRbmlsKTsKICAgd3NldF93aW5kb3dfcGFyYW1ldGVycyAocCwgUW5pbCk7CiB9CiAKQEAg LTQ0MjYsMTAgKzQ1MTQsNiBAQCBtYWtlX3dpbmRvdyAodm9pZCkKICAgd3NldF92ZXJ0aWNh bF9zY3JvbGxfYmFyX3R5cGUgKHcsIFF0KTsKICAgd3NldF9ob3Jpem9udGFsX3Njcm9sbF9i YXJfdHlwZSAodywgUXQpOwogICB3c2V0X2N1cnNvcl90eXBlICh3LCBRdCk7Ci0gIC8qIFRo ZXNlIExpc3AgZmllbGRzIGFyZSBtYXJrZWQgc3BlY2lhbGx5IHNvIHRoZXkncmUgbm90IHNl dCB0byBuaWwgYnkKLSAgICAgYWxsb2NhdGVfd2luZG93LiAgKi8KLSAgd3NldF9wcmV2X2J1 ZmZlcnMgKHcsIFFuaWwpOwotICB3c2V0X25leHRfYnVmZmVycyAodywgUW5pbCk7CiAKICAg LyogSW5pdGlhbGl6ZSBub24tTGlzcCBkYXRhLiAgTm90ZSB0aGF0IGFsbG9jYXRlX3dpbmRv dyB6ZXJvZXMgb3V0IGFsbAogICAgICBub24tTGlzcCBkYXRhLCBzbyBkbyBpdCBvbmx5IGZv ciBzbG90cyB3aGljaCBzaG91bGQgbm90IGJlIHplcm8uICAqLwpAQCAtNTI1Miw2ICs1MzM2 LDExIEBAIERFRlVOICgiZGVsZXRlLXdpbmRvdy1pbnRlcm5hbCIsIEZkZWxldGVfd2luZG93 X2ludGVybmFsLCBTZGVsZXRlX3dpbmRvd19pbnRlcm5hCiAJICB1bmNoYWluX21hcmtlciAo WE1BUktFUiAody0+b2xkX3BvaW50bSkpOwogCSAgdW5jaGFpbl9tYXJrZXIgKFhNQVJLRVIg KHctPnN0YXJ0KSk7CiAJICB3c2V0X2J1ZmZlciAodywgUW5pbCk7CisJICAvKiBBZGQgV0lO RE9XIHRvIHRhYmxlIG9mIGRlYWQgd2luZG93cyBzbyB3aGVuIGtpbGxpbmcgYSBidWZmZXIK KwkgICAgIFdJTkRPVyBtZW50aW9ucywgYWxsIHJlZmVyZW5jZXMgdG8gdGhhdCBidWZmZXIg Y2FuIGJlIHJlbW92ZWQKKwkgICAgIGFuZCB0aGUgYnVmZmVyIGJlIGNvbGxlY3RlZC4gICov CisJICBGcHV0aGFzaCAobWFrZV9maXhudW0gKHctPnNlcXVlbmNlX251bWJlciksCisJCSAg ICB3aW5kb3csIHdpbmRvd19kZWFkX3dpbmRvd3NfdGFibGUpOwogCX0KIAogICAgICAgaWYg KE5JTFAgKHMtPnByZXYpICYmIE5JTFAgKHMtPm5leHQpKQpAQCAtNzM1Niw2ICs3NDQ1LDEw IEBAIERFRlVOICgic2V0LXdpbmRvdy1jb25maWd1cmF0aW9uIiwgRnNldF93aW5kb3dfY29u ZmlndXJhdGlvbiwKIAkJfQogCSAgICB9CiAKKwkgIC8qIFJlbW92ZSB3aW5kb3cgZnJvbSB0 aGUgdGFibGUgb2YgZGVhZCB3aW5kb3dzLiAgKi8KKwkgIEZyZW1oYXNoIChtYWtlX2ZpeG51 bSAody0+c2VxdWVuY2VfbnVtYmVyKSwKKwkJICAgIHdpbmRvd19kZWFkX3dpbmRvd3NfdGFi bGUpOworCiAJICBpZiAoKE5JTFAgKGRvbnRfc2V0X21pbml3aW5kb3cpIHx8ICFNSU5JX1dJ TkRPV19QICh3KSkKIAkgICAgICAmJiBCVUZGRVJQIChwLT5idWZmZXIpICYmIEJVRkZFUl9M SVZFX1AgKFhCVUZGRVIgKHAtPmJ1ZmZlcikpKQogCSAgICAvKiBJZiBzYXZlZCBidWZmZXIg aXMgYWxpdmUsIGluc3RhbGwgaXQsIHVubGVzcyBpdCdzIGEKQEAgLTc1ODUsNiArNzY3OCwx MSBAQCBkZWxldGVfYWxsX2NoaWxkX3dpbmRvd3MgKExpc3BfT2JqZWN0IHdpbmRvdykKIAkg cG9zc2libGUgcmVzdXJyZWN0aW9uIGluIEZzZXRfd2luZG93X2NvbmZpZ3VyYXRpb24uICAq LwogICAgICAgd3NldF9jb21iaW5hdGlvbl9saW1pdCAodywgdy0+Y29udGVudHMpOwogICAg ICAgd3NldF9idWZmZXIgKHcsIFFuaWwpOworICAgICAgLyogQWRkIFdJTkRPVyB0byB0YWJs ZSBvZiBkZWFkIHdpbmRvd3Mgc28gd2hlbiBraWxsaW5nIGEgYnVmZmVyCisJIFdJTkRPVyBt ZW50aW9ucywgYWxsIHJlZmVyZW5jZXMgdG8gdGhhdCBidWZmZXIgY2FuIGJlIHJlbW92ZWQK KwkgYW5kIHRoZSBidWZmZXIgYmUgY29sbGVjdGVkLiAgKi8KKyAgICAgIEZwdXRoYXNoICht YWtlX2ZpeG51bSAody0+c2VxdWVuY2VfbnVtYmVyKSwKKwkJd2luZG93LCB3aW5kb3dfZGVh ZF93aW5kb3dzX3RhYmxlKTsKICAgICB9CiAKICAgVndpbmRvd19saXN0ID0gUW5pbDsKQEAg LTg1OTQsNiArODY5Miw4IEBAIHN5bXNfb2Zfd2luZG93ICh2b2lkKQogICBERUZTWU0gKFFj b25maWd1cmF0aW9uLCAiY29uZmlndXJhdGlvbiIpOwogICBERUZTWU0gKFFkZWxldGUsICJk ZWxldGUiKTsKICAgREVGU1lNIChRZGVkaWNhdGVkLCAiZGVkaWNhdGVkIik7CisgIERFRlNZ TSAoUXF1aXRfcmVzdG9yZSwgInF1aXQtcmVzdG9yZSIpOworICBERUZTWU0gKFFxdWl0X3Jl c3RvcmVfcHJldiwgInF1aXQtcmVzdG9yZS1wcmV2Iik7CiAKICAgREVGVkFSX0xJU1AgKCJ0 ZW1wLWJ1ZmZlci1zaG93LWZ1bmN0aW9uIiwgVnRlbXBfYnVmZmVyX3Nob3dfZnVuY3Rpb24s CiAJICAgICAgIGRvYzogLyogTm9uLW5pbCBtZWFucyBjYWxsIGFzIGZ1bmN0aW9uIHRvIGRp c3BsYXkgYSBoZWxwIGJ1ZmZlci4KQEAgLTg5MTcsNiArOTAxNywxNyBAQCBzeW1zX29mX3dp bmRvdyAodm9pZCkKIGRpc3BsYXllZCBhZnRlciBhIHNjcm9sbGluZyBvcGVyYXRpb24gdG8g YmUgc29tZXdoYXQgaW5hY2N1cmF0ZS4gICovKTsKICAgZmFzdF9idXRfaW1wcmVjaXNlX3Nj cm9sbGluZyA9IGZhbHNlOwogCisgIERFRlZBUl9MSVNQICgid2luZG93LWRlYWQtd2luZG93 cy10YWJsZSIsIHdpbmRvd19kZWFkX3dpbmRvd3NfdGFibGUsCisgICAgZG9jOiAvKiBIYXNo IHRhYmxlIG9mIGRlYWQgd2luZG93cy4KK0VhY2ggZW50cnkgaW4gdGhpcyB0YWJsZSBtYXBz IGEgd2luZG93IG51bWJlciB0byBhIHdpbmRvdyBvYmplY3QuCitFbnRyaWVzIGFyZSBhZGRl ZCBieSBgZGVsZXRlLXdpbmRvdy1pbnRlcm5hbCcgYW5kIGFyZSByZW1vdmVkIGJ5IHRoZQor Z2FyYmFnZSBjb2xsZWN0b3IuCisKK1RoaXMgdGFibGUgaXMgbWFpbnRhaW5lZCBieSBjb2Rl IGluIHdpbmRvdy5jIGFuZCBpcyBtYWRlIHZpc2libGUgaW4KK0VsaXNwIGZvciB0ZXN0aW5n IHB1cnBvc2VzIG9ubHkuICAqLyk7CisgIHdpbmRvd19kZWFkX3dpbmRvd3NfdGFibGUKKyAg ICA9IENBTExOIChGbWFrZV9oYXNoX3RhYmxlLCBRQ3dlYWtuZXNzLCBRdCk7CisKICAgZGVm c3ViciAoJlNzZWxlY3RlZF93aW5kb3cpOwogICBkZWZzdWJyICgmU29sZF9zZWxlY3RlZF93 aW5kb3cpOwogICBkZWZzdWJyICgmU21pbmlidWZmZXJfd2luZG93KTsKZGlmZiAtLWdpdCBh L3NyYy93aW5kb3cuaCBiL3NyYy93aW5kb3cuaAppbmRleCA4NjkzMjE4MTI1Mi4uMzM1ZTBh MzQ1M2UgMTAwNjQ0Ci0tLSBhL3NyYy93aW5kb3cuaAorKysgYi9zcmMvd2luZG93LmgKQEAg LTE0Miw2ICsxNDIsMTIgQEAgI2RlZmluZSBXSU5ET1dfSF9JTkNMVURFRAogICAgICAgIGFz IHdlbGwuICAqLwogICAgIExpc3BfT2JqZWN0IGNvbnRlbnRzOwogCisgICAgLyogQSBsaXN0 IG9mIDxidWZmZXIsIHdpbmRvdy1zdGFydCwgd2luZG93LXBvaW50PiB0cmlwbGVzIGxpc3Rp bmcKKyAgICAgICBidWZmZXJzIHByZXZpb3VzbHkgc2hvd24gaW4gdGhpcyB3aW5kb3cuICAq LworICAgIExpc3BfT2JqZWN0IHByZXZfYnVmZmVyczsKKyAgICAvKiBMaXN0IG9mIGJ1ZmZl cnMgcmUtc2hvd24gaW4gdGhpcyB3aW5kb3cuICAqLworICAgIExpc3BfT2JqZWN0IG5leHRf YnVmZmVyczsKKwogICAgIC8qIFRoZSBvbGQgYnVmZmVyIG9mIHRoaXMgd2luZG93LCBzZXQg dG8gdGhpcyB3aW5kb3cncyBidWZmZXIgYnkKICAgICAgICBydW5fd2luZG93X2NoYW5nZV9m dW5jdGlvbnMgZXZlcnkgdGltZSBpdCBzZWVzIHRoaXMgd2luZG93LgogICAgICAgIFVudXNl ZCBmb3IgaW50ZXJuYWwgd2luZG93cy4gICovCkBAIC0yMTgsMTQgKzIyNCw2IEBAICNkZWZp bmUgV0lORE9XX0hfSU5DTFVERUQKICAgICBzdHJ1Y3QgZ2x5cGhfbWF0cml4ICpjdXJyZW50 X21hdHJpeDsKICAgICBzdHJ1Y3QgZ2x5cGhfbWF0cml4ICpkZXNpcmVkX21hdHJpeDsKIAot ICAgIC8qIFRoZSB0d28gTGlzcF9PYmplY3QgZmllbGRzIGJlbG93IGFyZSBtYXJrZWQgaW4g YSBzcGVjaWFsIHdheSwKLSAgICAgICB3aGljaCBpcyB3aHkgdGhleSdyZSBwbGFjZWQgYWZ0 ZXIgYGN1cnJlbnRfbWF0cml4Jy4gICovCi0gICAgLyogQSBsaXN0IG9mIDxidWZmZXIsIHdp bmRvdy1zdGFydCwgd2luZG93LXBvaW50PiB0cmlwbGVzIGxpc3RpbmcKLSAgICAgICBidWZm ZXJzIHByZXZpb3VzbHkgc2hvd24gaW4gdGhpcyB3aW5kb3cuICAqLwotICAgIExpc3BfT2Jq ZWN0IHByZXZfYnVmZmVyczsKLSAgICAvKiBMaXN0IG9mIGJ1ZmZlcnMgcmUtc2hvd24gaW4g dGhpcyB3aW5kb3cuICAqLwotICAgIExpc3BfT2JqZWN0IG5leHRfYnVmZmVyczsKLQogICAg IC8qIE51bWJlciBzYXlpbmcgaG93IHJlY2VudGx5IHdpbmRvdyB3YXMgc2VsZWN0ZWQuICAq LwogICAgIEVNQUNTX0lOVCB1c2VfdGltZTsKIApAQCAtMTIyOCw2ICsxMjI2LDcgQEAgI2Rl ZmluZSBDSEVDS19MSVZFX1dJTkRPVyhXSU5ET1cpCQkJCVwKIGV4dGVybiB2b2lkIHdzZXRf YnVmZmVyIChzdHJ1Y3Qgd2luZG93ICosIExpc3BfT2JqZWN0KTsKIGV4dGVybiBib29sIHdp bmRvd19vdXRkYXRlZCAoc3RydWN0IHdpbmRvdyAqKTsKIGV4dGVybiBwdHJkaWZmX3Qgd2lu ZG93X3BvaW50IChzdHJ1Y3Qgd2luZG93ICp3KTsKK2V4dGVybiB2b2lkIHdpbmRvd19kaXNj YXJkX2J1ZmZlcl9mcm9tX2RlYWRfd2luZG93cyAoTGlzcF9PYmplY3QpOwogZXh0ZXJuIHZv aWQgaW5pdF93aW5kb3dfb25jZSAodm9pZCk7CiBleHRlcm4gdm9pZCBpbml0X3dpbmRvdyAo dm9pZCk7CiBleHRlcm4gdm9pZCBzeW1zX29mX3dpbmRvdyAodm9pZCk7Cg== --------------LljYayqEV1Ur0nfWMbfh90n8--
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 17 Jun 2024 14:48:29 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 17 10:48:29 2024 Received: from localhost ([127.0.0.1]:34970 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sJDen-00088z-Fk for submit <at> debbugs.gnu.org; Mon, 17 Jun 2024 10:48:29 -0400 Received: from mout.gmx.net ([212.227.17.22]:45757) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sJDel-00088k-L2 for 59862 <at> debbugs.gnu.org; Mon, 17 Jun 2024 10:48:28 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1718635697; x=1719240497; i=rudalics@HIDDEN; bh=VvZwhhMaEkBr7O4LoZR0BLe7Mx2Av+JYYpb5mQhA4/c=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=NvIXMgsjr+N2qH//zfuuhg6V4OctbOMgbsnCA3uQbNIIFOu6KfH1ZURG2iWJtFjD d3LMSKuDzXrCmh4xM6RjTCSmR+k8NZlteoB0T2ZOFNOplymg2PPSxa/geeZY35Ypc SyuRH5ic8XhcW+q9J1Cg9ZFWPPPOx98HfYummc9fRmFiH0Cj2NIM8lxFlyayAbRqA eh2tojVZ2McLYOg0nW+dw4wDzXqCYAFc+uScx4M4BIw9veDyH1clFXjLqu7gfAlM+ hpW4CmgpcwAyvlHCaTlPk4tboeAcX31ayx5ASCYQHWj1wHcwyqZ+VFpMF41qcl7oF +AXdo6wGrKyLP06GBA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.42]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1Mwfac-1sZFOt0HIw-010mid; Mon, 17 Jun 2024 16:48:17 +0200 Message-ID: <3e839dd9-e1fc-445c-9170-5d48add5dfaf@HIDDEN> Date: Mon, 17 Jun 2024 16:48:16 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> <86plsgrfvu.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86plsgrfvu.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:YFBfXm29KDK6/ZMrtftVvIXjmIgJ75sR3olLOIpTElQztWZEsEb 4JYxK9zqW04iadv50hltESJJnaXfG+gp8/awhJxAisPJsDRTDMygIvicIppCNArHDR9FUYg KF+coQ4rdTtfnkGZofIRScbSfD2DGTdNkZM5YWk72VzUT3tXU0gb5BqDLDJqcd1D4HJRexh vnmlrSvzEYZwUn9vGDKJQ== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:Eqh0JJr6YDY=;mviVtWaddLOz58uZBtSN5TboMWX 52DMK6vakjNi4FNnQoiiFO1Eii3YvFyR3j5Z49ZEwekCxzdatTSujuihDlWf6W1aXxiUvrGJp 3Ok3uDHDbWq6g2aYhrcBPHU0ddxWpCw7qPp6/6KFwmyRO0inZk91twOcq4w5l7cAtvgaa271X zSXyaahP8bm7X6L8uVrq4Vm4O22RKpOlolpSSdisBkfzSEgsHcDoFGXZ4mVdUF0Vz1TAROuh2 4G0xLmmg6Wph55rj0+TM6fUkT1sQEZJD/AyD/dEP2h1VtVDm3otedceJuPaunQHps5cOIDyzN YQfKFsrOaLgmGH1lAb0RVwryJtuTLcOc/mYtHYOTtxuLQ20vx909m43IOqmI8H5xqzCrrtQIj /MM9WIMxEudpjAApvIeRXM3qmZfgQaQGtVb+j2xsRMd7mdizJ8v89+jqcGSpTyQrzw7NwfWGL i1iq6unh3YvJH43xWlIhEr20RGf0f293HQX6v9TdDqySTqpQeqCM2Em/d+y6TE3tTgnpQ5ASA kozZaG4URyxOOU3J44x+M99Lt5n0BdwQflBvXYM7UDncyckEUrN44Tj7TmJ8EVZCffFuz3D7s 4YJQzSW3Co5ggubI8low3FUloL9yf/IJcYlwE3jzF3KznLDKUwS/KcnHQ6kizxXOVWYsWk9gL 1j1vrtcQfMrUJjqrjNVeiaadLleGX53YrIPaO52/98/jFqodAeTBx6B9DbCWcHTrI1Uv/BO+o tyEvQt5nWbZZsJEd4y13xkk3riOE/otKvZ7Bikk23ElXswmqro6QS9YXliSM3kRACRFP9cGDl YLPym0Kza+DMpSciO1st2VJiXDWQOkmbY4RrIDa+WJp9s= X-Spam-Score: 2.9 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) > + (window-list-1 nil 'nomini)) As I said before nil as argument for 'window-list-1' is not correct. 'window--delete' can be called by 'quit-windows-on' which has to work for quitting any window on any frame. Content analysis details: (2.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.42 listed in zen.spamhaus.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.17.22 listed in list.dnswl.org] 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.17.22 listed in wl.mailspike.net] -0.0 T_SCC_BODY_TEXT_LINE No description available. 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.9 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) > + (window-list-1 nil 'nomini)) As I said before nil as argument for 'window-list-1' is not correct. 'window--delete' can be called by 'quit-windows-on' which has to work for quitting any window on any frame. Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.42 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.17.22 listed in list.dnswl.org] 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.17.22 listed in wl.mailspike.net] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 T_SCC_BODY_TEXT_LINE No description available. 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager > + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) > + (window-list-1 nil 'nomini)) As I said before nil as argument for 'window-list-1' is not correct. 'window--delete' can be called by 'quit-windows-on' which has to work for quitting any window on any frame. >>> + (window-list-1 nil 'nomini)) >> >> I suppose that nil is not correct here when WINDOW is not on the >> selected frame. I'd rather use that window instead here. > > The current code doesn't support non-selected frames > as 'tab-bar-close-tab' below shows without a frame argument: Then we can't use it. Please have a look at the patch I sent earlier. The tab-bar code would have to add a function to 'window-deletable-functions' provided some tab-bar option says to do that. Thanks, martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 16 Jun 2024 16:53:52 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 16 12:53:52 2024 Received: from localhost ([127.0.0.1]:43625 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sIt8a-0002TS-3h for submit <at> debbugs.gnu.org; Sun, 16 Jun 2024 12:53:52 -0400 Received: from relay9-d.mail.gandi.net ([217.70.183.199]:33775) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sIt8Y-0002Su-KN for 59862 <at> debbugs.gnu.org; Sun, 16 Jun 2024 12:53:51 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id A173EFF802; Sun, 16 Jun 2024 16:53:39 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> (martin rudalics's message of "Sat, 15 Jun 2024 10:41:54 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> Date: Sun, 16 Jun 2024 19:50:29 +0300 Message-ID: <86plsgrfvu.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) > > The entire clause in 'quit-restore-window' governed by > > (eq (nth 1 quit-restore) 'tab) > > needs a comment on what it is supposed to restore. So here is a comment: diff --git a/lisp/window.el b/lisp/window.el index b7bd59bc813..5b782c93098 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -5241,9 +5246,13 @@ quit-restore-window (window--delete window 'dedicated (eq bury-or-kill 'kill))) ;; If the previously selected window is still alive, select it. (window--quit-restore-select-window quit-restore-2)) + ;; Close the tab if it doesn't contain more explicitly created windows. ((and (not prev-buffer) (eq (nth 1 quit-restore) 'tab) - (eq (nth 3 quit-restore) buffer)) + (eq (nth 3 quit-restore) buffer) + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) + (window-list-1 nil 'nomini)) + 2)) (tab-bar-close-tab) ;; If the previously selected window is still alive, select it. (window--quit-restore-select-window quit-restore-2)) > Basically, you check > here whether WINDOW is the only window with a 'quit-restore' parameter. > Is it that what you really want? If a window has a 'quit-restore' > parameter whose second element is 'tab' does that mean that all other > windows on the same frame must also have such a parameter? What happens > if there are other windows without a 'quit-restore' parameter? If there are other windows without a 'quit-restore' parameter, this means that they were created implicitly without a direct user action. So the tab can be closed in this case. There are not many commands that create windows without a 'quit-restore' parameter. For example, Gnus creates several windows, and the tab should be closed when the user closes the first window. > As designed, the 'quit-restore' parameter can cause the deletion of its > window only if there are other windows on the same frame. It can cause > the deletion of its frame only if there is no other window on its frame. > Are these principles preserved by your patch? Yes, the patch closes the tab only if there is no other window on the tab explicitly created by user. >> + (window-list-1 nil 'nomini)) > > I suppose that nil is not correct here when WINDOW is not on the > selected frame. I'd rather use that window instead here. The current code doesn't support non-selected frames as 'tab-bar-close-tab' below shows without a frame argument: >> + 2)) >> (tab-bar-close-tab) >> ;; If the previously selected window is still alive, select it. >> (window--quit-restore-select-window quit-restore-2))
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 15 Jun 2024 08:42:08 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jun 15 04:42:07 2024 Received: from localhost ([127.0.0.1]:54685 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sIOz9-0005IJ-Jh for submit <at> debbugs.gnu.org; Sat, 15 Jun 2024 04:42:07 -0400 Received: from mout.gmx.net ([212.227.17.22]:43285) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sIOz7-0005Gj-7O for 59862 <at> debbugs.gnu.org; Sat, 15 Jun 2024 04:42:06 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1718440915; x=1719045715; i=rudalics@HIDDEN; bh=fBRDwDHzR88tBG0X0pnmIKdcyWjOQsM3pUotVEeD2Yk=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=SnmnSsdDeGsdY63T0gdYzlmHDaht/uNqHBR2KtnQ1ZkHxdPD6GzYrqY1+YPkTgY3 RGYjvTdRN7QKLx0p6jrUhtoA2HrO2HRuOJJStCfZ5Q55JDnbnPS8925F1pPXLdccV baAGJDZp6mkBwZ+ocpWDjm+OgD9GN0/frEnLxmZ0gqR8SEB4JuDCsUiP41ZdXGB/n 7Wh675HN86hh6xCftl1aCnIyw5AFOrNSmoRCx5ZaEMj5pXZqcJ3hYhhM8gd7P9Uf0 /e1rWJLuNdwKRUsTDZtTFrAB229zOrcuAM7lqVCjSLWK53Ssv8yR0Z5U+QF5ecyyi wuJsyw4JrTGNuFAWTA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.155]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MUowb-1rrh222IPR-00TNtx; Sat, 15 Jun 2024 10:41:55 +0200 Message-ID: <ad0bfe5d-817b-4d11-b82f-90c5a76b4c81@HIDDEN> Date: Sat, 15 Jun 2024 10:41:54 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> <86msnne7ut.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86msnne7ut.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:UTS+swE3zZIxt3/+2rDzfSZAUgzVI7AMRO/6QgjprYsH96EpdYN 3av2HA+zD7XmsYt21MYrLMAuPDlaaCfWqZIEZisH1+DQ+YFp2MMx8KB0rkrTGfWHplwHA5J czEtKo+XIl8BVAJ8yYoy9l52HscA+MEZGYs2h0z/KVRS22NJhmjbKopu+vw5kdhpNj6IzEY fLynPpKr1HN5mBuJvsRjg== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:t7px0/0KyE0=;0HvSNCzHWu0IYgJ9jGcZ13wT+QV 2TJJzJb5zb+BiyKCriLBb91iWQ4n2spzfi1d+Kwc1U8Pr+afe/dzbiLDS+/y1GDd0Sol6nNhy GYtKSgOEQ890eV1PNQ3keGFBFWKwBgBavPnnvKTswAJ0eF/Ev4lJTkJX+hPuAmMqERSr23v9s QZPuwA4/Ecc2BeIAwi9yGn5fbuVdjzKtDGIHP1wT+fU4bFYJWTe2CvJ9lIF1vtxdiGvcquopY hj/JxFyHPCkW8RE1OW4B5DsD1R4TLgD8Ef8CYWHwW+6kWIk38roAQROgaqmb4O0jLwPuWd/H3 1jfSryAk2szZLCjyGxctcosphswKaQorx3Hf/71QDLxAd3lJowFHY8wjqubPmWRXVSwPPyeE7 DPfxFiIyV9Wq5UPEj26pb88B2UlTH4xPGsHP8hrPvJWlphvM7hPZD0Q4TFaxlDkF775hnYEW/ 2kw+p1KRs1YcVRDwHbEfoDrDBNuAH0vpG7rXoUMm44h9zvwE7zllLxTadFaT5BYPBx0l2ZYu7 p7Vdnia+Ms5Fe6bolUFxs9J5rcYmzVftkcKJkKolXLm5bWaqivh5QtvqEfkBhE6oUZUg34dA1 1vNr98TnIcJALvRagoX9f4ZSfcQuPCqLCHgwpo/vze5U6Y7amB3/aTiNLZfG0B/pDwbJhzo2I e82thsgCYT8VcyzAxV0mWttm4fhFpGLfyYIKsTy+ujBI4Hp9nFkEW/dmYA4bLeOlv/dr/2BeP LKs0Z2vrQPRuRhBdGRw+u2/9bv/T245ndMVdI9HAP5Hl6N/1gh0zTXZsgT5KkTZeic74lCx3H 1g+8RNa58VZlE4sbzJ9maE+MjRUtoktzXN3qop2fRTPx0= X-Spam-Score: 2.9 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) The entire clause in 'quit-restore-window' governed by (eq (nth 1 quit-restore) 'tab) Content analysis details: (2.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.155 listed in zen.spamhaus.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.17.22 listed in list.dnswl.org] 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.17.22 listed in wl.mailspike.net] -0.0 T_SCC_BODY_TEXT_LINE No description available. 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.9 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) The entire clause in 'quit-restore-window' governed by (eq (nth 1 quit-restore) 'tab) Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.155 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.17.22 listed in list.dnswl.org] 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.17.22 listed in wl.mailspike.net] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 T_SCC_BODY_TEXT_LINE No description available. 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) The entire clause in 'quit-restore-window' governed by (eq (nth 1 quit-restore) 'tab) needs a comment on what it is supposed to restore. Basically, you check here whether WINDOW is the only window with a 'quit-restore' parameter. Is it that what you really want? If a window has a 'quit-restore' parameter whose second element is 'tab' does that mean that all other windows on the same frame must also have such a parameter? What happens if there are other windows without a 'quit-restore' parameter? As designed, the 'quit-restore' parameter can cause the deletion of its window only if there are other windows on the same frame. It can cause the deletion of its frame only if there is no other window on its frame. Are these principles preserved by your patch? > + (window-list-1 nil 'nomini)) I suppose that nil is not correct here when WINDOW is not on the selected frame. I'd rather use that window instead here. > + 2)) > (tab-bar-close-tab) > ;; If the previously selected window is still alive, select it. > (window--quit-restore-select-window quit-restore-2)) martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 14 Jun 2024 18:04:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jun 14 14:04:49 2024 Received: from localhost ([127.0.0.1]:40891 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sIBI8-0004cJ-Mp for submit <at> debbugs.gnu.org; Fri, 14 Jun 2024 14:04:48 -0400 Received: from relay8-d.mail.gandi.net ([217.70.183.201]:49399) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sIBI3-0004bz-Sq for 59862 <at> debbugs.gnu.org; Fri, 14 Jun 2024 14:04:47 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id 35BDD1BF203; Fri, 14 Jun 2024 18:04:13 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> (martin rudalics's message of "Thu, 13 Jun 2024 10:21:32 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> Date: Fri, 14 Jun 2024 20:35:30 +0300 Message-ID: <86msnne7ut.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > The check is in 'window-deletable-p' which may return 'frame' iff WINDOW > is its frame's root window. Maybe you also want to check whether the > second element of 'quit-restore' is 'frame' but that I cannot tell. Ok, so here is the corresponding fix for the case: C-x t t ;; other-tab-prefix C-h i ;; info C-h e ;; view-echo-area-messages q ;; quit-window diff --git a/lisp/window.el b/lisp/window.el index b7bd59bc813..f206153e017 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -5243,7 +5258,10 @@ quit-restore-window (window--quit-restore-select-window quit-restore-2)) ((and (not prev-buffer) (eq (nth 1 quit-restore) 'tab) - (eq (nth 3 quit-restore) buffer)) + (eq (nth 3 quit-restore) buffer) + (< (seq-count (lambda (w) (window-parameter w 'quit-restore)) + (window-list-1 nil 'nomini)) + 2)) (tab-bar-close-tab) ;; If the previously selected window is still alive, select it. (window--quit-restore-select-window quit-restore-2))
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 13 Jun 2024 08:21:42 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 13 04:21:42 2024 Received: from localhost ([127.0.0.1]:33723 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sHfiI-0006N4-A2 for submit <at> debbugs.gnu.org; Thu, 13 Jun 2024 04:21:42 -0400 Received: from mout.gmx.net ([212.227.17.21]:42647) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sHfiF-0006Mf-NV for 59862 <at> debbugs.gnu.org; Thu, 13 Jun 2024 04:21:41 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1718266893; x=1718871693; i=rudalics@HIDDEN; bh=2Sx3CD79szLSKbii9c4kiPuvypBruMepOkceYeyl5+k=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=SRTHHBKw2mPon4NRexZl9k7ViXy/OGs/j0ufELhaE8xPFZ0FjQ4k1kT5wb8DJkVM C27HaA/clMkR5tZUiW05pMm6dhckuFKHP9Zmgoa+c4DZ6yqCz5wXlKjjr6Q+QzsBq bvvWSlMi1kmmVMinZNJA3WteBsJzrP8ThM9N6qjquv0MR/MJwVfBIfHefupTgBp0K rGzgIKqxbQTiOVXhGF266xzMjEPRzsDiq2v7tN5/ZnbmcKQsBJA22ocijhwiQU3zo 4iS+BWFQHluM1JSKxN2Zs/J1WUu2naQSOtGGyN1HkqUeze1lMSp3v4twJ/QNMZZpt zF+2I5Wy6IiGrmi0bw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.56]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MG9g4-1sC8sT1kR2-00FGdo; Thu, 13 Jun 2024 10:21:33 +0200 Message-ID: <743dc4dd-cf09-4c5e-9209-b63a47480e0b@HIDDEN> Date: Thu, 13 Jun 2024 10:21:32 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> <86frthjq4y.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86frthjq4y.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:CkIHOv7ZZiR53yQ9JMBmlYzUJB4zEvWz1X+vPIDrPwIPyMdnVP5 xaPVE7KqrmG/kp8OJdFGJXbaaR7FS42HFrnvisrGQjtPgAJWqtAJXxIudcELze7pFwyfbW7 0fLUdPcN6XD1xqke1aTUTT98QnF4wYZ2CTZj2S2Lkr14tmlDJww7F7rumkpenAQBHNwI6Uw t/ztiWdkOGmLhTWjwuqFA== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:yR7OIn5/FX8=;1vZzJp4n1ivcaHE43HaumQirdEF hT3N4S7ucCi26QYdT5qa3Qu21IEgT1YNdY1NzoCavdd39PS682iNc0J456Wo0gtFAZzwc5Y6m gXOAil3zeAlFXEFwb3LWvuZQUZNlWT6gulwHZ+zho25bhs7KvdHMPNhQLHAJ9eZqHymHoS9Lk ucsNNzMTL2rG8lkbmb9N4ZOr0RRN30HQrgLEGTxWnXcTGo6s9Fgk/BSww9SH4dz9E1IZBDIwy YvFqPOwoOs/fZftXjJNJztmFI8tNVJLI3XMTlVjwILdHq6H3F59JwHvrJaVSX9JaoXEOi8eFt yZ8yK1Ef2x8vgK01jmYBpqD+dooNcphXhgH7eT2Q2cY2GwBZonluMP26Z0plTecSbtWk8Tr+c DbucMLue6bRmIV32ED4bFZgoe9YT99+BxE+dgsb3q+1MgzWvAI0B6rOZL1yKJXTlQmjGccknq Q+acdGZw2I9ChPLxXUfy/Xm5dLVAcTPM+8ge+4z47xNGBoVhm2uVe4TfK8pGYDtNXJOXQ/FPk jMBHgR36/SyKV2Wnjcs+c6yLvV/ZkBatxsExVppIJeggQPcf+lRsLCRH2wGjM1VJ1JV8Q1829 Gx5PlSvjy7zVLXLsfyAyB1r4ZLyDY15tFRXJwpPieumCnyrGCpIvZ72phs2P9fdHoJV3sKByb jOhB8FO9pCVcF9PjOpJLGUzNHYDEHmN/sVwdnL1BZh9J2ahoP+xNZ5pvecR7a18Na71AbjOqA 8+CMdcP2106TZ5wjcuKo+3fM1nYYXayMvunFoveubadU5mRtI3l2zXQTu/4O+ohsf6OqaIzo1 9L9tVXpfvE8yEE29gilXvmAaTn0xUKJAYhVbAOWwqLwNY= X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > Could you show how the frame function corresponding to 'tab-bar-close-tab' > (I suppose it's 'delete-frame'?) Hardly. 'delete-frame' unconditionally deletes a frame regardless of how many windows it displays unless it is the last frame, a surrogate minibuffer frame or some other special condition holds. > detects that where are more than 1 window > on the frame, then it refuses to delete the frame. Then same code could be > used in 'tab-bar-close-tab'. The check is in 'window-deletable-p' which may return 'frame' iff WINDOW is its frame's root window. Maybe you also want to check whether the second element of 'quit-restore' is 'frame' but that I cannot tell. Note in this context that 'window-deletable-p' does not cover all special cases handled by 'delete-frame' - things like the 'delete-before' parameter or the 'delete-frame-functions' hook. So far, this apparently has not caused any problems though. martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 13 Jun 2024 07:13:40 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jun 13 03:13:40 2024 Received: from localhost ([127.0.0.1]:57865 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sHeeR-0003We-Rb for submit <at> debbugs.gnu.org; Thu, 13 Jun 2024 03:13:40 -0400 Received: from relay3-d.mail.gandi.net ([217.70.183.195]:52213) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sHeeQ-0003W7-GS for 59862 <at> debbugs.gnu.org; Thu, 13 Jun 2024 03:13:39 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id 4D66660008; Thu, 13 Jun 2024 07:13:10 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> (martin rudalics's message of "Wed, 12 Jun 2024 10:57:34 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> Date: Thu, 13 Jun 2024 09:47:09 +0300 Message-ID: <86frthjq4y.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) >> C-x 5 5 ;; other-frame-prefix >> C-h i ;; info >> q ;; quit-window >> This deletes the frame. >> >> C-x 5 5 ;; other-frame-prefix >> C-h i ;; info >> C-h e ;; view-echo-area-messages >> q ;; quit-window >> This doesn't delete the frame because another buffer was used. > > Here it doesn't delete the frame because it contains two windows. > 'quit-window' deletes the *info* window and the *Messages* window > remains. When I do C-x o q q instead it first shows the *info* window > only and then deletes the frame just as I would expect. The current behavior for frames looks correct. > BTW 'view-echo-area-messages' has a bug: The 'goto-char' moves point in > the *Messages* buffer in an undocumented manner. It should be written > as: > > (defun view-echo-area-messages () > "View the log of recent echo-area messages: the `*Messages*' buffer. > The number of messages retained in that buffer is specified by > the variable `message-log-max'." > (interactive) > (when-let ((win (display-buffer (messages-buffer)))) > (set-window-point win (point-max)) > win)) Agreed. >> So frames are handled correctly. But not tabs: >> >> C-x t t ;; other-tab-prefix >> C-h i ;; info >> q ;; quit-window >> This correctly closes the tab. >> >> C-x t t ;; other-tab-prefix >> C-h i ;; info >> C-h e ;; view-echo-area-messages >> q ;; quit-window >> But this also closes the tab, this is a destructive operation, >> because the user has another buffer shown in the tab. > > Here I get two windows. The 'quit-restore' parameter of the *info* > window is > > (tab tab #<window 7 on *info*> #<buffer *info*>) > > that of the *Messages* window is > > (window window #<window 7 on *info*> #<buffer *Messages*>). > > So if I now do q in the *info* window, it will run 'tab-bar-close-tab'. > It's up to that function to DTRT here. Could you show how the frame function corresponding to 'tab-bar-close-tab' (I suppose it's 'delete-frame'?) detects that where are more than 1 window on the frame, then it refuses to delete the frame. Then same code could be used in 'tab-bar-close-tab'.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 12 Jun 2024 08:57:46 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jun 12 04:57:46 2024 Received: from localhost ([127.0.0.1]:37522 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sHJnd-0006PS-NA for submit <at> debbugs.gnu.org; Wed, 12 Jun 2024 04:57:45 -0400 Received: from mout.gmx.net ([212.227.17.22]:50695) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sHJna-0006PB-MM for 59862 <at> debbugs.gnu.org; Wed, 12 Jun 2024 04:57:44 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1718182655; x=1718787455; i=rudalics@HIDDEN; bh=B2UgbEoqPcQ6bdIvScqnZJS20Kuiq5tCZO5nyKjOpzI=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To:Cc: References:From:In-Reply-To:Content-Type: Content-Transfer-Encoding:cc:content-transfer-encoding: content-type:date:from:message-id:mime-version:reply-to:subject: to; b=SEoYcNwVmdLMq92xDaG+QoyvbaWnLhyjZ7/CCH40FYqXM5cMsnAc1zcPLGAKNEoV 54nEP1DglMbldahgLJAFBD06dmETnBsMOEZ14Ew3FuyuiCziN92CWv/DmojxgVTWn oNtfao8r+igra1QcBkRZk2t9BkDfQC3A4mZlpJDHW9AlcpWKd1qLxpxoNirFLxmZa YsssBrGZz11FPnRrJu7j1RTFcJBFdGZnsDzZC1S4xRVfVRofF+mrDQMvL+24c4tr6 my2i+U743kN71q05QVZGI3nspTztMCiv5ZQQ3UJAZBow8E4BHDMnnTpnObWizCxm6 eINVN5v18U60yFKTeQ== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([46.125.249.118]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N5VD8-1sSvNl0exG-014L3F; Wed, 12 Jun 2024 10:57:35 +0200 Message-ID: <0d01a044-d7d6-456a-9ba9-d987faad4332@HIDDEN> Date: Wed, 12 Jun 2024 10:57:34 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN> References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> <86r0d4ezdc.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86r0d4ezdc.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:2IYKbBrjWiRJRO3M3f527O9Q4YaWLYOhFIotzxW/aMyhmgoRXUb ZbLEnBQxGTR1+MEzVSxyVQftpae80+UGpweoN26+4AHcAwa8EziTZxkPLJus2tC2YzdS358 ScYth4WnjfCB3W3l+KVgp1bHmfHt68GZbg9qxSYTVtwYhtLg8cM3i1QoPI7DBxLqTWlIROk UjSQdtmGXLgUePWilt1tg== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:XD+XCXa0mxQ=;K+aT9cvG/XgRVIx62oaHAikKIdw Vrcx4gwGJ9coZCZfJgITM5zsFxj7CGkh9sqKndbu11fhrmIn5miH4KXgnFKKuUtArxbEzacpN BFE0rZ98tNGsIIPuqhpPzlavMxAqHLTILA+Fx4K91uX1gUPusJWXOFCm6UQlyzFtWh2ciTsL0 pI18/yFjk5WoNNFEs/EnHfQw33F9XOpXUSij0WvE0bikbQs5514UWrKNVB3521dkkeMJqOLZW Bhc5wxp2RY82uNyJeA7qu9C/9Es9KixhDE2GUtamycAaMk/BiUyxSBGIJvopB/rsdoJnnbDOf FUttIr3ETNRYsM7Dqx1h3wYsLKe6UxJMtYY1BS1rDuxmfcf/i4EihiV1r+Tz/r3P/C+nL7A8T cyKWmEUcue0atA+6b2RZaa8u86pZUcTfgE2xaJ9aUOn5D6MiHnVlTYYYsXeQr1JXAlAclBHbK Q+yELFQzfiElgQFhNRsPjWROKOwQsxIPL/P1CXKIZaANlFGoRakddrAXurgyWoocgwNd+ar8S 9Bs6HnzZA5JMFCaJuCHiFAgBYrACMM7hI8JvtOda4bfgYh1GpiVFWKf49z2KtwgGNPuCJmrZf zTi+yottIpUcTBkYPShYAcKtXcwgUip0MvhBPvaEUdsWQY20HktksCje1Dq+62riusiicEGje WTzpTi0qCz/2JbQAg1KZnC+pkTkel5FBM1riqnHQkNrt1qHS9MNZxFVpnlnmIGO6Tr0bQQd+y HUfBAjH5l9TgZ5nCU/7BFCRxpW7TOiN6WmPUw6Jemu/u61D3RJPBDBaQD2CpZEFwBJK5N9v+q ryshxSJUyrsxltv2RFHKpjOrfYC8FghaF0QJamfflci8o= X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > C-x 5 5 ;; other-frame-prefix > C-h i ;; info > q ;; quit-window > This deletes the frame. > > C-x 5 5 ;; other-frame-prefix > C-h i ;; info > C-h e ;; view-echo-area-messages > q ;; quit-window > This doesn't delete the frame because another buffer was used. Here it doesn't delete the frame because it contains two windows. 'quit-window' deletes the *info* window and the *Messages* window remains. When I do C-x o q q instead it first shows the *info* window only and then deletes the frame just as I would expect. BTW 'view-echo-area-messages' has a bug: The 'goto-char' moves point in the *Messages* buffer in an undocumented manner. It should be written as: (defun view-echo-area-messages () "View the log of recent echo-area messages: the `*Messages*' buffer. The number of messages retained in that buffer is specified by the variable `message-log-max'." (interactive) (when-let ((win (display-buffer (messages-buffer)))) (set-window-point win (point-max)) win)) > So frames are handled correctly. But not tabs: > > C-x t t ;; other-tab-prefix > C-h i ;; info > q ;; quit-window > This correctly closes the tab. > > C-x 5 5 ;; other-tab-prefix I suppose you mean C-x t t here. > C-h i ;; info > C-h e ;; view-echo-area-messages > q ;; quit-window > But this also closes the tab, this is a destructive operation, > because the user has another buffer shown in the tab. Here I get two windows. The 'quit-restore' parameter of the *info* window is (tab tab #<window 7 on *info*> #<buffer *info*>) that of the *Messages* window is (window window #<window 7 on *info*> #<buffer *Messages*>). So if I now do q in the *info* window, it will run 'tab-bar-close-tab'. It's up to that function to DTRT here. martin
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 11 Jun 2024 15:54:27 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 11 11:54:27 2024 Received: from localhost ([127.0.0.1]:35836 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sH3pL-0000mB-FO for submit <at> debbugs.gnu.org; Tue, 11 Jun 2024 11:54:27 -0400 Received: from mslow1.mail.gandi.net ([217.70.178.240]:43917) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sH3pJ-0000lz-Dz for 59862 <at> debbugs.gnu.org; Tue, 11 Jun 2024 11:54:26 -0400 Received: from relay2-d.mail.gandi.net (unknown [IPv6:2001:4b98:dc4:8::222]) by mslow1.mail.gandi.net (Postfix) with ESMTP id 15773C4DD7 for <59862 <at> debbugs.gnu.org>; Tue, 11 Jun 2024 07:11:49 +0000 (UTC) Received: by mail.gandi.net (Postfix) with ESMTPSA id 91E9540008; Tue, 11 Jun 2024 07:11:40 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <86plsxmc6d.fsf@HIDDEN> (Juri Linkov's message of "Tue, 04 Jun 2024 09:53:14 +0300") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> Date: Tue, 11 Jun 2024 09:52:07 +0300 Message-ID: <86r0d4ezdc.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) >> I revisited it once more and attach my last patch. It also seems to >> DTRT with C-x 4 d RET C-h C-t C-h C-n q q q but would still require a >> longer period of testing. > > Thanks, I started testing. I found one difference between frames and tabs: C-x 5 5 ;; other-frame-prefix C-h i ;; info q ;; quit-window This deletes the frame. C-x 5 5 ;; other-frame-prefix C-h i ;; info C-h e ;; view-echo-area-messages q ;; quit-window This doesn't delete the frame because another buffer was used. So frames are handled correctly. But not tabs: C-x t t ;; other-tab-prefix C-h i ;; info q ;; quit-window This correctly closes the tab. C-x 5 5 ;; other-tab-prefix C-h i ;; info C-h e ;; view-echo-area-messages q ;; quit-window But this also closes the tab, this is a destructive operation, because the user has another buffer shown in the tab.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 5 Jun 2024 17:53:07 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jun 05 13:53:07 2024 Received: from localhost ([127.0.0.1]:52950 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sEuot-0007dc-Ey for submit <at> debbugs.gnu.org; Wed, 05 Jun 2024 13:53:07 -0400 Received: from mslow1.mail.gandi.net ([217.70.178.240]:52337) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sEuor-0007dE-4J for 59862 <at> debbugs.gnu.org; Wed, 05 Jun 2024 13:53:06 -0400 Received: from relay3-d.mail.gandi.net (unknown [IPv6:2001:4b98:dc4:8::223]) by mslow1.mail.gandi.net (Postfix) with ESMTP id 5E36FC5B66 for <59862 <at> debbugs.gnu.org>; Wed, 5 Jun 2024 17:12:07 +0000 (UTC) Received: by mail.gandi.net (Postfix) with ESMTPSA id 3FB8560003; Wed, 5 Jun 2024 17:11:45 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <86plsxmc6d.fsf@HIDDEN> (Juri Linkov's message of "Tue, 04 Jun 2024 09:53:14 +0300") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> <86plsxmc6d.fsf@HIDDEN> Date: Wed, 05 Jun 2024 19:56:14 +0300 Message-ID: <86le3jbrs1.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) >> I revisited it once more and attach my last patch. It also seems to >> DTRT with C-x 4 d RET C-h C-t C-h C-n q q q but would still require a >> longer period of testing. > > Thanks, I started testing. The testing showed that now quit-restore works much better, and even supports tabs. Thank you very much.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 4 Jun 2024 06:54:45 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jun 04 02:54:45 2024 Received: from localhost ([127.0.0.1]:56223 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sEO4C-0008M7-NE for submit <at> debbugs.gnu.org; Tue, 04 Jun 2024 02:54:45 -0400 Received: from relay5-d.mail.gandi.net ([217.70.183.197]:37379) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sEO49-0008Ls-M9 for 59862 <at> debbugs.gnu.org; Tue, 04 Jun 2024 02:54:43 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id 737E71C0005; Tue, 4 Jun 2024 06:54:01 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: martin rudalics <rudalics@HIDDEN> Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> (martin rudalics's message of "Mon, 3 Jun 2024 18:09:52 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> Date: Tue, 04 Jun 2024 09:53:14 +0300 Message-ID: <86plsxmc6d.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: 59862 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) > I revisited it once more and attach my last patch. It also seems to > DTRT with C-x 4 d RET C-h C-t C-h C-n q q q but would still require a > longer period of testing. Thanks, I started testing.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 3 Jun 2024 16:10:21 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 03 12:10:21 2024 Received: from localhost ([127.0.0.1]:46206 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sEAGG-0001O0-QU for submit <at> debbugs.gnu.org; Mon, 03 Jun 2024 12:10:21 -0400 Received: from mout.gmx.net ([212.227.15.19]:56935) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sEAGD-0001NH-I1 for 59862 <at> debbugs.gnu.org; Mon, 03 Jun 2024 12:10:15 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1717430994; x=1718035794; i=rudalics@HIDDEN; bh=/RdQP2TzPs3VPreHlsvtQCroeznDfrKeThLsYoikeqs=; h=X-UI-Sender-Class:Content-Type:Message-ID:Date:MIME-Version: Subject:From:To:References:In-Reply-To:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=QcVPjjBPnIF01D2tvqx+roU5aSBvpgSNA6eSMdB3mwtN0lAVQLaLqaCeAk3wuigS G5oW2dG60eoGupGqj4Das0K+m9QGhoyoAD7dTOMYvvUu16zG6nZhrX8nMp+O0IlP6 kpTi/nioJNDWQPVpKUCoBeaKbFit9WxtAf0MczPp5LgLB/CwORswgdQSXwl2hrB8N SxPRLNTP1TzawR6g1ZQz50BrWRyYbdNanDD0PZdO743ZiHd+9GEbwFjO+zodHirRW Cf7/0Ig1sZq2SrDWNxWliHOgSVJtSbSkDi++0F2bQWioiQsNIC8KGB4MB1EkVzIAd Wa4cUbfDA7r6ZbXmiQ== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([213.142.97.31]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1N79yQ-1sWdQ52IW4-017Y0n; Mon, 03 Jun 2024 18:09:53 +0200 Content-Type: multipart/mixed; boundary="------------xIisI0wIMSyB0RW73pBjpgJU" Message-ID: <f9eb9bae-6275-4448-9590-e72a56064220@HIDDEN> Date: Mon, 3 Jun 2024 18:09:52 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer From: martin rudalics <rudalics@HIDDEN> To: Juri Linkov <juri@HIDDEN>, 59862 <at> debbugs.gnu.org References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> Content-Language: en-US In-Reply-To: <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> X-Provags-ID: V03:K1:3pTaVu3ij+ch9p1LwDs2O7nabtI7OBxMB63/gJ6cXGex3JUtmW0 Q594xfzZ4haiKpD3Hnji9YItkw9zpe/aPs0tEp7P4euOg4yYchqeEhgvY5/QPSdn72FJ25q IqcM8wXRrz+4pxu+H1xjcYq2+XaG2QIB/qBgcYHwLbTurAWNfMv3LMTie/SmqOmggv0+qeR zCRU7oT+ZvYET1mHkEYDQ== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:FUnA26ER+CU=;vZ1M2glfBAEP19mUDrpPd84vDzk fh9lCYPkHkthf67V9qr2lRdcuWCsRnHfW9Pcb/TCZLR5wq0lQ1uCIWK3v86lGP0IJx4wcYcVL AkWcnSppsqJ/nnT0yy7cO9xpzuQkpkacpoXRmiVZQBwPkDK/bLob3JoC29Mld8ejIhd/1nfSk bbppmjdqfAi1kgpOg4c37dY2TUurvhp0sK/aP7tsg32j5mjWXHFYXDvqWN1GUtdMQDI4hzHy1 TurxPp5FRda5f6QKyIzQgiQmIxoOU+AUXjlzaE7fwtzm31kcpOrWNrjPW9FEnI22BJjxCkf5V if61zjnhopi+iP/+J9ma6v2r5yVIHOG9BLoSC5wX2IouuEW9MHut6pdhgknTHHopNyBuwuuDd 5xkMuSR7rIupaU8bwjTTLhp25vAS5CGaJ+gtCimjVd5ICc42iKh17MLVEacMlecd5WXC5/w8t JpL5JcPlW3boOtpXbztKC1cQseJ6Wc/NJcKWWqYvYVpOGYWPM+6/pXcC5+UT6gY75kqe4r9fC bKhocxlDt/xUooDAIKPtnL8Rn0R/0gGegzXS0UKFzZJpiOvSPYdMkmmNmWjEWWIq3IeUVJgH0 8YYufZCd/koUXkrepyPx8m++sDjsMZ21ircpKDQwpm+52AglhKX23ExdF70/P+gyiVkmnMzZY QEooU1smp4/90KGkiLkfQahhKQ1gHdbbDQI7gSMQmS7BMb0ftyyndOHNz8YJoHF/Lx6tqwpIQ u0PVpRyT81YVQ5yFZunO2KwKgPNR0EjgMsewVCN2r8pVzbTKtcFdAFCibHKhYUQtjtRM4FuRV BoDmGJmFSxfSBWe0BaKx4SfyidOx+UA6A4u1XwpHHHkXY= X-Spam-Score: 2.9 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: I revisited it once more and attach my last patch. It also seems to DTRT with C-x 4 d RET C-h C-t C-h C-n q q q but would still require a longer period of testing. martin diff --git a/lisp/window.el b/lisp/window.el index b014be6a7cf..dcfc578ffd8 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -4519,13 +4519,33 @@ unrecord-window-buffer "Unrecord BUFFER in W [...] Content analysis details: (2.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [213.142.97.31 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.19 listed in list.dnswl.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record X-Debbugs-Envelope-To: 59862 X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.9 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: I revisited it once more and attach my last patch. It also seems to DTRT with C-x 4 d RET C-h C-t C-h C-n q q q but would still require a longer period of testing. martin diff --git a/lisp/window.el b/lisp/window.el index b014be6a7cf..dcfc578ffd8 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -4519,13 +4519,33 @@ unrecord-window-buffer "Unrecord BUFFER in W [...] Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [213.142.97.31 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.19 listed in list.dnswl.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager This is a multi-part message in MIME format. --------------xIisI0wIMSyB0RW73pBjpgJU Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit I revisited it once more and attach my last patch. It also seems to DTRT with C-x 4 d RET C-h C-t C-h C-n q q q but would still require a longer period of testing. martin --------------xIisI0wIMSyB0RW73pBjpgJU Content-Type: text/x-patch; charset=UTF-8; name="quit-restore.diff" Content-Disposition: attachment; filename="quit-restore.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2xpc3Avd2luZG93LmVsIGIvbGlzcC93aW5kb3cuZWwKaW5kZXggYjAx NGJlNmE3Y2YuLmRjZmM1NzhmZmQ4IDEwMDY0NAotLS0gYS9saXNwL3dpbmRvdy5lbAorKysg Yi9saXNwL3dpbmRvdy5lbApAQCAtNDUxOSwxMyArNDUxOSwzMyBAQCB1bnJlY29yZC13aW5k b3ctYnVmZmVyCiAgICJVbnJlY29yZCBCVUZGRVIgaW4gV0lORE9XLgogV0lORE9XIG11c3Qg YmUgYSBsaXZlIHdpbmRvdyBhbmQgZGVmYXVsdHMgdG8gdGhlIHNlbGVjdGVkIG9uZS4KIEJV RkZFUiBtdXN0IGJlIGEgbGl2ZSBidWZmZXIgYW5kIGRlZmF1bHRzIHRvIHRoZSBidWZmZXIg b2YKLVdJTkRPVy4iCitXSU5ET1cuCisKK01ha2UgQlVGRkVSIGRpc2FwcGVhciBmcm9tIGFs bCB2YXJpYWJsZXMgbWVudGlvbmVkIGJ5IHRoZSBvYmplY3Qgb2YKK1dJTkRPVy4gIFRoaXMg aW5jbHVkZXMgdGhlIGJ1ZmZlcnMgcHJldmlvdXNseSBzaHdvbiBpbiBXSU5ET1cgYXMgd2Vs bCBhcworYW55IGJ1ZmZlcnMgbWVudGlvbmVkIGJ5IFdJTkRPVydzIGBxdWl0LXJlc3RvcmUn IGFuZCBgcXVpdC1yZXN0b3JlLXByZXYnCitwYXJhbWV0ZXJzLiIKICAgKGxldCogKCh3aW5k b3cgKHdpbmRvdy1ub3JtYWxpemUtd2luZG93IHdpbmRvdyB0KSkKLQkgKGJ1ZmZlciAob3Ig YnVmZmVyICh3aW5kb3ctYnVmZmVyIHdpbmRvdykpKSkKLSAgICAoc2V0LXdpbmRvdy1wcmV2 LWJ1ZmZlcnMKLSAgICAgd2luZG93IChhc3NxLWRlbGV0ZS1hbGwgYnVmZmVyICh3aW5kb3ct cHJldi1idWZmZXJzIHdpbmRvdykpKQotICAgIChzZXQtd2luZG93LW5leHQtYnVmZmVycwot ICAgICB3aW5kb3cgKGRlbHEgYnVmZmVyICh3aW5kb3ctbmV4dC1idWZmZXJzIHdpbmRvdykp KSkpCisJIChidWZmZXIgKG9yIGJ1ZmZlciAod2luZG93LWJ1ZmZlciB3aW5kb3cpKSkKKwkg KHF1aXQtcmVzdG9yZSAod2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZSkp CisJIChxdWl0LXJlc3RvcmUtcHJldiAod2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQt cmVzdG9yZS1wcmV2KSkKKwkgcXVhZCkKKyAgICAod2hlbiAoYnVmZmVyLWxpdmUtcCBidWZm ZXIpCisgICAgICAoc2V0LXdpbmRvdy1wcmV2LWJ1ZmZlcnMKKyAgICAgICB3aW5kb3cgKGFz c3EtZGVsZXRlLWFsbCBidWZmZXIgKHdpbmRvdy1wcmV2LWJ1ZmZlcnMgd2luZG93KSkpCisg ICAgICAoc2V0LXdpbmRvdy1uZXh0LWJ1ZmZlcnMKKyAgICAgICB3aW5kb3cgKGRlbHEgYnVm ZmVyICh3aW5kb3ctbmV4dC1idWZmZXJzIHdpbmRvdykpKQorCisgICAgICAod2hlbiAob3Ig KGVxIGJ1ZmZlciAobnRoIDMgcXVpdC1yZXN0b3JlLXByZXYpKQorCQkoYW5kIChsaXN0cCAo c2V0cSBxdWFkIChudGggMSBxdWl0LXJlc3RvcmUtcHJldikpKQorCQkgICAgIChlcSAoY2Fy IHF1YWQpIGJ1ZmZlcikpKQorCShzZXQtd2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQt cmVzdG9yZS1wcmV2IG5pbCkpCisKKyAgICAgICh3aGVuIChvciAoZXEgYnVmZmVyIChudGgg MyBxdWl0LXJlc3RvcmUpKQorCQkoYW5kIChsaXN0cCAoc2V0cSBxdWFkIChudGggMSBxdWl0 LXJlc3RvcmUpKSkKKwkJICAgICAoZXEgKGNhciBxdWFkKSBidWZmZXIpKSkKKwkoc2V0LXdp bmRvdy1wYXJhbWV0ZXIKKwkgd2luZG93ICdxdWl0LXJlc3RvcmUgKHdpbmRvdy1wYXJhbWV0 ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUtcHJldikpKSkpKQogCiAoZGVmdW4gc2V0LXdpbmRv dy1idWZmZXItc3RhcnQtYW5kLXBvaW50ICh3aW5kb3cgYnVmZmVyICZvcHRpb25hbCBzdGFy dCBwb2ludCkKICAgIlNldCBXSU5ET1cncyBidWZmZXIgdG8gQlVGRkVSLgpAQCAtNTA3NSwy MSArNTA5NSwyMCBAQCBkZWxldGUtd2luZG93cy1vbgogdXNlIFxcW3VuaXZlcnNhbC1hcmd1 bWVudF0gMCB0byBzcGVjaWZ5IGFsbCB3aW5kb3dzIG9ubHkgb24KIHRoZSBjdXJyZW50IHRl cm1pbmFsJ3MgZnJhbWVzLgogCi1JZiBhIGZyYW1lJ3Mgcm9vdCB3aW5kb3cgc2hvd3MgdGhl IGJ1ZmZlciBzcGVjaWZpZWQgYnkKLUJVRkZFUi1PUi1OQU1FIGFuZCBpcyBkZWRpY2F0ZWQg dG8gdGhhdCBidWZmZXIgYW5kIHRoYXQgZnJhbWUKLWRvZXMgbm90IGhvc3QgdGhlIGFjdGl2 ZSBtaW5pYnVmZmVyIHdpbmRvdyBhbmQgdGhlcmUgaXMgYXQgbGVhc3QKLW9uZSBvdGhlciBm cmFtZSBvbiB0aGF0IGZyYW1lJ3MgdGVybWluYWwsIGRlbGV0ZSB0aGF0IGZyYW1lLgotT3Ro ZXJ3aXNlLCBkbyBub3QgZGVsZXRlIGEgZnJhbWUncyByb290IHdpbmRvdyBpZiBpdCBzaG93 cyB0aGUKLWJ1ZmZlciBzcGVjaWZpZWQgYnkgQlVGRkVSLU9SLU5BTUUgYW5kIGRvIG5vdCBk ZWxldGUgYW55IGZyYW1lJ3MKLW1haW4gd2luZG93IHNob3dpbmcgdGhhdCBidWZmZXIgZWl0 aGVyLiAgUmF0aGVyLCBpbiBhbnkgc3VjaAotY2FzZSwgY2FsbCBgc3dpdGNoLXRvLXByZXYt YnVmZmVyJyB0byBzaG93IGFub3RoZXIgYnVmZmVyIGluIHRoYXQKLXdpbmRvdyBhbmQgbWFr ZSBzdXJlIHRoZSB3aW5kb3cgaXMgbm8gbW9yZSBkZWRpY2F0ZWQgdG8gaXRzCi1idWZmZXIu Ci0KLUlmIHRoZSBidWZmZXIgc3BlY2lmaWVkIGJ5IEJVRkZFUi1PUi1OQU1FIGlzIHNob3du IGluIGEKLW1pbmlidWZmZXIgd2luZG93LCBkbyBub3RoaW5nIGZvciB0aGF0IHdpbmRvdy4g IEZvciBhbnkgd2luZG93Ci10aGF0IGRvZXMgbm90IHNob3cgdGhhdCBidWZmZXIsIHJlbW92 ZSB0aGUgYnVmZmVyIGZyb20gdGhhdAotd2luZG93J3MgbGlzdHMgb2YgcHJldmlvdXMgYW5k IG5leHQgYnVmZmVycy4iCitJZiBhIGZyYW1lJ3Mgcm9vdCB3aW5kb3cgc2hvd3MgdGhlIGJ1 ZmZlciBzcGVjaWZpZWQgYnkgQlVGRkVSLU9SLU5BTUUKK2FuZCBpcyBkZWRpY2F0ZWQgdG8g dGhhdCBidWZmZXIgYW5kIHRoYXQgZnJhbWUgZG9lcyBub3QgaG9zdCB0aGUgYWN0aXZlCitt aW5pYnVmZmVyIHdpbmRvdyBhbmQgdGhlcmUgaXMgYXQgbGVhc3Qgb25lIG90aGVyIGZyYW1l IG9uIHRoYXQgZnJhbWUncwordGVybWluYWwsIGRlbGV0ZSB0aGF0IGZyYW1lLiAgT3RoZXJ3 aXNlLCBkbyBub3QgZGVsZXRlIGEgZnJhbWUncyByb290Cit3aW5kb3cgaWYgaXQgc2hvd3Mg dGhlIGJ1ZmZlciBzcGVjaWZpZWQgYnkgQlVGRkVSLU9SLU5BTUUgYW5kIGRvIG5vdAorZGVs ZXRlIGFueSBmcmFtZSdzIG1haW4gd2luZG93IHNob3dpbmcgdGhhdCBidWZmZXIgZWl0aGVy LiAgUmF0aGVyLCBpbgorYW55IHN1Y2ggY2FzZSwgY2FsbCBgcXVpdC1yZXN0b3JlLXdpbmRv dycgdG8gc2hvdyBhbm90aGVyIGJ1ZmZlciBpbiB0aGF0Cit3aW5kb3cgYW5kIG1ha2Ugc3Vy ZSB0aGUgd2luZG93IGlzIG5vIG1vcmUgZGVkaWNhdGVkIHRvIGl0cyBidWZmZXIuCisKK0lm IHRoZSBidWZmZXIgc3BlY2lmaWVkIGJ5IEJVRkZFUi1PUi1OQU1FIGlzIHNob3duIGluIGEg bWluaWJ1ZmZlcgord2luZG93LCBkbyBub3RoaW5nIGZvciB0aGF0IHdpbmRvdy4gIEZvciBh bnkgd2luZG93IHRoYXQgZG9lcyBub3Qgc2hvdwordGhhdCBidWZmZXIsIHJlbW92ZSB0aGUg YnVmZmVyIGZyb20gdGhhdCB3aW5kb3cncyBsaXN0cyBvZiBwcmV2aW91cyBhbmQKK25leHQg YnVmZmVycyBhbmQgcmVtb3ZlIGFueSBgcXVpdC1yZXN0b3JlJyBhbmQgYHF1aXQtcmVzdG9y ZS1wcmV2JworcGFyYW1ldGVycyBuYW1pbmcgaXQuIgogICAoaW50ZXJhY3RpdmUKICAgIChs ZXQgKChmcmFtZSAoY29uZAogICAgICAgICAgICAgICAgICAoKGFuZCAobnVtYmVycCBjdXJy ZW50LXByZWZpeC1hcmcpCkBAIC01MTA3LDkgKzUxMjYsOSBAQCBkZWxldGUtd2luZG93cy1v bgogICAgICAgICAgICBmcmFtZSkpKQogICAobGV0ICgoYnVmZmVyICh3aW5kb3ctbm9ybWFs aXplLWJ1ZmZlciBidWZmZXItb3ItbmFtZSkpCiAJOzsgSGFuZGxlIHRoZSAiaW52ZXJ0ZWQi IG1lYW5pbmcgb2YgdGhlIEZSQU1FIGFyZ3VtZW50IHdydCBvdGhlcgotCTs7IGB3aW5kb3ct bGlzdC0xJyBiYXNlZCBmdW5jdGlvbi4KLQkoYWxsLWZyYW1lcyAoY29uZCAoKG5vdCBmcmFt ZSkgdCkgKChlcSBmcmFtZSB0KSBuaWwpICh0IGZyYW1lKSkpKQotICAgIChkb2xpc3QgKHdp bmRvdyAod2luZG93LWxpc3QtMSBuaWwgbmlsIGFsbC1mcmFtZXMpKQorCTs7IGB3aW5kb3ct bGlzdC0xJyBiYXNlZCBmdW5jdGlvbnMuCisJKGZyYW1lcyAoY29uZCAoKG5vdCBmcmFtZSkg dCkgKChlcSBmcmFtZSB0KSBuaWwpICh0IGZyYW1lKSkpKQorICAgIChkb2xpc3QgKHdpbmRv dyAod2luZG93LWxpc3QtMSBuaWwgJ25vbWluaSBmcmFtZXMpKQogICAgICAgKGlmIChlcSAo d2luZG93LWJ1ZmZlciB3aW5kb3cpIGJ1ZmZlcikKIAkgIChsZXQgKChkZWxldGFibGUgKHdp bmRvdy1kZWxldGFibGUtcCB3aW5kb3cpKQogICAgICAgICAgICAgICAgIChkZWRpY2F0ZWQg KHdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cpKSkKQEAgLTUxMjEsMTkgKzUxNDAsMTkgQEAg ZGVsZXRlLXdpbmRvd3Mtb24KIAkgICAgICA7OyBEZWxldGUgd2luZG93LgogCSAgICAgIChk ZWxldGUtd2luZG93IHdpbmRvdykpCiAJICAgICAodAotCSAgICAgIDs7IEluIHdpbmRvdyBz d2l0Y2ggdG8gcHJldmlvdXMgYnVmZmVyLgotCSAgICAgIChzZXQtd2luZG93LWRlZGljYXRl ZC1wIHdpbmRvdyBuaWwpCi0JICAgICAgKHN3aXRjaC10by1wcmV2LWJ1ZmZlciB3aW5kb3cg J2J1cnkpCi0gICAgICAgICAgICAgIDs7IFJlc3RvcmUgdGhlIGRlZGljYXRlZCAnc2lkZScg ZmxhZy4KLSAgICAgICAgICAgICAgKHdoZW4gKGVxIGRlZGljYXRlZCAnc2lkZSkKLSAgICAg ICAgICAgICAgICAoc2V0LXdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cgJ3NpZGUpKSkpKQor CSAgICAgICh3aGVuIChlcSAod2luZG93LWJ1ZmZlciB3aW5kb3cpIGJ1ZmZlcikKKwkJKHF1 aXQtcmVzdG9yZS13aW5kb3cgd2luZG93ICdidXJ5KSkKKwkgICAgICAod2hlbiAod2luZG93 LWxpdmUtcCB3aW5kb3cpCisJCTs7IFVucmVjb3JkIEJVRkZFUiBpbiB0aGlzIHdpbmRvdy4K KwkJKHVucmVjb3JkLXdpbmRvdy1idWZmZXIgd2luZG93IGJ1ZmZlcikpKSkpCiAJOzsgSWYg YSB3aW5kb3cgZG9lc24ndCBzaG93IEJVRkZFUiwgdW5yZWNvcmQgQlVGRkVSIGluIGl0Lgog CSh1bnJlY29yZC13aW5kb3ctYnVmZmVyIHdpbmRvdyBidWZmZXIpKSkpKQogCiAoZGVmdW4g cmVwbGFjZS1idWZmZXItaW4td2luZG93cyAoJm9wdGlvbmFsIGJ1ZmZlci1vci1uYW1lKQog ICAiUmVwbGFjZSBCVUZGRVItT1ItTkFNRSB3aXRoIHNvbWUgb3RoZXIgYnVmZmVyIGluIGFs bCB3aW5kb3dzIHNob3dpbmcgaXQuCiBCVUZGRVItT1ItTkFNRSBtYXkgYmUgYSBidWZmZXIg b3IgdGhlIG5hbWUgb2YgYW4gZXhpc3RpbmcgYnVmZmVyCi1hbmQgZGVmYXVsdHMgdG8gdGhl IGN1cnJlbnQgYnVmZmVyLgorYW5kIGRlZmF1bHRzIHRvIHRoZSBjdXJyZW50IGJ1ZmZlci4g IE1pbmlidWZmZXIgd2luZG93cyBhcmUgbm90Citjb25zaWRlcmVkLgogCiBXaXRoIHRoZSBl eGNlcHRpb24gb2Ygc2lkZSB3aW5kb3dzLCB3aGVuIGEgd2luZG93IHNob3dpbmcgQlVGRkVS LU9SLU5BTUUKIGlzIGRlZGljYXRlZCwgdGhhdCB3aW5kb3cgaXMgZGVsZXRlZC4gIElmIHRo YXQgd2luZG93IGlzIHRoZSBvbmx5IHdpbmRvdwpAQCAtNTE0MSwyMSArNTE2MCwxOCBAQCBy ZXBsYWNlLWJ1ZmZlci1pbi13aW5kb3dzCiBJZiB0aGVyZSBhcmUgbm8gb3RoZXIgZnJhbWVz IGxlZnQsIHNvbWUgb3RoZXIgYnVmZmVyIGlzIGRpc3BsYXllZCBpbiB0aGF0CiB3aW5kb3cu CiAKLVRoaXMgZnVuY3Rpb24gcmVtb3ZlcyB0aGUgYnVmZmVyIGRlbm90ZWQgYnkgQlVGRkVS LU9SLU5BTUUgZnJvbQotYWxsIHdpbmRvdy1sb2NhbCBidWZmZXIgbGlzdHMuIgorVGhpcyBm dW5jdGlvbiByZW1vdmVzIHRoZSBidWZmZXIgZGVub3RlZCBieSBCVUZGRVItT1ItTkFNRSBm cm9tIGFsbAord2luZG93LWxvY2FsIGJ1ZmZlciBsaXN0cyBhbmQgcmVtb3ZlcyBhbnkgYHF1 aXQtcmVzdG9yZScgb3IKK2BxdWl0LXJlc3RvcmUtcHJldicgcGFyYW1ldGVycyBtZW50aW9u aW5nIGl0LiIKICAgKGludGVyYWN0aXZlICJiQnVmZmVyIHRvIHJlcGxhY2U6ICIpCiAgIChs ZXQgKChidWZmZXIgKHdpbmRvdy1ub3JtYWxpemUtYnVmZmVyIGJ1ZmZlci1vci1uYW1lKSkp CisgICAgOzsgU2NhbiBhbGwgd2luZG93cy4gIFdlIGhhdmUgdG8gdW5yZWNvcmQgQlVGRkVS IGluIHRob3NlIG5vdAorICAgIDs7IHNob3dpbmcgaXQuCiAgICAgKGRvbGlzdCAod2luZG93 ICh3aW5kb3ctbGlzdC0xIG5pbCBuaWwgdCkpCi0gICAgICAoaWYgKGVxICh3aW5kb3ctYnVm ZmVyIHdpbmRvdykgYnVmZmVyKQotICAgICAgICAgIDs7IERlbGV0ZSBhIGRlZGljYXRlZCB3 aW5kb3cgdW5sZXNzIGl0IGlzIGEgc2lkZSB3aW5kb3cuCi0gICAgICAgICAgKGxldCAoKGRl ZGljYXRlZC1zaWRlIChlcSAod2luZG93LWRlZGljYXRlZC1wIHdpbmRvdykgJ3NpZGUpKSkK LSAgICAgICAgICAgICh3aGVuIChvciBkZWRpY2F0ZWQtc2lkZSAobm90ICh3aW5kb3ctLWRl bGV0ZSB3aW5kb3cgdCB0KSkpCi0gICAgICAgICAgICAgIDs7IFN3aXRjaCB0byBhbm90aGVy IGJ1ZmZlciBpbiB0aGF0IHdpbmRvdy4KLSAgICAgICAgICAgICAgKHNldC13aW5kb3ctZGVk aWNhdGVkLXAgd2luZG93IG5pbCkKLSAgICAgICAgICAgICAgKGlmIChzd2l0Y2gtdG8tcHJl di1idWZmZXIgd2luZG93ICdraWxsKQotICAgICAgICAgICAgICAgICAgKGFuZCBkZWRpY2F0 ZWQtc2lkZSAoc2V0LXdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cgJ3NpZGUpKQotICAgICAg ICAgICAgICAgICh3aW5kb3ctLWRlbGV0ZSB3aW5kb3cgbmlsICdraWxsKSkpKQotCTs7IFVu cmVjb3JkIEJVRkZFUiBpbiBXSU5ET1cuCisgICAgICAod2hlbiAoZXEgKHdpbmRvdy1idWZm ZXIgd2luZG93KSBidWZmZXIpCisJKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93KSkKKyAg ICAgICh3aGVuICh3aW5kb3ctbGl2ZS1wIHdpbmRvdykKKwk7OyBVbnJlY29yZCBCVUZGRVIg aW4gdGhpcyB3aW5kb3cuCiAJKHVucmVjb3JkLXdpbmRvdy1idWZmZXIgd2luZG93IGJ1ZmZl cikpKSkpCiAKIChkZWZjdXN0b20gcXVpdC13aW5kb3ctaG9vayBuaWwKQEAgLTUxNzYsMTMg KzUxOTIsMTMgQEAgcXVpdC1yZXN0b3JlLXdpbmRvdwogICAiUXVpdCBXSU5ET1cgYW5kIGRl YWwgd2l0aCBpdHMgYnVmZmVyLgogV0lORE9XIG11c3QgYmUgYSBsaXZlIHdpbmRvdyBhbmQg ZGVmYXVsdHMgdG8gdGhlIHNlbGVjdGVkIG9uZS4KIAotQWNjb3JkaW5nIHRvIGluZm9ybWF0 aW9uIHN0b3JlZCBpbiBXSU5ET1cncyBgcXVpdC1yZXN0b3JlJyB3aW5kb3cKLXBhcmFtZXRl ciBlaXRoZXIgKDEpIGRlbGV0ZSBXSU5ET1cgYW5kIGl0cyBmcmFtZSwgKDIpIGRlbGV0ZQot V0lORE9XIGJ1dCBsZWF2ZSBpdHMgZnJhbWUgYWxvbmUsICgzKSByZXN0b3JlIHRoZSBidWZm ZXIKLXByZXZpb3VzbHkgc2hvd24gaW4gV0lORE9XLCBvciAoNCkgbWFrZSBXSU5ET1cgZGlz cGxheSBzb21lIG90aGVyCi1idWZmZXIuICBJZiBXSU5ET1cgaXMgbm90IGRlbGV0ZWQsIHJl c2V0IGl0cyBgcXVpdC1yZXN0b3JlJwotcGFyYW1ldGVyIHRvIG5pbC4gIFNlZSBJbmZvIG5v ZGUgYChlbGlzcCkgUXVpdHRpbmcgV2luZG93cycgZm9yCi1tb3JlIGRldGFpbHMuCitBY2Nv cmRpbmcgdG8gaW5mb3JtYXRpb24gc3RvcmVkIGluIFdJTkRPVydzIGBxdWl0LXJlc3RvcmUn IGFuZAorYHF1aXQtcmVzdG9yZS1wcmV2JyB3aW5kb3cgcGFyYW1ldGVycyBlaXRoZXIgKDEp IGRlbGV0ZSBXSU5ET1cgYW5kIGl0cworZnJhbWUsICgyKSBkZWxldGUgV0lORE9XIGJ1dCBs ZWF2ZSBpdHMgZnJhbWUgYWxvbmUsICgzKSByZXN0b3JlIHRoZQorYnVmZmVyIHByZXZpb3Vz bHkgc2hvd24gaW4gV0lORE9XLCBvciAoNCkgbWFrZSBXSU5ET1cgZGlzcGxheSBzb21lIG90 aGVyCitidWZmZXIuICBJbiBjYXNlICgzKSBzZXQgYW55IG9mIHRoZXNlIHBhcmFtZXRlcnMg dG8gbmlsIGlmIGl0IGhhcyBiZWVuCit1c2VkIHRvIHJlc3RvcmUgdGhlIHByZXZpb3VzbHkg c2hvd24gYnVmZmVyLiAgU2VlIEluZm8gbm9kZSBgKGVsaXNwKQorUXVpdHRpbmcgV2luZG93 cycgZm9yIG1vcmUgZGV0YWlscy4KIAogSWYgV0lORE9XJ3MgZGVkaWNhdGVkIGZsYWcgaXMg dCwgdHJ5IHRvIGRlbGV0ZSBXSU5ET1cuICBJZiBpdAogZXF1YWxzIHRoZSB2YWx1ZSBgc2lk ZScsIHJlc3RvcmUgdGhhdCB2YWx1ZSB3aGVuIFdJTkRPVyBpcyBub3QKQEAgLTUyMTAsMTMg KzUyMjYsMTUgQEAgcXVpdC1yZXN0b3JlLXdpbmRvdwogICAoc2V0cSB3aW5kb3cgKHdpbmRv dy1ub3JtYWxpemUtd2luZG93IHdpbmRvdyB0KSkKICAgKGxldCogKChidWZmZXIgKHdpbmRv dy1idWZmZXIgd2luZG93KSkKIAkgKHF1aXQtcmVzdG9yZSAod2luZG93LXBhcmFtZXRlciB3 aW5kb3cgJ3F1aXQtcmVzdG9yZSkpCisJIChxdWl0LXJlc3RvcmUtcHJldiAod2luZG93LXBh cmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZS1wcmV2KSkKIAkgKHF1aXQtcmVzdG9yZS0y IChudGggMiBxdWl0LXJlc3RvcmUpKQorCSAocXVpdC1yZXN0b3JlLXByZXYtMiAobnRoIDIg cXVpdC1yZXN0b3JlLXByZXYpKQogICAgICAgICAgKHByZXYtYnVmZmVyIChjYXRjaCAncHJl di1idWZmZXIKICAgICAgICAgICAgICAgICAgICAgICAgIChkb2xpc3QgKGJ1ZiAod2luZG93 LXByZXYtYnVmZmVycyB3aW5kb3cpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAodW5s ZXNzIChlcSAoY2FyIGJ1ZikgYnVmZmVyKQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICh0aHJvdyAncHJldi1idWZmZXIgKGNhciBidWYpKSkpKSkKICAgICAgICAgIChkZWRpY2F0 ZWQgKHdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cpKQotCSBxdWFkIGVudHJ5KQorCSBxdWFk IGVudHJ5IHJlc2V0LXByZXYpCiAgICAgKGNvbmQKICAgICAgOzsgRmlyc3QgdHJ5IHRvIGRl bGV0ZSBkZWRpY2F0ZWQgd2luZG93cyB0aGF0IGFyZSBub3Qgc2lkZSB3aW5kb3dzLgogICAg ICAoKGFuZCBkZWRpY2F0ZWQgKG5vdCAoZXEgZGVkaWNhdGVkICdzaWRlKSkKQEAgLTUyMzAs MjEgKzUyNDgsMzUgQEAgcXVpdC1yZXN0b3JlLXdpbmRvdwogICAgICAgOzsgSWYgdGhlIHBy ZXZpb3VzbHkgc2VsZWN0ZWQgd2luZG93IGlzIHN0aWxsIGFsaXZlLCBzZWxlY3QgaXQuCiAg ICAgICAod2luZG93LS1xdWl0LXJlc3RvcmUtc2VsZWN0LXdpbmRvdyBxdWl0LXJlc3RvcmUt MikpCiAgICAgICgoYW5kIChub3QgcHJldi1idWZmZXIpCi0JICAgKG9yIChlcSAobnRoIDEg cXVpdC1yZXN0b3JlKSAnZnJhbWUpCi0JICAgICAgIChhbmQgKGVxIChudGggMSBxdWl0LXJl c3RvcmUpICd3aW5kb3cpCi0JCSAgICA7OyBJZiB0aGUgd2luZG93IGhhcyBiZWVuIGNyZWF0 ZWQgb24gYW4gZXhpc3RpbmcKLQkJICAgIDs7IGZyYW1lIGFuZCBlbmRlZCB1cCBhcyB0aGUg c29sZSB3aW5kb3cgb24gdGhhdAotCQkgICAgOzsgZnJhbWUsIGRvIG5vdCBkZWxldGUgaXQg KEJ1ZyMxMjc2NCkuCi0JCSAgICAobm90IChlcSB3aW5kb3cgKGZyYW1lLXJvb3Qtd2luZG93 IHdpbmRvdykpKSkpCi0JICAgKGVxIChudGggMyBxdWl0LXJlc3RvcmUpIGJ1ZmZlcikKKwkg ICAob3IgKGFuZCAob3IgKGVxIChudGggMSBxdWl0LXJlc3RvcmUpICdmcmFtZSkKKwkJCShh bmQgKGVxIChudGggMSBxdWl0LXJlc3RvcmUpICd3aW5kb3cpCisJCQkgICAgIDs7IElmIHRo ZSB3aW5kb3cgaGFzIGJlZW4gY3JlYXRlZCBvbiBhbgorCQkJICAgICA7OyBleGlzdGluZyBm cmFtZSBhbmQgZW5kZWQgdXAgYXMgdGhlIHNvbGUKKwkJCSAgICAgOzsgd2luZG93IG9uIHRo YXQgZnJhbWUsIGRvIG5vdCBkZWxldGUgaXQKKwkJCSAgICAgOzsgKEJ1ZyMxMjc2NCkuCisJ CQkgICAgIChub3QgKGVxIHdpbmRvdyAoZnJhbWUtcm9vdC13aW5kb3cgd2luZG93KSkpKSkK KwkJICAgIChlcSAobnRoIDMgcXVpdC1yZXN0b3JlKSBidWZmZXIpKQorCSAgICAgICAoYW5k IChvciAoZXEgKG50aCAxIHF1aXQtcmVzdG9yZS1wcmV2KSAnZnJhbWUpCisJCQkoYW5kIChl cSAobnRoIDEgcXVpdC1yZXN0b3JlLXByZXYpICd3aW5kb3cpCisJCQkgICAgIChub3QgKGVx IHdpbmRvdyAoZnJhbWUtcm9vdC13aW5kb3cgd2luZG93KSkpKSkKKwkJICAgIChlcSAobnRo IDMgcXVpdC1yZXN0b3JlLXByZXYpIGJ1ZmZlcikKKwkJICAgIDs7IFVzZSBzZWxlY3RlZCB3 aW5kb3cgZnJvbSBxdWl0LXJlc3RvcmUtcHJldi4KKwkJICAgIChzZXRxIHF1aXQtcmVzdG9y ZS0yIHF1aXQtcmVzdG9yZS1wcmV2LTIpKSkKIAkgICA7OyBEZWxldGUgV0lORE9XIGlmIHBv c3NpYmxlLgogCSAgICh3aW5kb3ctLWRlbGV0ZSB3aW5kb3cgbmlsIChlcSBidXJ5LW9yLWtp bGwgJ2tpbGwpKSkKICAgICAgIDs7IElmIHRoZSBwcmV2aW91c2x5IHNlbGVjdGVkIHdpbmRv dyBpcyBzdGlsbCBhbGl2ZSwgc2VsZWN0IGl0LgogICAgICAgKHdpbmRvdy0tcXVpdC1yZXN0 b3JlLXNlbGVjdC13aW5kb3cgcXVpdC1yZXN0b3JlLTIpKQotICAgICAoKGFuZCAobGlzdHAg KHNldHEgcXVhZCAobnRoIDEgcXVpdC1yZXN0b3JlKSkpCi0JICAgKGJ1ZmZlci1saXZlLXAg KGNhciBxdWFkKSkKLQkgICAoZXEgKG50aCAzIHF1aXQtcmVzdG9yZSkgYnVmZmVyKSkKLSAg ICAgIDs7IFNob3cgYW5vdGhlciBidWZmZXIgc3RvcmVkIGluIHF1aXQtcmVzdG9yZSBwYXJh bWV0ZXIuCisgICAgICgob3IgKGFuZCAobGlzdHAgKHNldHEgcXVhZCAobnRoIDEgcXVpdC1y ZXN0b3JlLXByZXYpKSkKKwkgICAgICAgKGJ1ZmZlci1saXZlLXAgKGNhciBxdWFkKSkKKwkg ICAgICAgKGVxIChudGggMyBxdWl0LXJlc3RvcmUtcHJldikgYnVmZmVyKQorCSAgICAgICA7 OyBVc2Ugc2VsZWN0ZWQgd2luZG93IGZyb20gcXVpdC1yZXN0b3JlLXByZXYuCisJICAgICAg IChzZXRxIHF1aXQtcmVzdG9yZS0yIHF1aXQtcmVzdG9yZS1wcmV2LTIpCisJICAgICAgIDs7 IFdlIHdhbnQgdG8gcmVzZXQgcXVpdC1yZXN0b3JlLXByZXYgb25seS4KKwkgICAgICAgKHNl dHEgcmVzZXQtcHJldiB0KSkKKwkgIChhbmQgKGxpc3RwIChzZXRxIHF1YWQgKG50aCAxIHF1 aXQtcmVzdG9yZSkpKQorCSAgICAgICAoYnVmZmVyLWxpdmUtcCAoY2FyIHF1YWQpKQorCSAg ICAgICAoZXEgKG50aCAzIHF1aXQtcmVzdG9yZSkgYnVmZmVyKSkpCisgICAgICA7OyBTaG93 IGFub3RoZXIgYnVmZmVyIHN0b3JlZCBpbiBxdWl0LXJlc3RvcmUoLXByZXYpIHBhcmFtZXRl ci4KICAgICAgICh3aGVuIChhbmQgKGludGVnZXJwIChudGggMyBxdWFkKSkKIAkJIChpZiAo d2luZG93LWNvbWJpbmVkLXAgd2luZG93KQogICAgICAgICAgICAgICAgICAgICAgKC89IChu dGggMyBxdWFkKSAod2luZG93LXRvdGFsLWhlaWdodCB3aW5kb3cpKQpAQCAtNTI4MSwxNSAr NTMxMywxOCBAQCBxdWl0LXJlc3RvcmUtd2luZG93CiAJOzsgYGRpc3BsYXktYnVmZmVyLWlu LXByZXZpb3VzLXdpbmRvdycgY2FuIG5ldmVydGhlbGVzcyBmaW5kIGl0LgogCShzZXQtd2lu ZG93LXByZXYtYnVmZmVycwogCSB3aW5kb3cgKGFwcGVuZCAod2luZG93LXByZXYtYnVmZmVy cyB3aW5kb3cpIChsaXN0IGVudHJ5KSkpKQotICAgICAgOzsgUmVzZXQgdGhlIHF1aXQtcmVz dG9yZSBwYXJhbWV0ZXIuCi0gICAgICAoc2V0LXdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdx dWl0LXJlc3RvcmUgbmlsKQorICAgICAgOzsgUmVzZXQgdGhlIHF1aXQtcmVzdG9yZSgtcHJl dikgcGFyYW1ldGVyLgorICAgICAgKHNldC13aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVp dC1yZXN0b3JlLXByZXYgbmlsKQorICAgICAgKHVubGVzcyByZXNldC1wcmV2CisJOzsgSWYg cXVpdC1yZXN0b3JlLXByZXYgd2FzIG5vdCB1c2VkLCByZXNldCB0aGUgcXVpdC1yZXN0b3Jl CisJOzsgcGFyYW1ldGVyCisJKHNldC13aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVpdC1y ZXN0b3JlIG5pbCkpCiAgICAgICA7OyBTZWxlY3Qgb2xkIHdpbmRvdy4KICAgICAgIDs7IElm IHRoZSBwcmV2aW91c2x5IHNlbGVjdGVkIHdpbmRvdyBpcyBzdGlsbCBhbGl2ZSwgc2VsZWN0 IGl0LgogICAgICAgKHdpbmRvdy0tcXVpdC1yZXN0b3JlLXNlbGVjdC13aW5kb3cgcXVpdC1y ZXN0b3JlLTIpKQogICAgICAodAotICAgICAgOzsgU2hvdyBzb21lIG90aGVyIGJ1ZmZlciBp biBXSU5ET1cgYW5kIHJlc2V0IHRoZSBxdWl0LXJlc3RvcmUKLSAgICAgIDs7IHBhcmFtZXRl ci4KLSAgICAgIChzZXQtd2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZSBu aWwpCisgICAgICA7OyBTaG93IHNvbWUgb3RoZXIgYnVmZmVyIGluIFdJTkRPVyBhbmQgbGVh dmUgdGhlCisgICAgICA7OyBxdWl0LXJlc3RvcmUoLXByZXYpIHBhcmFtZXRlcnMgYWxvbmUg KEp1cmkncyBpZGVhKS4KICAgICAgIDs7IE1ha2Ugc3VyZSB0aGF0IFdJTkRPVyBpcyBubyBt b3JlIGRlZGljYXRlZC4KICAgICAgIChzZXQtd2luZG93LWRlZGljYXRlZC1wIHdpbmRvdyBu aWwpCiAgICAgICA7OyBUcnkgdG8gc3dpdGNoIHRvIGEgcHJldmlvdXMgYnVmZmVyLiAgRGVs ZXRlIHRoZSB3aW5kb3cgb25seSBpZgpAQCAtNTI5NywxMCArNTMzMiw3IEBAIHF1aXQtcmVz dG9yZS13aW5kb3cKICAgICAgIChpZiAoc3dpdGNoLXRvLXByZXYtYnVmZmVyIHdpbmRvdyBi dXJ5LW9yLWtpbGwpCiAgICAgICAgICAgKHdoZW4gKGVxIGRlZGljYXRlZCAnc2lkZSkKICAg ICAgICAgICAgIChzZXQtd2luZG93LWRlZGljYXRlZC1wIHdpbmRvdyAnc2lkZSkpCi0gICAg ICAgICh3aW5kb3ctLWRlbGV0ZSB3aW5kb3cgbmlsIChlcSBidXJ5LW9yLWtpbGwgJ2tpbGwp KQotICAgICAgOzsgSWYgdGhlIHByZXZpb3VzbHkgc2VsZWN0ZWQgd2luZG93IGlzIHN0aWxs IGFsaXZlLCBzZWxlY3QgaXQuCi0gICAgICAod2luZG93LS1xdWl0LXJlc3RvcmUtc2VsZWN0 LXdpbmRvdyBxdWl0LXJlc3RvcmUtMikpKSkKLQorICAgICAgICAod2luZG93LS1kZWxldGUg d2luZG93IG5pbCAoZXEgYnVyeS1vci1raWxsICdraWxsKSkpKSkKICAgICA7OyBEZWFsIHdp dGggdGhlIGJ1ZmZlci4KICAgICAoY29uZAogICAgICAoKG5vdCAoYnVmZmVyLWxpdmUtcCBi dWZmZXIpKSkKQEAgLTUzMzYsMTcgKzUzNjgsMjEgQEAgcXVpdC13aW5kb3dzLW9uCiBCVUZG RVItT1ItTkFNRS4gIE9wdGlvbmFsIGFyZ3VtZW50IEZSQU1FIGlzIGhhbmRsZWQgYXMgYnkK IGBkZWxldGUtd2luZG93cy1vbicuCiAKLVRoaXMgZnVuY3Rpb24gY2FsbHMgYHF1aXQtd2lu ZG93JyBvbiBhbGwgY2FuZGlkYXRlIHdpbmRvd3MKLXNob3dpbmcgQlVGRkVSLU9SLU5BTUUu IgorVGhpcyBmdW5jdGlvbiBjYWxscyBgcXVpdC1yZXN0b3JlLXdpbmRvdycgb24gYWxsIGNh bmRpZGF0ZSB3aW5kb3dzCitzaG93aW5nIEJVRkZFUi1PUi1OQU1FLiAgSW4gYWRkaXRpb24s IGl0IHJlbW92ZXMgdGhlIGJ1ZmZlciBkZW5vdGVkIGJ5CitCVUZGRVItT1ItTkFNRSBmcm9t IGFsbCB3aW5kb3ctbG9jYWwgYnVmZmVyIGxpc3RzIGFuZCByZW1vdmVzIGFueQorYHF1aXQt cmVzdG9yZScgb3IgYHF1aXQtcmVzdG9yZS1wcmV2JyBwYXJhbWV0ZXJzIG1lbnRpb25pbmcg aXQuIgogICAoaW50ZXJhY3RpdmUgImJRdWl0IHdpbmRvd3Mgb24gKGJ1ZmZlcik6XG5QIikK ICAgKGxldCAoKGJ1ZmZlciAod2luZG93LW5vcm1hbGl6ZS1idWZmZXIgYnVmZmVyLW9yLW5h bWUpKQogCTs7IEhhbmRsZSB0aGUgImludmVydGVkIiBtZWFuaW5nIG9mIHRoZSBGUkFNRSBh cmd1bWVudCB3cnQgb3RoZXIKLQk7OyBgd2luZG93LWxpc3QtMScgYmFzZWQgZnVuY3Rpb24u Ci0JKGFsbC1mcmFtZXMgKGNvbmQgKChub3QgZnJhbWUpIHQpICgoZXEgZnJhbWUgdCkgbmls KSAodCBmcmFtZSkpKSkKLSAgICAoZG9saXN0ICh3aW5kb3cgKHdpbmRvdy1saXN0LTEgbmls IG5pbCBhbGwtZnJhbWVzKSkKLSAgICAgIChpZiAoZXEgKHdpbmRvdy1idWZmZXIgd2luZG93 KSBidWZmZXIpCi0JICAocXVpdC13aW5kb3cga2lsbCB3aW5kb3cpCi0JOzsgSWYgYSB3aW5k b3cgZG9lc24ndCBzaG93IEJVRkZFUiwgdW5yZWNvcmQgQlVGRkVSIGluIGl0LgorCTs7IGB3 aW5kb3ctbGlzdCcgYmFzZWQgZnVuY3Rpb24uCisJKGZyYW1lcyAoY29uZCAoKG5vdCBmcmFt ZSkgdCkgKChlcSBmcmFtZSB0KSBuaWwpICh0IGZyYW1lKSkpKQorICAgIChkb2xpc3QgKHdp bmRvdyAod2luZG93LWxpc3QtMSBuaWwgbmlsIGZyYW1lcykpCisgICAgICAod2hlbiAoZXEg KHdpbmRvdy1idWZmZXIgd2luZG93KSBidWZmZXIpCisJKHF1aXQtcmVzdG9yZS13aW5kb3cg d2luZG93IGtpbGwpKQorCisgICAgICAod2hlbiAod2luZG93LWxpdmUtcCB3aW5kb3cpCisJ OzsgVW5yZWNvcmQgQlVGRkVSIGluIHRoaXMgd2luZG93LgogCSh1bnJlY29yZC13aW5kb3ct YnVmZmVyIHdpbmRvdyBidWZmZXIpKSkpKQogDAogKGRlZnVuIHdpbmRvdy0tY29tYmluYXRp b24tcmVzaXphYmxlIChwYXJlbnQgJm9wdGlvbmFsIGhvcml6b250YWwpCkBAIC02NjU2LDcg KzY2OTIsMTMgQEAgZGlzcGxheS1idWZmZXItcmVjb3JkLXdpbmRvdwogcHJldmlvdXNseSBz aG93biBpbiB0aGUgd2luZG93LCB0aGF0IGJ1ZmZlcidzIHdpbmRvdyBzdGFydCBhbmQKIHdp bmRvdyBwb2ludCwgYW5kIHRoZSB3aW5kb3cncyBoZWlnaHQuICBUaGUgdGhpcmQgZWxlbWVu dCBpcyB0aGUKIHdpbmRvdyBzZWxlY3RlZCBhdCB0aGUgdGltZSB0aGUgcGFyYW1ldGVyIHdh cyBjcmVhdGVkLiAgVGhlCi1mb3VydGggZWxlbWVudCBpcyBCVUZGRVIuIgorZm91cnRoIGVs ZW1lbnQgaXMgQlVGRkVSLgorCitJZiBUWVBFIGlzIGByZXVzZScsIEJVRkZFUiBpcyBkaWZm ZXJlbnQgZnJvbSB0aGUgb25lIGN1cnJlbnRseSBkaXNwbGF5ZWQKK2luIFdJTkRPVywgYW5k IFdJTkRPVyBhbHJlYWR5IGhhcyBhIGBxdWl0LXJlc3RvcmUnIHBhcmFtZXRlciwgaW5zdGFs bCBvcgordXBkYXRlIGEgYHF1aXQtcmVzdG9yZS1wcmV2JyBwYXJhbWV0ZXIgZm9yIHRoaXMg d2luZG93IHRoYXQgYWxsb3dzIHRvCitxdWl0IFdJTkRPVyBpbiBhIHNpbWlsYXIgZmFzaGlv biBidXQgcmVtZW1iZXJzIHRoZSB2ZXJ5IGZpcnN0IGluIGEKK3NlcmllcyBvZiBidWZmZXIg ZGlzcGxheSBvcGVyYXRpb25zIGZvciB0aGlzIHdpbmRvdy4iCiAgIChjb25kCiAgICAoKGVx IHR5cGUgJ3JldXNlKQogICAgIChpZiAoZXEgKHdpbmRvdy1idWZmZXIgd2luZG93KSBidWZm ZXIpCkBAIC02NjczLDcgKzY3MTUsNyBAQCBkaXNwbGF5LWJ1ZmZlci1yZWNvcmQtd2luZG93 CiAgICAgICA7OyBXSU5ET1cgc2hvd3MgYW5vdGhlciBidWZmZXIuCiAgICAgICAod2l0aC1j dXJyZW50LWJ1ZmZlciAod2luZG93LWJ1ZmZlciB3aW5kb3cpCiAJKHNldC13aW5kb3ctcGFy YW1ldGVyCi0JIHdpbmRvdyAncXVpdC1yZXN0b3JlCisJIHdpbmRvdyAncXVpdC1yZXN0b3Jl LXByZXYKIAkgKGxpc3QgJ290aGVyCiAJICAgICAgIDs7IEEgcXVhZHJ1cGxlIG9mIFdJTkRP VydzIGJ1ZmZlciwgc3RhcnQsIHBvaW50IGFuZCBoZWlnaHQuCiAJICAgICAgIChsaXN0IChj dXJyZW50LWJ1ZmZlcikgKHdpbmRvdy1zdGFydCB3aW5kb3cpCkBAIC05MTAzLDYgKzkxNDUs OSBAQCBzd2l0Y2gtdG8tYnVmZmVyCiBhcyBwcmVzY3JpYmVkIGJ5IHRoZSBvcHRpb24gYHN3 aXRjaC10by1idWZmZXItcHJlc2VydmUtd2luZG93LXBvaW50Jy4KIE90aGVyd2lzZSwgdGhl c2UgYXJlIGxlZnQgYWxvbmUuCiAKK0luIGVpdGhlciBjYXNlLCBjYWxsIGBkaXNwbGF5LWJ1 ZmZlci1yZWNvcmQtd2luZG93JyB0byBhdm9pZCBkaXNydXB0aW5nCithIHNlcXVlbmNlIG9m IGBkaXNwbGF5LWJ1ZmZlcicgb3BlcmF0aW9ucyB1c2luZyB0aGlzIHdpbmRvdy4KKwogUmV0 dXJuIHRoZSBidWZmZXIgc3dpdGNoZWQgdG8uIgogICAoaW50ZXJhY3RpdmUKICAgIChsZXQg KChmb3JjZS1zYW1lLXdpbmRvdwpAQCAtOTE1OCw2ICs5MjAzLDExIEBAIHN3aXRjaC10by1i dWZmZXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZmZlcikpCiAJ ICAgICAgIChkaXNwbGF5ZWQgKGFuZCAoZXEgcHJlc2VydmUtd2luLXBvaW50ICdhbHJlYWR5 LWRpc3BsYXllZCkKIAkJCSAgICAgICAoZ2V0LWJ1ZmZlci13aW5kb3cgYnVmZmVyIDApKSkp CisKKwkgIDs7IE1ha2Ugc3VyZSBxdWl0dGluZyB0aGUgd2luZG93IHdvcmtzLgorCSAgKHVu bGVzcyBzd2l0Y2gtdG8tYnVmZmVyLW9iZXktZGlzcGxheS1hY3Rpb25zCisJICAgIChkaXNw bGF5LWJ1ZmZlci1yZWNvcmQtd2luZG93ICdyZXVzZSAoc2VsZWN0ZWQtd2luZG93KSBidWZm ZXIpKQorCiAJICAoc2V0LXdpbmRvdy1idWZmZXIgbmlsIGJ1ZmZlcikKIAkgICh3aGVuIChh bmQgZW50cnkgKG9yIChlcSBwcmVzZXJ2ZS13aW4tcG9pbnQgdCkgZGlzcGxheWVkKSkKIAkg ICAgOzsgVHJ5IHRvIHJlc3RvcmUgc3RhcnQgYW5kIHBvaW50IG9mIGJ1ZmZlciBpbiB0aGUg c2VsZWN0ZWQK --------------xIisI0wIMSyB0RW73pBjpgJU--
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 3 Jun 2024 09:54:05 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 03 05:54:05 2024 Received: from localhost ([127.0.0.1]:59030 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sE4OC-0006hV-HZ for submit <at> debbugs.gnu.org; Mon, 03 Jun 2024 05:54:05 -0400 Received: from mout.gmx.net ([212.227.15.19]:34885) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sE4O7-0006gz-UM for 59862 <at> debbugs.gnu.org; Mon, 03 Jun 2024 05:54:03 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1717408420; x=1718013220; i=rudalics@HIDDEN; bh=J6RK1wMwEWlVp3K8WQgcImdOTbtpHBXoyYDN2GsswJg=; h=X-UI-Sender-Class:Content-Type:Message-ID:Date:MIME-Version: Subject:From:To:References:In-Reply-To:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=StO+6+YaaTtQIuRf/S7Ij5OqkKaEwAkhhEIKOYD6TSFFiVATyksEhED88t0kH3B8 9gi3YGu19rMzwUFMIFz8+0DEAtBBvsTsyLcn5DjfTCsafin4rvd8KS6Y9as1OFvIw okXmzOkV2ZUNlAoqAl/PIJiZzhJkZtn++nQ+B+KoBiHgi9PyKELH+jtm57+hZYuT5 0VoG1dYZPXQ3ztQM3iSzYQOPxdP40xW7bzewKK7FeVTrpTiTtdt3yBYkEKmVhpgYd XwDfbMUVbKDfQjZsF06eiT6ENaI/HNRfQEj0kPBMf+SVDkfYd04no8dbBRsAHA49p YuS4ONqFXZ9Ap1bz4Q== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.29]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MTAFh-1s2MPr0WWl-00RHjT; Mon, 03 Jun 2024 11:53:40 +0200 Content-Type: multipart/mixed; boundary="------------tmLxt90jOBkUU93V5IoK7Iy0" Message-ID: <18173da7-32e1-4f14-bbea-9a8fa66af7dd@HIDDEN> Date: Mon, 3 Jun 2024 11:53:39 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer From: martin rudalics <rudalics@HIDDEN> To: Juri Linkov <juri@HIDDEN>, 59862 <at> debbugs.gnu.org References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> Content-Language: en-US In-Reply-To: <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> X-Provags-ID: V03:K1:mKnE0wEV0VetjjH9QppUk0Ls2IMlOwqLpwbTnB1HWMvIrf7e9cj 9MU8iJJfihvv748fEErlO3iHFhtJ1iY+B7bmzc3l4BqRw+Q2VPE3BZnF593AS25UuhoBR7v 0S4+SEFwYvPkUsP4UeQGuH+YFUI83ygtRQL09uCWF729OZZKkLEDNu+ArRAnesUO2LMha1/ umN/Sx6xY7Jqzkcn7kRvg== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:++0FRSCTpME=;GOVC76IGa8escn90+zkfe610i5Y UNVeK0zIZgqQM5Pwbyi9KhCfp0lPyDwX0FGfcfiTEMSP5/g19WU4qXTES8WIN/RFpW9nS8lgw 55JfWKBnkNd7JAL2XPiz07rcXJY8GHTTlyEHiXtbgE3FtrFj4MZxjm42tEHkaoILI5bT/lWgW bdo0m4Ud+48yWqWsOxE+AnJoG+oA3Hb1Oepx0QplY0sNVuVuBNb10Jj3oYE/OKCr5wd8QmFPA lW8IQJRHcPMe9MJr3cKCnxmsNkbFYJOE8ZTkcxsPc5knEvoDm00McY1/xsiAoqXreF+xInuFh MaUurBBZ0C0PgLex7iCXoWNob9pG6ZzL5yyoJx+uHugwhkoR0GJuwBBFBP2worGYHaJlOj7oX Ru2o2FD8oQg9g3Uw5fn3rsZWKajMCpnERwhxJp83NooT+8TFJl/PSzBajnBK/aTzLuzBM2ZMc f3cuGYiuQfWpQFi+jtimzaNuz+9nowLP1bYvQZckpv67snIHb5NmjabYGDyWvmjJGdcDwNQqE d7C+QZI4ytfHxv0RJZLFo1zt+Ay0N52f+T9uo9iXV+GETaRFGMa4xwI/uUXEkwJRmvXV+XxWQ 2fjZGa0wMkEwm/1dgUFPDKBFrUmz+y5z8s7jEtuCBUSJe3MtMPRzOv8hKPbxEuLY8h7s0BJ3E +smtAtVKpHprpQTMNjiVTfCYx/PHmMF5salZ/aECjg41Qh1v0IN3lPeyaSW9cPAFT13P9KCtX 7AT5Y28Ln2Lb2YrStw/V1/ItpGvgV2n7vMsIbBilH61Ii9cAJkkspAj/lZQEfw8CYquOqdt9A HDv/3BuC8kTqhD4RymS6N5scdKw0hWy5DTs8FYM09AtRS9RtwA7wu98o+et2S+WyUk X-Spam-Score: 2.9 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: The patch had an all to obvious bug when killing a buffer. Try the one attached here instead. But I have to think for a better solution in 'replace-buffer-in-windows'. martin diff --git a/lisp/window.el b/lisp/window.el index b014be6a7cf..ae30c50cddb 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -4522,10 +4522,11 @@ unrecord-window-buffer WINDOW." (let* ((wind [...] Content analysis details: (2.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.29 listed in zen.spamhaus.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.19 listed in list.dnswl.org] X-Debbugs-Envelope-To: 59862 X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.9 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: The patch had an all to obvious bug when killing a buffer. Try the one attached here instead. But I have to think for a better solution in 'replace-buffer-in-windows'. martin diff --git a/lisp/window.el b/lisp/window.el index b014be6a7cf..ae30c50cddb 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -4522,10 +4522,11 @@ unrecord-window-buffer WINDOW." (let* ((wind [...] Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.29 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.19 listed in list.dnswl.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager This is a multi-part message in MIME format. --------------tmLxt90jOBkUU93V5IoK7Iy0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit The patch had an all to obvious bug when killing a buffer. Try the one attached here instead. But I have to think for a better solution in 'replace-buffer-in-windows'. martin --------------tmLxt90jOBkUU93V5IoK7Iy0 Content-Type: text/x-patch; charset=UTF-8; name="quit-restore.diff" Content-Disposition: attachment; filename="quit-restore.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2xpc3Avd2luZG93LmVsIGIvbGlzcC93aW5kb3cuZWwKaW5kZXggYjAx NGJlNmE3Y2YuLmFlMzBjNTBjZGRiIDEwMDY0NAotLS0gYS9saXNwL3dpbmRvdy5lbAorKysg Yi9saXNwL3dpbmRvdy5lbApAQCAtNDUyMiwxMCArNDUyMiwxMSBAQCB1bnJlY29yZC13aW5k b3ctYnVmZmVyCiBXSU5ET1cuIgogICAobGV0KiAoKHdpbmRvdyAod2luZG93LW5vcm1hbGl6 ZS13aW5kb3cgd2luZG93IHQpKQogCSAoYnVmZmVyIChvciBidWZmZXIgKHdpbmRvdy1idWZm ZXIgd2luZG93KSkpKQotICAgIChzZXQtd2luZG93LXByZXYtYnVmZmVycwotICAgICB3aW5k b3cgKGFzc3EtZGVsZXRlLWFsbCBidWZmZXIgKHdpbmRvdy1wcmV2LWJ1ZmZlcnMgd2luZG93 KSkpCi0gICAgKHNldC13aW5kb3ctbmV4dC1idWZmZXJzCi0gICAgIHdpbmRvdyAoZGVscSBi dWZmZXIgKHdpbmRvdy1uZXh0LWJ1ZmZlcnMgd2luZG93KSkpKSkKKyAgICAod2hlbiAoYnVm ZmVyLWxpdmUtcCBidWZmZXIpCisgICAgICAoc2V0LXdpbmRvdy1wcmV2LWJ1ZmZlcnMKKyAg ICAgICB3aW5kb3cgKGFzc3EtZGVsZXRlLWFsbCBidWZmZXIgKHdpbmRvdy1wcmV2LWJ1ZmZl cnMgd2luZG93KSkpCisgICAgICAoc2V0LXdpbmRvdy1uZXh0LWJ1ZmZlcnMKKyAgICAgICB3 aW5kb3cgKGRlbHEgYnVmZmVyICh3aW5kb3ctbmV4dC1idWZmZXJzIHdpbmRvdykpKSkpKQog CiAoZGVmdW4gc2V0LXdpbmRvdy1idWZmZXItc3RhcnQtYW5kLXBvaW50ICh3aW5kb3cgYnVm ZmVyICZvcHRpb25hbCBzdGFydCBwb2ludCkKICAgIlNldCBXSU5ET1cncyBidWZmZXIgdG8g QlVGRkVSLgpAQCAtNTEwOCw4ICs1MTA5LDggQEAgZGVsZXRlLXdpbmRvd3Mtb24KICAgKGxl dCAoKGJ1ZmZlciAod2luZG93LW5vcm1hbGl6ZS1idWZmZXIgYnVmZmVyLW9yLW5hbWUpKQog CTs7IEhhbmRsZSB0aGUgImludmVydGVkIiBtZWFuaW5nIG9mIHRoZSBGUkFNRSBhcmd1bWVu dCB3cnQgb3RoZXIKIAk7OyBgd2luZG93LWxpc3QtMScgYmFzZWQgZnVuY3Rpb24uCi0JKGFs bC1mcmFtZXMgKGNvbmQgKChub3QgZnJhbWUpIHQpICgoZXEgZnJhbWUgdCkgbmlsKSAodCBm cmFtZSkpKSkKLSAgICAoZG9saXN0ICh3aW5kb3cgKHdpbmRvdy1saXN0LTEgbmlsIG5pbCBh bGwtZnJhbWVzKSkKKwkoZnJhbWVzIChjb25kICgobm90IGZyYW1lKSB0KSAoKGVxIGZyYW1l IHQpIG5pbCkgKHQgZnJhbWUpKSkpCisgICAgKGRvbGlzdCAod2luZG93ICh3aW5kb3ctbGlz dC0xIG5pbCAnbm9taW5pIGZyYW1lcykpCiAgICAgICAoaWYgKGVxICh3aW5kb3ctYnVmZmVy IHdpbmRvdykgYnVmZmVyKQogCSAgKGxldCAoKGRlbGV0YWJsZSAod2luZG93LWRlbGV0YWJs ZS1wIHdpbmRvdykpCiAgICAgICAgICAgICAgICAgKGRlZGljYXRlZCAod2luZG93LWRlZGlj YXRlZC1wIHdpbmRvdykpKQpAQCAtNTEyMSwxMiArNTEyMiwxOCBAQCBkZWxldGUtd2luZG93 cy1vbgogCSAgICAgIDs7IERlbGV0ZSB3aW5kb3cuCiAJICAgICAgKGRlbGV0ZS13aW5kb3cg d2luZG93KSkKIAkgICAgICh0Ci0JICAgICAgOzsgSW4gd2luZG93IHN3aXRjaCB0byBwcmV2 aW91cyBidWZmZXIuCi0JICAgICAgKHNldC13aW5kb3ctZGVkaWNhdGVkLXAgd2luZG93IG5p bCkKLQkgICAgICAoc3dpdGNoLXRvLXByZXYtYnVmZmVyIHdpbmRvdyAnYnVyeSkKLSAgICAg ICAgICAgICAgOzsgUmVzdG9yZSB0aGUgZGVkaWNhdGVkICdzaWRlJyBmbGFnLgotICAgICAg ICAgICAgICAod2hlbiAoZXEgZGVkaWNhdGVkICdzaWRlKQotICAgICAgICAgICAgICAgIChz ZXQtd2luZG93LWRlZGljYXRlZC1wIHdpbmRvdyAnc2lkZSkpKSkpCisJICAgICAgKHdoZW4g KGVxICh3aW5kb3ctYnVmZmVyIHdpbmRvdykgYnVmZmVyKQorCQkocXVpdC1yZXN0b3JlLXdp bmRvdyB3aW5kb3cpKQorCSAgICAgIDs7IFJlbW92ZSBxdWl0LXJlc3RvcmUoLXByZXYpIGVu dHJpZXMgdGhhdCBtZW50aW9uIEJVRkZFUi4KKwkgICAgICAobGV0ICgocXVpdC1yZXN0b3Jl ICh3aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVpdC1yZXN0b3JlKSkKKwkJICAgIChxdWl0 LXJlc3RvcmUtcHJldiAod2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZS1w cmV2KSkpCisJCSh3aGVuIChlcSBidWZmZXIgKG50aCAzIHF1aXQtcmVzdG9yZS1wcmV2KSkK KwkJICAoc2V0LXdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUtcHJldiBu aWwpKQorCQkod2hlbiAoZXEgYnVmZmVyIChudGggMyBxdWl0LXJlc3RvcmUpKQorCQkgIChz ZXQtd2luZG93LXBhcmFtZXRlcgorCQkgICB3aW5kb3cgJ3F1aXQtcmVzdG9yZSAod2luZG93 LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZS1wcmV2KSkpKQorCSAgICAgIDs7IFVu cmVjb3JkIEJVRkZFUiBpbiB0aGlzIHdpbmRvdy4KKwkgICAgICAodW5yZWNvcmQtd2luZG93 LWJ1ZmZlciB3aW5kb3cgYnVmZmVyKSkpKQogCTs7IElmIGEgd2luZG93IGRvZXNuJ3Qgc2hv dyBCVUZGRVIsIHVucmVjb3JkIEJVRkZFUiBpbiBpdC4KIAkodW5yZWNvcmQtd2luZG93LWJ1 ZmZlciB3aW5kb3cgYnVmZmVyKSkpKSkKIApAQCAtNTE0NiwxNyArNTE1MywxOCBAQCByZXBs YWNlLWJ1ZmZlci1pbi13aW5kb3dzCiAgIChpbnRlcmFjdGl2ZSAiYkJ1ZmZlciB0byByZXBs YWNlOiAiKQogICAobGV0ICgoYnVmZmVyICh3aW5kb3ctbm9ybWFsaXplLWJ1ZmZlciBidWZm ZXItb3ItbmFtZSkpKQogICAgIChkb2xpc3QgKHdpbmRvdyAod2luZG93LWxpc3QtMSBuaWwg bmlsIHQpKQotICAgICAgKGlmIChlcSAod2luZG93LWJ1ZmZlciB3aW5kb3cpIGJ1ZmZlcikK LSAgICAgICAgICA7OyBEZWxldGUgYSBkZWRpY2F0ZWQgd2luZG93IHVubGVzcyBpdCBpcyBh IHNpZGUgd2luZG93LgotICAgICAgICAgIChsZXQgKChkZWRpY2F0ZWQtc2lkZSAoZXEgKHdp bmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cpICdzaWRlKSkpCi0gICAgICAgICAgICAod2hlbiAo b3IgZGVkaWNhdGVkLXNpZGUgKG5vdCAod2luZG93LS1kZWxldGUgd2luZG93IHQgdCkpKQot ICAgICAgICAgICAgICA7OyBTd2l0Y2ggdG8gYW5vdGhlciBidWZmZXIgaW4gdGhhdCB3aW5k b3cuCi0gICAgICAgICAgICAgIChzZXQtd2luZG93LWRlZGljYXRlZC1wIHdpbmRvdyBuaWwp Ci0gICAgICAgICAgICAgIChpZiAoc3dpdGNoLXRvLXByZXYtYnVmZmVyIHdpbmRvdyAna2ls bCkKLSAgICAgICAgICAgICAgICAgIChhbmQgZGVkaWNhdGVkLXNpZGUgKHNldC13aW5kb3ct ZGVkaWNhdGVkLXAgd2luZG93ICdzaWRlKSkKLSAgICAgICAgICAgICAgICAod2luZG93LS1k ZWxldGUgd2luZG93IG5pbCAna2lsbCkpKSkKLQk7OyBVbnJlY29yZCBCVUZGRVIgaW4gV0lO RE9XLgotCSh1bnJlY29yZC13aW5kb3ctYnVmZmVyIHdpbmRvdyBidWZmZXIpKSkpKQorICAg ICAgKHdoZW4gKGVxICh3aW5kb3ctYnVmZmVyIHdpbmRvdykgYnVmZmVyKQorCShxdWl0LXJl c3RvcmUtd2luZG93IHdpbmRvdyAna2lsbCkpCisgICAgICA7OyBSZW1vdmUgcXVpdC1yZXN0 b3JlKC1wcmV2KSBlbnRyaWVzIHRoYXQgbWVudGlvbiBCVUZGRVIuCisgICAgICAobGV0ICgo cXVpdC1yZXN0b3JlICh3aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVpdC1yZXN0b3JlKSkK KwkgICAgKHF1aXQtcmVzdG9yZS1wcmV2ICh3aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVp dC1yZXN0b3JlLXByZXYpKSkKKwkod2hlbiAoZXEgYnVmZmVyIChudGggMyBxdWl0LXJlc3Rv cmUtcHJldikpCisJICAoc2V0LXdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJlc3Rv cmUtcHJldiBuaWwpKQorCSh3aGVuIChlcSBidWZmZXIgKG50aCAzIHF1aXQtcmVzdG9yZSkp CisJICAoc2V0LXdpbmRvdy1wYXJhbWV0ZXIKKwkgICB3aW5kb3cgJ3F1aXQtcmVzdG9yZSAo d2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZS1wcmV2KSkpKQorICAgICAg OzsgVW5yZWNvcmQgQlVGRkVSIGluIHRoaXMgd2luZG93LgorICAgICAgKHVucmVjb3JkLXdp bmRvdy1idWZmZXIgd2luZG93IGJ1ZmZlcikpKSkKIAogKGRlZmN1c3RvbSBxdWl0LXdpbmRv dy1ob29rIG5pbAogICAiSG9vayBydW4gYmVmb3JlIHBlcmZvcm1pbmcgYW55IG90aGVyIGFj dGlvbnMgaW4gdGhlIGBxdWl0LXdpbmRvdycgY29tbWFuZC4iCkBAIC01MjEwLDEzICs1MjE4 LDE1IEBAIHF1aXQtcmVzdG9yZS13aW5kb3cKICAgKHNldHEgd2luZG93ICh3aW5kb3ctbm9y bWFsaXplLXdpbmRvdyB3aW5kb3cgdCkpCiAgIChsZXQqICgoYnVmZmVyICh3aW5kb3ctYnVm ZmVyIHdpbmRvdykpCiAJIChxdWl0LXJlc3RvcmUgKHdpbmRvdy1wYXJhbWV0ZXIgd2luZG93 ICdxdWl0LXJlc3RvcmUpKQorCSAocXVpdC1yZXN0b3JlLXByZXYgKHdpbmRvdy1wYXJhbWV0 ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUtcHJldikpCiAJIChxdWl0LXJlc3RvcmUtMiAobnRo IDIgcXVpdC1yZXN0b3JlKSkKKwkgKHF1aXQtcmVzdG9yZS1wcmV2LTIgKG50aCAyIHF1aXQt cmVzdG9yZS1wcmV2KSkKICAgICAgICAgIChwcmV2LWJ1ZmZlciAoY2F0Y2ggJ3ByZXYtYnVm ZmVyCiAgICAgICAgICAgICAgICAgICAgICAgICAoZG9saXN0IChidWYgKHdpbmRvdy1wcmV2 LWJ1ZmZlcnMgd2luZG93KSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgKHVubGVzcyAo ZXEgKGNhciBidWYpIGJ1ZmZlcikKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodGhy b3cgJ3ByZXYtYnVmZmVyIChjYXIgYnVmKSkpKSkpCiAgICAgICAgICAoZGVkaWNhdGVkICh3 aW5kb3ctZGVkaWNhdGVkLXAgd2luZG93KSkKLQkgcXVhZCBlbnRyeSkKKwkgcXVhZCBlbnRy eSByZXNldC1wcmV2KQogICAgIChjb25kCiAgICAgIDs7IEZpcnN0IHRyeSB0byBkZWxldGUg ZGVkaWNhdGVkIHdpbmRvd3MgdGhhdCBhcmUgbm90IHNpZGUgd2luZG93cy4KICAgICAgKChh bmQgZGVkaWNhdGVkIChub3QgKGVxIGRlZGljYXRlZCAnc2lkZSkpCkBAIC01MjMwLDIxICs1 MjQwLDM1IEBAIHF1aXQtcmVzdG9yZS13aW5kb3cKICAgICAgIDs7IElmIHRoZSBwcmV2aW91 c2x5IHNlbGVjdGVkIHdpbmRvdyBpcyBzdGlsbCBhbGl2ZSwgc2VsZWN0IGl0LgogICAgICAg KHdpbmRvdy0tcXVpdC1yZXN0b3JlLXNlbGVjdC13aW5kb3cgcXVpdC1yZXN0b3JlLTIpKQog ICAgICAoKGFuZCAobm90IHByZXYtYnVmZmVyKQotCSAgIChvciAoZXEgKG50aCAxIHF1aXQt cmVzdG9yZSkgJ2ZyYW1lKQotCSAgICAgICAoYW5kIChlcSAobnRoIDEgcXVpdC1yZXN0b3Jl KSAnd2luZG93KQotCQkgICAgOzsgSWYgdGhlIHdpbmRvdyBoYXMgYmVlbiBjcmVhdGVkIG9u IGFuIGV4aXN0aW5nCi0JCSAgICA7OyBmcmFtZSBhbmQgZW5kZWQgdXAgYXMgdGhlIHNvbGUg d2luZG93IG9uIHRoYXQKLQkJICAgIDs7IGZyYW1lLCBkbyBub3QgZGVsZXRlIGl0IChCdWcj MTI3NjQpLgotCQkgICAgKG5vdCAoZXEgd2luZG93IChmcmFtZS1yb290LXdpbmRvdyB3aW5k b3cpKSkpKQotCSAgIChlcSAobnRoIDMgcXVpdC1yZXN0b3JlKSBidWZmZXIpCisJICAgKG9y IChhbmQgKG9yIChlcSAobnRoIDEgcXVpdC1yZXN0b3JlKSAnZnJhbWUpCisJCQkoYW5kIChl cSAobnRoIDEgcXVpdC1yZXN0b3JlKSAnd2luZG93KQorCQkJICAgICA7OyBJZiB0aGUgd2lu ZG93IGhhcyBiZWVuIGNyZWF0ZWQgb24gYW4KKwkJCSAgICAgOzsgZXhpc3RpbmcgZnJhbWUg YW5kIGVuZGVkIHVwIGFzIHRoZSBzb2xlCisJCQkgICAgIDs7IHdpbmRvdyBvbiB0aGF0IGZy YW1lLCBkbyBub3QgZGVsZXRlIGl0CisJCQkgICAgIDs7IChCdWcjMTI3NjQpLgorCQkJICAg ICAobm90IChlcSB3aW5kb3cgKGZyYW1lLXJvb3Qtd2luZG93IHdpbmRvdykpKSkpCisJCSAg ICAoZXEgKG50aCAzIHF1aXQtcmVzdG9yZSkgYnVmZmVyKSkKKwkgICAgICAgKGFuZCAob3Ig KGVxIChudGggMSBxdWl0LXJlc3RvcmUtcHJldikgJ2ZyYW1lKQorCQkJKGFuZCAoZXEgKG50 aCAxIHF1aXQtcmVzdG9yZS1wcmV2KSAnd2luZG93KQorCQkJICAgICAobm90IChlcSB3aW5k b3cgKGZyYW1lLXJvb3Qtd2luZG93IHdpbmRvdykpKSkpCisJCSAgICAoZXEgKG50aCAzIHF1 aXQtcmVzdG9yZS1wcmV2KSBidWZmZXIpCisJCSAgICA7OyBVc2Ugc2VsZWN0ZWQgd2luZG93 IGZyb20gcXVpdC1yZXN0b3JlLXByZXYuCisJCSAgICAoc2V0cSBxdWl0LXJlc3RvcmUtMiBx dWl0LXJlc3RvcmUtcHJldi0yKSkpCiAJICAgOzsgRGVsZXRlIFdJTkRPVyBpZiBwb3NzaWJs ZS4KIAkgICAod2luZG93LS1kZWxldGUgd2luZG93IG5pbCAoZXEgYnVyeS1vci1raWxsICdr aWxsKSkpCiAgICAgICA7OyBJZiB0aGUgcHJldmlvdXNseSBzZWxlY3RlZCB3aW5kb3cgaXMg c3RpbGwgYWxpdmUsIHNlbGVjdCBpdC4KICAgICAgICh3aW5kb3ctLXF1aXQtcmVzdG9yZS1z ZWxlY3Qtd2luZG93IHF1aXQtcmVzdG9yZS0yKSkKLSAgICAgKChhbmQgKGxpc3RwIChzZXRx IHF1YWQgKG50aCAxIHF1aXQtcmVzdG9yZSkpKQotCSAgIChidWZmZXItbGl2ZS1wIChjYXIg cXVhZCkpCi0JICAgKGVxIChudGggMyBxdWl0LXJlc3RvcmUpIGJ1ZmZlcikpCi0gICAgICA7 OyBTaG93IGFub3RoZXIgYnVmZmVyIHN0b3JlZCBpbiBxdWl0LXJlc3RvcmUgcGFyYW1ldGVy LgorICAgICAoKG9yIChhbmQgKGxpc3RwIChzZXRxIHF1YWQgKG50aCAxIHF1aXQtcmVzdG9y ZSkpKQorCSAgICAgICAoYnVmZmVyLWxpdmUtcCAoY2FyIHF1YWQpKQorCSAgICAgICAoZXEg KG50aCAzIHF1aXQtcmVzdG9yZSkgYnVmZmVyKSkKKwkgIChhbmQgKGxpc3RwIChzZXRxIHF1 YWQgKG50aCAxIHF1aXQtcmVzdG9yZS1wcmV2KSkpCisJICAgICAgIChidWZmZXItbGl2ZS1w IChjYXIgcXVhZCkpCisJICAgICAgIChlcSAobnRoIDMgcXVpdC1yZXN0b3JlLXByZXYpIGJ1 ZmZlcikKKwkgICAgICAgOzsgVXNlIHNlbGVjdGVkIHdpbmRvdyBmcm9tIHF1aXQtcmVzdG9y ZS1wcmV2LgorCSAgICAgICAoc2V0cSBxdWl0LXJlc3RvcmUtMiBxdWl0LXJlc3RvcmUtcHJl di0yKQorCSAgICAgICA7OyBXZSB3YW50IHRvIHJlc2V0IHF1aXQtcmVzdG9yZS1wcmV2IG9u bHkuCisJICAgICAgIChzZXRxIHJlc2V0LXByZXYgdCkpKQorICAgICAgOzsgU2hvdyBhbm90 aGVyIGJ1ZmZlciBzdG9yZWQgaW4gcXVpdC1yZXN0b3JlKC1wcmV2KSBwYXJhbWV0ZXIuCiAg ICAgICAod2hlbiAoYW5kIChpbnRlZ2VycCAobnRoIDMgcXVhZCkpCiAJCSAoaWYgKHdpbmRv dy1jb21iaW5lZC1wIHdpbmRvdykKICAgICAgICAgICAgICAgICAgICAgICgvPSAobnRoIDMg cXVhZCkgKHdpbmRvdy10b3RhbC1oZWlnaHQgd2luZG93KSkKQEAgLTUyODEsMTUgKzUzMDUs MTUgQEAgcXVpdC1yZXN0b3JlLXdpbmRvdwogCTs7IGBkaXNwbGF5LWJ1ZmZlci1pbi1wcmV2 aW91cy13aW5kb3cnIGNhbiBuZXZlcnRoZWxlc3MgZmluZCBpdC4KIAkoc2V0LXdpbmRvdy1w cmV2LWJ1ZmZlcnMKIAkgd2luZG93IChhcHBlbmQgKHdpbmRvdy1wcmV2LWJ1ZmZlcnMgd2lu ZG93KSAobGlzdCBlbnRyeSkpKSkKLSAgICAgIDs7IFJlc2V0IHRoZSBxdWl0LXJlc3RvcmUg cGFyYW1ldGVyLgotICAgICAgKHNldC13aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVpdC1y ZXN0b3JlIG5pbCkKKyAgICAgIDs7IFJlc2V0IHRoZSBxdWl0LXJlc3RvcmUoLXByZXYpIHBh cmFtZXRlci4KKyAgICAgIChzZXQtd2luZG93LXBhcmFtZXRlcgorICAgICAgIHdpbmRvdyAo aWYgcmVzZXQtcHJldiAncXVpdC1yZXN0b3JlLXByZXYgJ3F1aXQtcmVzdG9yZSkgbmlsKQog ICAgICAgOzsgU2VsZWN0IG9sZCB3aW5kb3cuCiAgICAgICA7OyBJZiB0aGUgcHJldmlvdXNs eSBzZWxlY3RlZCB3aW5kb3cgaXMgc3RpbGwgYWxpdmUsIHNlbGVjdCBpdC4KICAgICAgICh3 aW5kb3ctLXF1aXQtcmVzdG9yZS1zZWxlY3Qtd2luZG93IHF1aXQtcmVzdG9yZS0yKSkKICAg ICAgKHQKLSAgICAgIDs7IFNob3cgc29tZSBvdGhlciBidWZmZXIgaW4gV0lORE9XIGFuZCBy ZXNldCB0aGUgcXVpdC1yZXN0b3JlCi0gICAgICA7OyBwYXJhbWV0ZXIuCi0gICAgICAoc2V0 LXdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUgbmlsKQorICAgICAgOzsg U2hvdyBzb21lIG90aGVyIGJ1ZmZlciBpbiBXSU5ET1cgYW5kIGxlYXZlIHRoZQorICAgICAg OzsgcXVpdC1yZXN0b3JlKC1wcmV2KSBwYXJhbWV0ZXJzIGFsb25lIChKdXJpJ3MgaWRlYSku CiAgICAgICA7OyBNYWtlIHN1cmUgdGhhdCBXSU5ET1cgaXMgbm8gbW9yZSBkZWRpY2F0ZWQu CiAgICAgICAoc2V0LXdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cgbmlsKQogICAgICAgOzsg VHJ5IHRvIHN3aXRjaCB0byBhIHByZXZpb3VzIGJ1ZmZlci4gIERlbGV0ZSB0aGUgd2luZG93 IG9ubHkgaWYKQEAgLTUyOTcsMTAgKzUzMjEsNyBAQCBxdWl0LXJlc3RvcmUtd2luZG93CiAg ICAgICAoaWYgKHN3aXRjaC10by1wcmV2LWJ1ZmZlciB3aW5kb3cgYnVyeS1vci1raWxsKQog ICAgICAgICAgICh3aGVuIChlcSBkZWRpY2F0ZWQgJ3NpZGUpCiAgICAgICAgICAgICAoc2V0 LXdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cgJ3NpZGUpKQotICAgICAgICAod2luZG93LS1k ZWxldGUgd2luZG93IG5pbCAoZXEgYnVyeS1vci1raWxsICdraWxsKSkKLSAgICAgIDs7IElm IHRoZSBwcmV2aW91c2x5IHNlbGVjdGVkIHdpbmRvdyBpcyBzdGlsbCBhbGl2ZSwgc2VsZWN0 IGl0LgotICAgICAgKHdpbmRvdy0tcXVpdC1yZXN0b3JlLXNlbGVjdC13aW5kb3cgcXVpdC1y ZXN0b3JlLTIpKSkpCi0KKyAgICAgICAgKHdpbmRvdy0tZGVsZXRlIHdpbmRvdyBuaWwgKGVx IGJ1cnktb3Ita2lsbCAna2lsbCkpKSkpCiAgICAgOzsgRGVhbCB3aXRoIHRoZSBidWZmZXIu CiAgICAgKGNvbmQKICAgICAgKChub3QgKGJ1ZmZlci1saXZlLXAgYnVmZmVyKSkpCkBAIC01 MzQyLDEyICs1MzYzLDIwIEBAIHF1aXQtd2luZG93cy1vbgogICAobGV0ICgoYnVmZmVyICh3 aW5kb3ctbm9ybWFsaXplLWJ1ZmZlciBidWZmZXItb3ItbmFtZSkpCiAJOzsgSGFuZGxlIHRo ZSAiaW52ZXJ0ZWQiIG1lYW5pbmcgb2YgdGhlIEZSQU1FIGFyZ3VtZW50IHdydCBvdGhlcgog CTs7IGB3aW5kb3ctbGlzdC0xJyBiYXNlZCBmdW5jdGlvbi4KLQkoYWxsLWZyYW1lcyAoY29u ZCAoKG5vdCBmcmFtZSkgdCkgKChlcSBmcmFtZSB0KSBuaWwpICh0IGZyYW1lKSkpKQotICAg IChkb2xpc3QgKHdpbmRvdyAod2luZG93LWxpc3QtMSBuaWwgbmlsIGFsbC1mcmFtZXMpKQot ICAgICAgKGlmIChlcSAod2luZG93LWJ1ZmZlciB3aW5kb3cpIGJ1ZmZlcikKLQkgIChxdWl0 LXdpbmRvdyBraWxsIHdpbmRvdykKLQk7OyBJZiBhIHdpbmRvdyBkb2Vzbid0IHNob3cgQlVG RkVSLCB1bnJlY29yZCBCVUZGRVIgaW4gaXQuCi0JKHVucmVjb3JkLXdpbmRvdy1idWZmZXIg d2luZG93IGJ1ZmZlcikpKSkpCisJKGZyYW1lcyAoY29uZCAoKG5vdCBmcmFtZSkgdCkgKChl cSBmcmFtZSB0KSBuaWwpICh0IGZyYW1lKSkpKQorICAgIChkb2xpc3QgKHdpbmRvdyAod2lu ZG93LWxpc3QtMSBuaWwgbmlsIGZyYW1lcykpCisgICAgICAod2hlbiAoZXEgKHdpbmRvdy1i dWZmZXIgd2luZG93KSBidWZmZXIpCisJKHF1aXQtcmVzdG9yZS13aW5kb3cgd2luZG93IGtp bGwpKQorICAgICAgOzsgUmVtb3ZlIHF1aXQtcmVzdG9yZSgtcHJldikgZW50cmllcyB0aGF0 IG1lbnRpb24gQlVGRkVSLgorICAgICAgKGxldCAoKHF1aXQtcmVzdG9yZSAod2luZG93LXBh cmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZSkpCisJICAgIChxdWl0LXJlc3RvcmUtcHJl diAod2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZS1wcmV2KSkpCisJKHdo ZW4gKGVxIGJ1ZmZlciAobnRoIDMgcXVpdC1yZXN0b3JlLXByZXYpKQorCSAgKHNldC13aW5k b3ctcGFyYW1ldGVyIHdpbmRvdyAncXVpdC1yZXN0b3JlLXByZXYgbmlsKSkKKwkod2hlbiAo ZXEgYnVmZmVyIChudGggMyBxdWl0LXJlc3RvcmUpKQorCSAgKHNldC13aW5kb3ctcGFyYW1l dGVyCisJICAgd2luZG93ICdxdWl0LXJlc3RvcmUgKHdpbmRvdy1wYXJhbWV0ZXIgd2luZG93 ICdxdWl0LXJlc3RvcmUtcHJldikpKSkKKyAgICAgIDs7IFVucmVjb3JkIEJVRkZFUiBpbiB0 aGlzIHdpbmRvdy4KKyAgICAgICh1bnJlY29yZC13aW5kb3ctYnVmZmVyIHdpbmRvdyBidWZm ZXIpKSkpCiAMCiAoZGVmdW4gd2luZG93LS1jb21iaW5hdGlvbi1yZXNpemFibGUgKHBhcmVu dCAmb3B0aW9uYWwgaG9yaXpvbnRhbCkKICAgIlJldHVybiBudW1iZXIgb2YgcGl4ZWxzIHJl Y292ZXJhYmxlIGZyb20gaGVpZ2h0IG9mIHdpbmRvdyBQQVJFTlQuCkBAIC02NjczLDcgKzY3 MDIsNyBAQCBkaXNwbGF5LWJ1ZmZlci1yZWNvcmQtd2luZG93CiAgICAgICA7OyBXSU5ET1cg c2hvd3MgYW5vdGhlciBidWZmZXIuCiAgICAgICAod2l0aC1jdXJyZW50LWJ1ZmZlciAod2lu ZG93LWJ1ZmZlciB3aW5kb3cpCiAJKHNldC13aW5kb3ctcGFyYW1ldGVyCi0JIHdpbmRvdyAn cXVpdC1yZXN0b3JlCisJIHdpbmRvdyAncXVpdC1yZXN0b3JlLXByZXYKIAkgKGxpc3QgJ290 aGVyCiAJICAgICAgIDs7IEEgcXVhZHJ1cGxlIG9mIFdJTkRPVydzIGJ1ZmZlciwgc3RhcnQs IHBvaW50IGFuZCBoZWlnaHQuCiAJICAgICAgIChsaXN0IChjdXJyZW50LWJ1ZmZlcikgKHdp bmRvdy1zdGFydCB3aW5kb3cpCg== --------------tmLxt90jOBkUU93V5IoK7Iy0--
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 3 Jun 2024 09:35:00 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 03 05:34:59 2024 Received: from localhost ([127.0.0.1]:59021 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sE45i-0006ER-SF for submit <at> debbugs.gnu.org; Mon, 03 Jun 2024 05:34:59 -0400 Received: from mout.gmx.net ([212.227.15.15]:35363) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sE45e-0006EB-9L for 59862 <at> debbugs.gnu.org; Mon, 03 Jun 2024 05:34:57 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1717407274; x=1718012074; i=rudalics@HIDDEN; bh=x7ngPJncLu2zWSPGzaonAK4KG8Qs1gRxAfZbMMlC9Ww=; h=X-UI-Sender-Class:Content-Type:Message-ID:Date:MIME-Version: Subject:To:References:From:In-Reply-To:cc: content-transfer-encoding:content-type:date:from:message-id: mime-version:reply-to:subject:to; b=io4ix7JpK3ec/Jm4EecxKDwGinyKl01/G9E9a53NMDY7v0/QSKFKUfdzrObF/ZzV Ch0mIzpyBB8duV3Ijg3zgSmgW4EovYXrxxIxEfw/ChpoKcZT43YARTYDs4wsY59nW HhmeiDOP52atsGugmYWclgIomZsBd3ncP8DZRI7EccApOpvU+d1V8AK1fThdFifh/ rCTDIyX2bagEh1A/x8Locs2S4CIHZsinFm6UNRKnIdz7qhRHGvl+wmsvuD61CcD9s IWSyOOuOHydO7bnswBlsabRfMBs69X+7YEocJL299A0zEqEsOngms7RLhlYU5OT04 yd6EGgkb+WvD1I8ALg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.29]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MXGrE-1ryDmm0fr4-00VOJY; Mon, 03 Jun 2024 11:34:34 +0200 Content-Type: multipart/mixed; boundary="------------IC2I0Uy7drpTFuo2EwzOlvBQ" Message-ID: <8243325e-ed03-4e9e-b64f-c8225fb6dc60@HIDDEN> Date: Mon, 3 Jun 2024 11:34:33 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#59862: quit-restore per window buffer To: Juri Linkov <juri@HIDDEN>, 59862 <at> debbugs.gnu.org References: <86fsds8mlm.fsf@HIDDEN> <86ttibq1w1.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86ttibq1w1.fsf@HIDDEN> X-Provags-ID: V03:K1:grXd230jyaCkhefQ9m5UjFGXaqn4BtRnCTJQNy3OWT2ufg1CkzT 1A4ybSxmm1W+UzSYXwM8Oi2fc8vzqHi0mgASWuoPdV2jSiCDqKYxK6R3eVDJkggFDl6L83a g7u6XSIQ2euL51kbrRhdqB3d+9jPjEA3Zjev1wH5Zoo81Qq9qMtTBj3AgQWUkGDauC2EMqU TqayKgV3lV/vd5Me+ymkA== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:JBgaVkSZWuY=;UtabX/FBvgBK+tgUdKmFpDcJjNa 2s0v7FYh8+6DS3593o2+wYJKG/AaTjMoAdEBwavWe1Pt6xlW+oYT07gDsl+5beiOpWijP8Dt9 tamm5coHSj6QZ393yx9l4wqoOYpzScaqXPHT6HpiKCuI06eSpnxqulSrDivfY6OVz7YcmHeZg nVbeMejbPH41Fo2rsDM67JIPUCFwJtGAz4YXgJCgKC4LYLRdHdtOaHW1Hmg+A0CkWsGbWROz1 HW4OFTIWoRrtTz+gXInFpF2OuBbblNkwKGelfcEccNUSm4C5vi6nVUtlbb6q1cGsWPCa/kXS4 52bo2QMBGAWMiMMooxd7uk9Hqg4Q73bGSwrhz5p1g8I2L8UMUYr3FozO3nUhvZxD5Dgn4C/bk 0Uki5ZbZmYc0vb4JgpImKa1FNDZsFURefQRU6kebhqEJ9QC427/kWGNPUZKrJwkM09zO+tpZC PTG16OrF2gIhcjxV+P7pbJOh0sG6f1xO38/ZWmEhtuD0vYblQQPOCtQ7k9mpCLPzu/tMMOjaj xIXD6/0SStOsnyK29VPFxeFQYMvrpyo1DDa8Qnf7dNMs0UwFegZpXpXcX4+PEb8FanQBV4jJG aKjtXtbuVtyMY+Hnz0Q3Cbkq6rTmMhSvejUXG8PQAJk3lLt7APsaCV702MWQNUodahIaOh82s hm6QQ0dCzv/ThzveDp5pdT0YgE76v1JSxa3Gr6S0qUPeV6O9gTMaD0GCpdUHjvsGP5Q4mZA9q NSim3VoULpVFX4u7tD1RMgWJrIfA2fiSbI5srkLpxuiwfSY49P0KivGiYW2aWQopqI+XjK8Nl sfYRuHFqeIs1AoMWifD265cNhKMPwp8ggbZiNdi60GhBU4GJlHNCHl4M1vddmednWy X-Spam-Score: 2.9 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > Martin, do you agree with this? I tested this patch for a long time. > >> 1. C-x 4 d RET C-h C-t q q -- the bottom window is NOT deleted >> 2. C-x 4 d RET C-h C-t C-x k RET q -- the bottom window i [...] Content analysis details: (2.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.29 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.15 listed in list.dnswl.org] X-Debbugs-Envelope-To: 59862 X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 1.9 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > Martin, do you agree with this? I tested this patch for a long time. > >> 1. C-x 4 d RET C-h C-t q q -- the bottom window is NOT deleted >> 2. C-x 4 d RET C-h C-t C-x k RET q -- the bottom window i [...] Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.29 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.15.15 listed in list.dnswl.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -0.0 SPF_PASS SPF: sender matches SPF record -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager This is a multi-part message in MIME format. --------------IC2I0Uy7drpTFuo2EwzOlvBQ Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit > Martin, do you agree with this? I tested this patch for a long time. > >> 1. C-x 4 d RET C-h C-t q q -- the bottom window is NOT deleted >> 2. C-x 4 d RET C-h C-t C-x k RET q -- the bottom window is deleted >> 3. C-x 4 d RET C-h C-n C-x k RET q -- the bottom window is NOT deleted >> >> The accidental difference between the last two is that the former uses >> `switch-to-buffer' whereas the latter uses `pop-to-buffer-same-window'. 'switch-to-buffer' leaves the 'quit-restore' parameter the way it was set up by C-x 4 d. 'pop-to-buffer-same-window' changes it to the 'reuse' type. So one fix is to have 'switch-to-buffer' record the window when it does not obey display actions and it gets the 'reuse' type as well. This way there are no more accidental differences when quitting the help buffer. >> The root of the problem is that displaying a buffer in an existing >> window, or quitting a buffer in an existing window overwrites its >> window parameter `quit-restore', and thus invalidates the history of >> how the first window was displayed. We could fix the former in 'display-buffer-record-window' by having it not overwrite an existing 'quit-restore' parameter when it displays another buffer. Then 'quit-window' would always delete the window in the scenarios above instead of showing the dir buffer. The backside is that additional information recorded by 'display-buffer-record-window' like the now selected window or window sizes would no more get recorded. >> A partial fix that solves only the first test case above is at least >> not to overwrite `quit-restore' on quitting other buffers in the same >> window: You cannot simply fix the third test in 'quit-restore-window' alone because C-x k leaves the 'quit-restore' parameter of the NEWS buffer unchanged. That's arguably a bug: When killing buffers and in some other cases we should remove the 'quit-restore' parameter. >> diff --git a/lisp/window.el b/lisp/window.el >> index a11293d372a..e3b057599d5 100644 >> --- a/lisp/window.el >> +++ b/lisp/window.el >> @@ -5275,14 +5276,14 @@ quit-restore-window >> (set-window-prev-buffers >> window (append (window-prev-buffers window) (list entry)))) >> ;; Reset the quit-restore parameter. >> - (set-window-parameter window 'quit-restore nil) Why keep it here? After all, this one has accomplished its mission so keeping it looks like an UXB to me. >> ;; Select old window. >> ;; If the previously selected window is still alive, select it. >> (window--quit-restore-select-window quit-restore-2)) >> (t >> ;; Show some other buffer in WINDOW and reset the quit-restore >> ;; parameter. >> - (set-window-parameter window 'quit-restore nil) Keeping this one looks OK. If the buffer shown in the window is not the one the parameter mentions, chances are that a 'quit-restore-window' can eventually use it in the future. >> But the proper fix for other problems would be to replace the window >> parameter `quit-restore' currently shared by all buffers in the same window >> by a stack where every window buffer should keep own quit-restore data. >> There is already such a stack in `window-prev-buffers', so a possible >> solution would be to add quit-restore data to each buffer >> in window-prev-buffers. And how would such a stack handle intertwined 'next-buffer' and 'prev-buffer' calls? Stacks are one of those things that set apart computers from human beings. >> Alternatively, it would be nice to have an option that would prevent >> overwriting the initial value of the window parameter `quit-restore', >> thus `quit-restore-window' could delete the window regardless of >> how many buffers were displayed in that window, like it does in case >> of dedicated windows. I attach a patch that tries to do that. Here it handles all scenarios you describe above. However, it's by no means trivial and requires at least _one month_ of testing on your side. I have not addressed the (eq (nth 1 quit-restore) 'tab) case in 'quit-restore-window'. You have to look into this yourself. And there might obviously be other cases missing. martin --------------IC2I0Uy7drpTFuo2EwzOlvBQ Content-Type: text/x-patch; charset=UTF-8; name="quit-restore.diff" Content-Disposition: attachment; filename="quit-restore.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2xpc3Avd2luZG93LmVsIGIvbGlzcC93aW5kb3cuZWwKaW5kZXggYjAx NGJlNmE3Y2YuLjhiNzlhODkyNzBiIDEwMDY0NAotLS0gYS9saXNwL3dpbmRvdy5lbAorKysg Yi9saXNwL3dpbmRvdy5lbApAQCAtNTEwOCw4ICs1MTA4LDggQEAgZGVsZXRlLXdpbmRvd3Mt b24KICAgKGxldCAoKGJ1ZmZlciAod2luZG93LW5vcm1hbGl6ZS1idWZmZXIgYnVmZmVyLW9y LW5hbWUpKQogCTs7IEhhbmRsZSB0aGUgImludmVydGVkIiBtZWFuaW5nIG9mIHRoZSBGUkFN RSBhcmd1bWVudCB3cnQgb3RoZXIKIAk7OyBgd2luZG93LWxpc3QtMScgYmFzZWQgZnVuY3Rp b24uCi0JKGFsbC1mcmFtZXMgKGNvbmQgKChub3QgZnJhbWUpIHQpICgoZXEgZnJhbWUgdCkg bmlsKSAodCBmcmFtZSkpKSkKLSAgICAoZG9saXN0ICh3aW5kb3cgKHdpbmRvdy1saXN0LTEg bmlsIG5pbCBhbGwtZnJhbWVzKSkKKwkoZnJhbWVzIChjb25kICgobm90IGZyYW1lKSB0KSAo KGVxIGZyYW1lIHQpIG5pbCkgKHQgZnJhbWUpKSkpCisgICAgKGRvbGlzdCAod2luZG93ICh3 aW5kb3ctbGlzdC0xIG5pbCAnbm9taW5pIGZyYW1lcykpCiAgICAgICAoaWYgKGVxICh3aW5k b3ctYnVmZmVyIHdpbmRvdykgYnVmZmVyKQogCSAgKGxldCAoKGRlbGV0YWJsZSAod2luZG93 LWRlbGV0YWJsZS1wIHdpbmRvdykpCiAgICAgICAgICAgICAgICAgKGRlZGljYXRlZCAod2lu ZG93LWRlZGljYXRlZC1wIHdpbmRvdykpKQpAQCAtNTEyMSwxMiArNTEyMSwxOCBAQCBkZWxl dGUtd2luZG93cy1vbgogCSAgICAgIDs7IERlbGV0ZSB3aW5kb3cuCiAJICAgICAgKGRlbGV0 ZS13aW5kb3cgd2luZG93KSkKIAkgICAgICh0Ci0JICAgICAgOzsgSW4gd2luZG93IHN3aXRj aCB0byBwcmV2aW91cyBidWZmZXIuCi0JICAgICAgKHNldC13aW5kb3ctZGVkaWNhdGVkLXAg d2luZG93IG5pbCkKLQkgICAgICAoc3dpdGNoLXRvLXByZXYtYnVmZmVyIHdpbmRvdyAnYnVy eSkKLSAgICAgICAgICAgICAgOzsgUmVzdG9yZSB0aGUgZGVkaWNhdGVkICdzaWRlJyBmbGFn LgotICAgICAgICAgICAgICAod2hlbiAoZXEgZGVkaWNhdGVkICdzaWRlKQotICAgICAgICAg ICAgICAgIChzZXQtd2luZG93LWRlZGljYXRlZC1wIHdpbmRvdyAnc2lkZSkpKSkpCisJICAg ICAgKHdoZW4gKGVxICh3aW5kb3ctYnVmZmVyIHdpbmRvdykgYnVmZmVyKQorCQkocXVpdC1y ZXN0b3JlLXdpbmRvdyB3aW5kb3cpKQorCSAgICAgIDs7IFJlbW92ZSBxdWl0LXJlc3RvcmUo LXByZXYpIGVudHJpZXMgdGhhdCBtZW50aW9uIEJVRkZFUi4KKwkgICAgICAobGV0ICgocXVp dC1yZXN0b3JlICh3aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVpdC1yZXN0b3JlKSkKKwkJ ICAgIChxdWl0LXJlc3RvcmUtcHJldiAod2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQt cmVzdG9yZS1wcmV2KSkpCisJCSh3aGVuIChlcSBidWZmZXIgKG50aCAzIHF1aXQtcmVzdG9y ZS1wcmV2KSkKKwkJICAoc2V0LXdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJlc3Rv cmUtcHJldiBuaWwpKQorCQkod2hlbiAoZXEgYnVmZmVyIChudGggMyBxdWl0LXJlc3RvcmUp KQorCQkgIChzZXQtd2luZG93LXBhcmFtZXRlcgorCQkgICB3aW5kb3cgJ3F1aXQtcmVzdG9y ZSAod2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZS1wcmV2KSkpKQorCSAg ICAgIDs7IFVucmVjb3JkIEJVRkZFUiBpbiB0aGlzIHdpbmRvdy4KKwkgICAgICAodW5yZWNv cmQtd2luZG93LWJ1ZmZlciB3aW5kb3cgYnVmZmVyKSkpKQogCTs7IElmIGEgd2luZG93IGRv ZXNuJ3Qgc2hvdyBCVUZGRVIsIHVucmVjb3JkIEJVRkZFUiBpbiBpdC4KIAkodW5yZWNvcmQt d2luZG93LWJ1ZmZlciB3aW5kb3cgYnVmZmVyKSkpKSkKIApAQCAtNTE0NiwxNyArNTE1Miwx OCBAQCByZXBsYWNlLWJ1ZmZlci1pbi13aW5kb3dzCiAgIChpbnRlcmFjdGl2ZSAiYkJ1ZmZl ciB0byByZXBsYWNlOiAiKQogICAobGV0ICgoYnVmZmVyICh3aW5kb3ctbm9ybWFsaXplLWJ1 ZmZlciBidWZmZXItb3ItbmFtZSkpKQogICAgIChkb2xpc3QgKHdpbmRvdyAod2luZG93LWxp c3QtMSBuaWwgbmlsIHQpKQotICAgICAgKGlmIChlcSAod2luZG93LWJ1ZmZlciB3aW5kb3cp IGJ1ZmZlcikKLSAgICAgICAgICA7OyBEZWxldGUgYSBkZWRpY2F0ZWQgd2luZG93IHVubGVz cyBpdCBpcyBhIHNpZGUgd2luZG93LgotICAgICAgICAgIChsZXQgKChkZWRpY2F0ZWQtc2lk ZSAoZXEgKHdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cpICdzaWRlKSkpCi0gICAgICAgICAg ICAod2hlbiAob3IgZGVkaWNhdGVkLXNpZGUgKG5vdCAod2luZG93LS1kZWxldGUgd2luZG93 IHQgdCkpKQotICAgICAgICAgICAgICA7OyBTd2l0Y2ggdG8gYW5vdGhlciBidWZmZXIgaW4g dGhhdCB3aW5kb3cuCi0gICAgICAgICAgICAgIChzZXQtd2luZG93LWRlZGljYXRlZC1wIHdp bmRvdyBuaWwpCi0gICAgICAgICAgICAgIChpZiAoc3dpdGNoLXRvLXByZXYtYnVmZmVyIHdp bmRvdyAna2lsbCkKLSAgICAgICAgICAgICAgICAgIChhbmQgZGVkaWNhdGVkLXNpZGUgKHNl dC13aW5kb3ctZGVkaWNhdGVkLXAgd2luZG93ICdzaWRlKSkKLSAgICAgICAgICAgICAgICAo d2luZG93LS1kZWxldGUgd2luZG93IG5pbCAna2lsbCkpKSkKLQk7OyBVbnJlY29yZCBCVUZG RVIgaW4gV0lORE9XLgotCSh1bnJlY29yZC13aW5kb3ctYnVmZmVyIHdpbmRvdyBidWZmZXIp KSkpKQorICAgICAgKHdoZW4gKGVxICh3aW5kb3ctYnVmZmVyIHdpbmRvdykgYnVmZmVyKQor CShxdWl0LXJlc3RvcmUtd2luZG93IHdpbmRvdyAna2lsbCkpCisgICAgICA7OyBSZW1vdmUg cXVpdC1yZXN0b3JlKC1wcmV2KSBlbnRyaWVzIHRoYXQgbWVudGlvbiBCVUZGRVIuCisgICAg ICAobGV0ICgocXVpdC1yZXN0b3JlICh3aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVpdC1y ZXN0b3JlKSkKKwkgICAgKHF1aXQtcmVzdG9yZS1wcmV2ICh3aW5kb3ctcGFyYW1ldGVyIHdp bmRvdyAncXVpdC1yZXN0b3JlLXByZXYpKSkKKwkod2hlbiAoZXEgYnVmZmVyIChudGggMyBx dWl0LXJlc3RvcmUtcHJldikpCisJICAoc2V0LXdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdx dWl0LXJlc3RvcmUtcHJldiBuaWwpKQorCSh3aGVuIChlcSBidWZmZXIgKG50aCAzIHF1aXQt cmVzdG9yZSkpCisJICAoc2V0LXdpbmRvdy1wYXJhbWV0ZXIKKwkgICB3aW5kb3cgJ3F1aXQt cmVzdG9yZSAod2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZS1wcmV2KSkp KQorICAgICAgOzsgVW5yZWNvcmQgQlVGRkVSIGluIHRoaXMgd2luZG93LgorICAgICAgKHVu cmVjb3JkLXdpbmRvdy1idWZmZXIgd2luZG93IGJ1ZmZlcikpKSkKIAogKGRlZmN1c3RvbSBx dWl0LXdpbmRvdy1ob29rIG5pbAogICAiSG9vayBydW4gYmVmb3JlIHBlcmZvcm1pbmcgYW55 IG90aGVyIGFjdGlvbnMgaW4gdGhlIGBxdWl0LXdpbmRvdycgY29tbWFuZC4iCkBAIC01MjEw LDEzICs1MjE3LDE1IEBAIHF1aXQtcmVzdG9yZS13aW5kb3cKICAgKHNldHEgd2luZG93ICh3 aW5kb3ctbm9ybWFsaXplLXdpbmRvdyB3aW5kb3cgdCkpCiAgIChsZXQqICgoYnVmZmVyICh3 aW5kb3ctYnVmZmVyIHdpbmRvdykpCiAJIChxdWl0LXJlc3RvcmUgKHdpbmRvdy1wYXJhbWV0 ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUpKQorCSAocXVpdC1yZXN0b3JlLXByZXYgKHdpbmRv dy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUtcHJldikpCiAJIChxdWl0LXJlc3Rv cmUtMiAobnRoIDIgcXVpdC1yZXN0b3JlKSkKKwkgKHF1aXQtcmVzdG9yZS1wcmV2LTIgKG50 aCAyIHF1aXQtcmVzdG9yZS1wcmV2KSkKICAgICAgICAgIChwcmV2LWJ1ZmZlciAoY2F0Y2gg J3ByZXYtYnVmZmVyCiAgICAgICAgICAgICAgICAgICAgICAgICAoZG9saXN0IChidWYgKHdp bmRvdy1wcmV2LWJ1ZmZlcnMgd2luZG93KSkKICAgICAgICAgICAgICAgICAgICAgICAgICAg KHVubGVzcyAoZXEgKGNhciBidWYpIGJ1ZmZlcikKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAodGhyb3cgJ3ByZXYtYnVmZmVyIChjYXIgYnVmKSkpKSkpCiAgICAgICAgICAoZGVk aWNhdGVkICh3aW5kb3ctZGVkaWNhdGVkLXAgd2luZG93KSkKLQkgcXVhZCBlbnRyeSkKKwkg cXVhZCBlbnRyeSByZXNldC1wcmV2KQogICAgIChjb25kCiAgICAgIDs7IEZpcnN0IHRyeSB0 byBkZWxldGUgZGVkaWNhdGVkIHdpbmRvd3MgdGhhdCBhcmUgbm90IHNpZGUgd2luZG93cy4K ICAgICAgKChhbmQgZGVkaWNhdGVkIChub3QgKGVxIGRlZGljYXRlZCAnc2lkZSkpCkBAIC01 MjMwLDIxICs1MjM5LDM1IEBAIHF1aXQtcmVzdG9yZS13aW5kb3cKICAgICAgIDs7IElmIHRo ZSBwcmV2aW91c2x5IHNlbGVjdGVkIHdpbmRvdyBpcyBzdGlsbCBhbGl2ZSwgc2VsZWN0IGl0 LgogICAgICAgKHdpbmRvdy0tcXVpdC1yZXN0b3JlLXNlbGVjdC13aW5kb3cgcXVpdC1yZXN0 b3JlLTIpKQogICAgICAoKGFuZCAobm90IHByZXYtYnVmZmVyKQotCSAgIChvciAoZXEgKG50 aCAxIHF1aXQtcmVzdG9yZSkgJ2ZyYW1lKQotCSAgICAgICAoYW5kIChlcSAobnRoIDEgcXVp dC1yZXN0b3JlKSAnd2luZG93KQotCQkgICAgOzsgSWYgdGhlIHdpbmRvdyBoYXMgYmVlbiBj cmVhdGVkIG9uIGFuIGV4aXN0aW5nCi0JCSAgICA7OyBmcmFtZSBhbmQgZW5kZWQgdXAgYXMg dGhlIHNvbGUgd2luZG93IG9uIHRoYXQKLQkJICAgIDs7IGZyYW1lLCBkbyBub3QgZGVsZXRl IGl0IChCdWcjMTI3NjQpLgotCQkgICAgKG5vdCAoZXEgd2luZG93IChmcmFtZS1yb290LXdp bmRvdyB3aW5kb3cpKSkpKQotCSAgIChlcSAobnRoIDMgcXVpdC1yZXN0b3JlKSBidWZmZXIp CisJICAgKG9yIChhbmQgKG9yIChlcSAobnRoIDEgcXVpdC1yZXN0b3JlKSAnZnJhbWUpCisJ CQkoYW5kIChlcSAobnRoIDEgcXVpdC1yZXN0b3JlKSAnd2luZG93KQorCQkJICAgICA7OyBJ ZiB0aGUgd2luZG93IGhhcyBiZWVuIGNyZWF0ZWQgb24gYW4KKwkJCSAgICAgOzsgZXhpc3Rp bmcgZnJhbWUgYW5kIGVuZGVkIHVwIGFzIHRoZSBzb2xlCisJCQkgICAgIDs7IHdpbmRvdyBv biB0aGF0IGZyYW1lLCBkbyBub3QgZGVsZXRlIGl0CisJCQkgICAgIDs7IChCdWcjMTI3NjQp LgorCQkJICAgICAobm90IChlcSB3aW5kb3cgKGZyYW1lLXJvb3Qtd2luZG93IHdpbmRvdykp KSkpCisJCSAgICAoZXEgKG50aCAzIHF1aXQtcmVzdG9yZSkgYnVmZmVyKSkKKwkgICAgICAg KGFuZCAob3IgKGVxIChudGggMSBxdWl0LXJlc3RvcmUtcHJldikgJ2ZyYW1lKQorCQkJKGFu ZCAoZXEgKG50aCAxIHF1aXQtcmVzdG9yZS1wcmV2KSAnd2luZG93KQorCQkJICAgICAobm90 IChlcSB3aW5kb3cgKGZyYW1lLXJvb3Qtd2luZG93IHdpbmRvdykpKSkpCisJCSAgICAoZXEg KG50aCAzIHF1aXQtcmVzdG9yZS1wcmV2KSBidWZmZXIpCisJCSAgICA7OyBVc2Ugc2VsZWN0 ZWQgd2luZG93IGZyb20gcXVpdC1yZXN0b3JlLXByZXYuCisJCSAgICAoc2V0cSBxdWl0LXJl c3RvcmUtMiBxdWl0LXJlc3RvcmUtcHJldi0yKSkpCiAJICAgOzsgRGVsZXRlIFdJTkRPVyBp ZiBwb3NzaWJsZS4KIAkgICAod2luZG93LS1kZWxldGUgd2luZG93IG5pbCAoZXEgYnVyeS1v ci1raWxsICdraWxsKSkpCiAgICAgICA7OyBJZiB0aGUgcHJldmlvdXNseSBzZWxlY3RlZCB3 aW5kb3cgaXMgc3RpbGwgYWxpdmUsIHNlbGVjdCBpdC4KICAgICAgICh3aW5kb3ctLXF1aXQt cmVzdG9yZS1zZWxlY3Qtd2luZG93IHF1aXQtcmVzdG9yZS0yKSkKLSAgICAgKChhbmQgKGxp c3RwIChzZXRxIHF1YWQgKG50aCAxIHF1aXQtcmVzdG9yZSkpKQotCSAgIChidWZmZXItbGl2 ZS1wIChjYXIgcXVhZCkpCi0JICAgKGVxIChudGggMyBxdWl0LXJlc3RvcmUpIGJ1ZmZlcikp Ci0gICAgICA7OyBTaG93IGFub3RoZXIgYnVmZmVyIHN0b3JlZCBpbiBxdWl0LXJlc3RvcmUg cGFyYW1ldGVyLgorICAgICAoKG9yIChhbmQgKGxpc3RwIChzZXRxIHF1YWQgKG50aCAxIHF1 aXQtcmVzdG9yZSkpKQorCSAgICAgICAoYnVmZmVyLWxpdmUtcCAoY2FyIHF1YWQpKQorCSAg ICAgICAoZXEgKG50aCAzIHF1aXQtcmVzdG9yZSkgYnVmZmVyKSkKKwkgIChhbmQgKGxpc3Rw IChzZXRxIHF1YWQgKG50aCAxIHF1aXQtcmVzdG9yZS1wcmV2KSkpCisJICAgICAgIChidWZm ZXItbGl2ZS1wIChjYXIgcXVhZCkpCisJICAgICAgIChlcSAobnRoIDMgcXVpdC1yZXN0b3Jl LXByZXYpIGJ1ZmZlcikKKwkgICAgICAgOzsgVXNlIHNlbGVjdGVkIHdpbmRvdyBmcm9tIHF1 aXQtcmVzdG9yZS1wcmV2LgorCSAgICAgICAoc2V0cSBxdWl0LXJlc3RvcmUtMiBxdWl0LXJl c3RvcmUtcHJldi0yKQorCSAgICAgICA7OyBXZSB3YW50IHRvIHJlc2V0IHF1aXQtcmVzdG9y ZS1wcmV2IG9ubHkuCisJICAgICAgIChzZXRxIHJlc2V0LXByZXYgdCkpKQorICAgICAgOzsg U2hvdyBhbm90aGVyIGJ1ZmZlciBzdG9yZWQgaW4gcXVpdC1yZXN0b3JlKC1wcmV2KSBwYXJh bWV0ZXIuCiAgICAgICAod2hlbiAoYW5kIChpbnRlZ2VycCAobnRoIDMgcXVhZCkpCiAJCSAo aWYgKHdpbmRvdy1jb21iaW5lZC1wIHdpbmRvdykKICAgICAgICAgICAgICAgICAgICAgICgv PSAobnRoIDMgcXVhZCkgKHdpbmRvdy10b3RhbC1oZWlnaHQgd2luZG93KSkKQEAgLTUyODEs MTUgKzUzMDQsMTUgQEAgcXVpdC1yZXN0b3JlLXdpbmRvdwogCTs7IGBkaXNwbGF5LWJ1ZmZl ci1pbi1wcmV2aW91cy13aW5kb3cnIGNhbiBuZXZlcnRoZWxlc3MgZmluZCBpdC4KIAkoc2V0 LXdpbmRvdy1wcmV2LWJ1ZmZlcnMKIAkgd2luZG93IChhcHBlbmQgKHdpbmRvdy1wcmV2LWJ1 ZmZlcnMgd2luZG93KSAobGlzdCBlbnRyeSkpKSkKLSAgICAgIDs7IFJlc2V0IHRoZSBxdWl0 LXJlc3RvcmUgcGFyYW1ldGVyLgotICAgICAgKHNldC13aW5kb3ctcGFyYW1ldGVyIHdpbmRv dyAncXVpdC1yZXN0b3JlIG5pbCkKKyAgICAgIDs7IFJlc2V0IHRoZSBxdWl0LXJlc3RvcmUo LXByZXYpIHBhcmFtZXRlci4KKyAgICAgIChzZXQtd2luZG93LXBhcmFtZXRlcgorICAgICAg IHdpbmRvdyAoaWYgcmVzZXQtcHJldiAncXVpdC1yZXN0b3JlLXByZXYgJ3F1aXQtcmVzdG9y ZSkgbmlsKQogICAgICAgOzsgU2VsZWN0IG9sZCB3aW5kb3cuCiAgICAgICA7OyBJZiB0aGUg cHJldmlvdXNseSBzZWxlY3RlZCB3aW5kb3cgaXMgc3RpbGwgYWxpdmUsIHNlbGVjdCBpdC4K ICAgICAgICh3aW5kb3ctLXF1aXQtcmVzdG9yZS1zZWxlY3Qtd2luZG93IHF1aXQtcmVzdG9y ZS0yKSkKICAgICAgKHQKLSAgICAgIDs7IFNob3cgc29tZSBvdGhlciBidWZmZXIgaW4gV0lO RE9XIGFuZCByZXNldCB0aGUgcXVpdC1yZXN0b3JlCi0gICAgICA7OyBwYXJhbWV0ZXIuCi0g ICAgICAoc2V0LXdpbmRvdy1wYXJhbWV0ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUgbmlsKQor ICAgICAgOzsgU2hvdyBzb21lIG90aGVyIGJ1ZmZlciBpbiBXSU5ET1cgYW5kIGxlYXZlIHRo ZQorICAgICAgOzsgcXVpdC1yZXN0b3JlKC1wcmV2KSBwYXJhbWV0ZXJzIGFsb25lIChKdXJp J3MgaWRlYSkuCiAgICAgICA7OyBNYWtlIHN1cmUgdGhhdCBXSU5ET1cgaXMgbm8gbW9yZSBk ZWRpY2F0ZWQuCiAgICAgICAoc2V0LXdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cgbmlsKQog ICAgICAgOzsgVHJ5IHRvIHN3aXRjaCB0byBhIHByZXZpb3VzIGJ1ZmZlci4gIERlbGV0ZSB0 aGUgd2luZG93IG9ubHkgaWYKQEAgLTUyOTcsMTAgKzUzMjAsNyBAQCBxdWl0LXJlc3RvcmUt d2luZG93CiAgICAgICAoaWYgKHN3aXRjaC10by1wcmV2LWJ1ZmZlciB3aW5kb3cgYnVyeS1v ci1raWxsKQogICAgICAgICAgICh3aGVuIChlcSBkZWRpY2F0ZWQgJ3NpZGUpCiAgICAgICAg ICAgICAoc2V0LXdpbmRvdy1kZWRpY2F0ZWQtcCB3aW5kb3cgJ3NpZGUpKQotICAgICAgICAo d2luZG93LS1kZWxldGUgd2luZG93IG5pbCAoZXEgYnVyeS1vci1raWxsICdraWxsKSkKLSAg ICAgIDs7IElmIHRoZSBwcmV2aW91c2x5IHNlbGVjdGVkIHdpbmRvdyBpcyBzdGlsbCBhbGl2 ZSwgc2VsZWN0IGl0LgotICAgICAgKHdpbmRvdy0tcXVpdC1yZXN0b3JlLXNlbGVjdC13aW5k b3cgcXVpdC1yZXN0b3JlLTIpKSkpCi0KKyAgICAgICAgKHdpbmRvdy0tZGVsZXRlIHdpbmRv dyBuaWwgKGVxIGJ1cnktb3Ita2lsbCAna2lsbCkpKSkpCiAgICAgOzsgRGVhbCB3aXRoIHRo ZSBidWZmZXIuCiAgICAgKGNvbmQKICAgICAgKChub3QgKGJ1ZmZlci1saXZlLXAgYnVmZmVy KSkpCkBAIC01MzQyLDEyICs1MzYyLDIwIEBAIHF1aXQtd2luZG93cy1vbgogICAobGV0ICgo YnVmZmVyICh3aW5kb3ctbm9ybWFsaXplLWJ1ZmZlciBidWZmZXItb3ItbmFtZSkpCiAJOzsg SGFuZGxlIHRoZSAiaW52ZXJ0ZWQiIG1lYW5pbmcgb2YgdGhlIEZSQU1FIGFyZ3VtZW50IHdy dCBvdGhlcgogCTs7IGB3aW5kb3ctbGlzdC0xJyBiYXNlZCBmdW5jdGlvbi4KLQkoYWxsLWZy YW1lcyAoY29uZCAoKG5vdCBmcmFtZSkgdCkgKChlcSBmcmFtZSB0KSBuaWwpICh0IGZyYW1l KSkpKQotICAgIChkb2xpc3QgKHdpbmRvdyAod2luZG93LWxpc3QtMSBuaWwgbmlsIGFsbC1m cmFtZXMpKQotICAgICAgKGlmIChlcSAod2luZG93LWJ1ZmZlciB3aW5kb3cpIGJ1ZmZlcikK LQkgIChxdWl0LXdpbmRvdyBraWxsIHdpbmRvdykKLQk7OyBJZiBhIHdpbmRvdyBkb2Vzbid0 IHNob3cgQlVGRkVSLCB1bnJlY29yZCBCVUZGRVIgaW4gaXQuCi0JKHVucmVjb3JkLXdpbmRv dy1idWZmZXIgd2luZG93IGJ1ZmZlcikpKSkpCisJKGZyYW1lcyAoY29uZCAoKG5vdCBmcmFt ZSkgdCkgKChlcSBmcmFtZSB0KSBuaWwpICh0IGZyYW1lKSkpKQorICAgIChkb2xpc3QgKHdp bmRvdyAod2luZG93LWxpc3QtMSBuaWwgbmlsIGZyYW1lcykpCisgICAgICAod2hlbiAoZXEg KHdpbmRvdy1idWZmZXIgd2luZG93KSBidWZmZXIpCisJKHF1aXQtcmVzdG9yZS13aW5kb3cg d2luZG93IGtpbGwpKQorICAgICAgOzsgUmVtb3ZlIHF1aXQtcmVzdG9yZSgtcHJldikgZW50 cmllcyB0aGF0IG1lbnRpb24gQlVGRkVSLgorICAgICAgKGxldCAoKHF1aXQtcmVzdG9yZSAo d2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZSkpCisJICAgIChxdWl0LXJl c3RvcmUtcHJldiAod2luZG93LXBhcmFtZXRlciB3aW5kb3cgJ3F1aXQtcmVzdG9yZS1wcmV2 KSkpCisJKHdoZW4gKGVxIGJ1ZmZlciAobnRoIDMgcXVpdC1yZXN0b3JlLXByZXYpKQorCSAg KHNldC13aW5kb3ctcGFyYW1ldGVyIHdpbmRvdyAncXVpdC1yZXN0b3JlLXByZXYgbmlsKSkK Kwkod2hlbiAoZXEgYnVmZmVyIChudGggMyBxdWl0LXJlc3RvcmUpKQorCSAgKHNldC13aW5k b3ctcGFyYW1ldGVyCisJICAgd2luZG93ICdxdWl0LXJlc3RvcmUgKHdpbmRvdy1wYXJhbWV0 ZXIgd2luZG93ICdxdWl0LXJlc3RvcmUtcHJldikpKSkKKyAgICAgIDs7IFVucmVjb3JkIEJV RkZFUiBpbiB0aGlzIHdpbmRvdy4KKyAgICAgICh1bnJlY29yZC13aW5kb3ctYnVmZmVyIHdp bmRvdyBidWZmZXIpKSkpCiAMCiAoZGVmdW4gd2luZG93LS1jb21iaW5hdGlvbi1yZXNpemFi bGUgKHBhcmVudCAmb3B0aW9uYWwgaG9yaXpvbnRhbCkKICAgIlJldHVybiBudW1iZXIgb2Yg cGl4ZWxzIHJlY292ZXJhYmxlIGZyb20gaGVpZ2h0IG9mIHdpbmRvdyBQQVJFTlQuCkBAIC02 NjczLDcgKzY3MDEsNyBAQCBkaXNwbGF5LWJ1ZmZlci1yZWNvcmQtd2luZG93CiAgICAgICA7 OyBXSU5ET1cgc2hvd3MgYW5vdGhlciBidWZmZXIuCiAgICAgICAod2l0aC1jdXJyZW50LWJ1 ZmZlciAod2luZG93LWJ1ZmZlciB3aW5kb3cpCiAJKHNldC13aW5kb3ctcGFyYW1ldGVyCi0J IHdpbmRvdyAncXVpdC1yZXN0b3JlCisJIHdpbmRvdyAncXVpdC1yZXN0b3JlLXByZXYKIAkg KGxpc3QgJ290aGVyCiAJICAgICAgIDs7IEEgcXVhZHJ1cGxlIG9mIFdJTkRPVydzIGJ1ZmZl ciwgc3RhcnQsIHBvaW50IGFuZCBoZWlnaHQuCiAJICAgICAgIChsaXN0IChjdXJyZW50LWJ1 ZmZlcikgKHdpbmRvdy1zdGFydCB3aW5kb3cpCg== --------------IC2I0Uy7drpTFuo2EwzOlvBQ--
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at 59862) by debbugs.gnu.org; 2 Jun 2024 06:51:04 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jun 02 02:51:03 2024 Received: from localhost ([127.0.0.1]:57712 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sDf3X-0007v8-GV for submit <at> debbugs.gnu.org; Sun, 02 Jun 2024 02:51:03 -0400 Received: from relay7-d.mail.gandi.net ([217.70.183.200]:52351) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1sDf3V-0007ua-8C for 59862 <at> debbugs.gnu.org; Sun, 02 Jun 2024 02:51:02 -0400 Received: by mail.gandi.net (Postfix) with ESMTPSA id F1B6C20003; Sun, 2 Jun 2024 06:50:41 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: 59862 <at> debbugs.gnu.org Subject: Re: bug#59862: quit-restore per window buffer In-Reply-To: <86fsds8mlm.fsf@HIDDEN> (Juri Linkov's message of "Tue, 06 Dec 2022 19:32:05 +0200") Organization: LINKOV.NET References: <86fsds8mlm.fsf@HIDDEN> Date: Sun, 02 Jun 2024 09:45:02 +0300 Message-ID: <86ttibq1w1.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@HIDDEN X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 59862 Cc: martin rudalics <rudalics@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.7 (-) Martin, do you agree with this? I tested this patch for a long time. > 1. C-x 4 d RET C-h C-t q q -- the bottom window is NOT deleted > 2. C-x 4 d RET C-h C-t C-x k RET q -- the bottom window is deleted > 3. C-x 4 d RET C-h C-n C-x k RET q -- the bottom window is NOT deleted > > The accidental difference between the last two is that the former uses > `switch-to-buffer' whereas the latter uses `pop-to-buffer-same-window'. > > The root of the problem is that displaying a buffer in an existing > window, or quitting a buffer in an existing window overwrites its > window parameter `quit-restore', and thus invalidates the history of > how the first window was displayed. > > A partial fix that solves only the first test case above is at least > not to overwrite `quit-restore' on quitting other buffers in the same > window: > > diff --git a/lisp/window.el b/lisp/window.el > index a11293d372a..e3b057599d5 100644 > --- a/lisp/window.el > +++ b/lisp/window.el > @@ -5275,14 +5276,14 @@ quit-restore-window > (set-window-prev-buffers > window (append (window-prev-buffers window) (list entry)))) > ;; Reset the quit-restore parameter. > - (set-window-parameter window 'quit-restore nil) > ;; Select old window. > ;; If the previously selected window is still alive, select it. > (window--quit-restore-select-window quit-restore-2)) > (t > ;; Show some other buffer in WINDOW and reset the quit-restore > ;; parameter. > - (set-window-parameter window 'quit-restore nil) > ;; Make sure that WINDOW is no more dedicated. > (set-window-dedicated-p window nil) > ;; Try to switch to a previous buffer. Delete the window only if > > But the proper fix for other problems would be to replace the window > parameter `quit-restore' currently shared by all buffers in the same window > by a stack where every window buffer should keep own quit-restore data. > There is already such a stack in `window-prev-buffers', so a possible > solution would be to add quit-restore data to each buffer > in window-prev-buffers. > > Alternatively, it would be nice to have an option that would prevent > overwriting the initial value of the window parameter `quit-restore', > thus `quit-restore-window' could delete the window regardless of > how many buffers were displayed in that window, like it does in case > of dedicated windows.
bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 6 Dec 2022 17:34:57 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Dec 06 12:34:57 2022 Received: from localhost ([127.0.0.1]:44161 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1p2bqL-00067o-4w for submit <at> debbugs.gnu.org; Tue, 06 Dec 2022 12:34:57 -0500 Received: from lists.gnu.org ([209.51.188.17]:49600) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <juri@HIDDEN>) id 1p2bqK-00067i-0W for submit <at> debbugs.gnu.org; Tue, 06 Dec 2022 12:34:56 -0500 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 <juri@HIDDEN>) id 1p2bqD-0007nv-Kz for bug-gnu-emacs@HIDDEN; Tue, 06 Dec 2022 12:34:55 -0500 Received: from relay7-d.mail.gandi.net ([217.70.183.200]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <juri@HIDDEN>) id 1p2bqB-0003Tk-3Z for bug-gnu-emacs@HIDDEN; Tue, 06 Dec 2022 12:34:49 -0500 Received: (Authenticated sender: juri@HIDDEN) by mail.gandi.net (Postfix) with ESMTPSA id D78822000A for <bug-gnu-emacs@HIDDEN>; Tue, 6 Dec 2022 17:34:42 +0000 (UTC) From: Juri Linkov <juri@HIDDEN> To: bug-gnu-emacs@HIDDEN Subject: quit-restore per window buffer Organization: LINKOV.NET Date: Tue, 06 Dec 2022 19:32:05 +0200 Message-ID: <86fsds8mlm.fsf@HIDDEN> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=217.70.183.200; envelope-from=juri@HIDDEN; helo=relay7-d.mail.gandi.net X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.6 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -2.6 (--) 1. C-x 4 d RET C-h C-t q q -- the bottom window is NOT deleted 2. C-x 4 d RET C-h C-t C-x k RET q -- the bottom window is deleted 3. C-x 4 d RET C-h C-n C-x k RET q -- the bottom window is NOT deleted The accidental difference between the last two is that the former uses `switch-to-buffer' whereas the latter uses `pop-to-buffer-same-window'. The root of the problem is that displaying a buffer in an existing window, or quitting a buffer in an existing window overwrites its window parameter `quit-restore', and thus invalidates the history of how the first window was displayed. A partial fix that solves only the first test case above is at least not to overwrite `quit-restore' on quitting other buffers in the same window: ``` diff --git a/lisp/window.el b/lisp/window.el index a11293d372a..e3b057599d5 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -5275,14 +5276,14 @@ quit-restore-window (set-window-prev-buffers window (append (window-prev-buffers window) (list entry)))) ;; Reset the quit-restore parameter. - (set-window-parameter window 'quit-restore nil) ;; Select old window. ;; If the previously selected window is still alive, select it. (window--quit-restore-select-window quit-restore-2)) (t ;; Show some other buffer in WINDOW and reset the quit-restore ;; parameter. - (set-window-parameter window 'quit-restore nil) ;; Make sure that WINDOW is no more dedicated. (set-window-dedicated-p window nil) ;; Try to switch to a previous buffer. Delete the window only if ``` But the proper fix for other problems would be to replace the window parameter `quit-restore' currently shared by all buffers in the same window by a stack where every window buffer should keep own quit-restore data. There is already such a stack in `window-prev-buffers', so a possible solution would be to add quit-restore data to each buffer in window-prev-buffers. Alternatively, it would be nice to have an option that would prevent overwriting the initial value of the window parameter `quit-restore', thus `quit-restore-window' could delete the window regardless of how many buffers were displayed in that window, like it does in case of dedicated windows.
Juri Linkov <juri@HIDDEN>
:bug-gnu-emacs@HIDDEN
.
Full text available.bug-gnu-emacs@HIDDEN
:bug#59862
; Package emacs
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.