From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.bugs Subject: bug#39181: 27.0.50; [PATCH] Allow users to store & restore gdb-mi layout Date: Mon, 9 Mar 2020 10:01:53 +0100 Message-ID: <2bc5d577-eded-c79c-5b05-c815ed8ac212@gmx.at> References: <75FC69BA-CCD4-46D0-B9F5-109200C796F3@gmail.com> <55235252-FD03-4801-804A-864EFC1DCA0A@gmail.com> <90254CFF-2FFD-4D54-8467-717FF10166A2@gmail.com> <5c8d9f6a-0bc5-b2ff-1513-4b8631fee1a3@gmx.at> <2A945E3B-5506-4077-9C2E-AD049BCEFA23@gmail.com> <87zhcsyoee.fsf@gmail.com> <7DBBA6F5-4F53-48DC-A895-A0B06FF2A333@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="98633"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 39181@debbugs.gnu.org To: Yuan Fu , =?UTF-8?Q?=C5=A0t=C4=9Bp=C3=A1n_?= =?UTF-8?Q?N=C4=9Bmec?= Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Mar 09 10:03:51 2020 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jBEKC-000PTw-Ni for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 09 Mar 2020 10:03:48 +0100 Original-Received: from localhost ([::1]:39036 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jBEK9-0008Sa-QO for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 09 Mar 2020 05:03:46 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:52589) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jBEJX-0008PM-84 for bug-gnu-emacs@gnu.org; Mon, 09 Mar 2020 05:03:08 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jBEJS-0008AE-DZ for bug-gnu-emacs@gnu.org; Mon, 09 Mar 2020 05:03:07 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:43795) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1jBEJS-0008A5-6x for bug-gnu-emacs@gnu.org; Mon, 09 Mar 2020 05:03:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jBEJS-0007ki-3U for bug-gnu-emacs@gnu.org; Mon, 09 Mar 2020 05:03:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: martin rudalics Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 09 Mar 2020 09:03:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 39181 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 39181-submit@debbugs.gnu.org id=B39181.158374452429717 (code B ref 39181); Mon, 09 Mar 2020 09:03:01 +0000 Original-Received: (at 39181) by debbugs.gnu.org; 9 Mar 2020 09:02:04 +0000 Original-Received: from localhost ([127.0.0.1]:49761 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jBEIW-0007jF-F6 for submit@debbugs.gnu.org; Mon, 09 Mar 2020 05:02:04 -0400 Original-Received: from mout.gmx.net ([212.227.15.15]:47241) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jBEIU-0007id-0h for 39181@debbugs.gnu.org; Mon, 09 Mar 2020 05:02:02 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1583744514; bh=sjG7xyjm1AZgcbdTbvoxc7QXj4SGJTaBKlrmKFXLKMQ=; h=X-UI-Sender-Class:Subject:To:Cc:References:From:Date:In-Reply-To; b=diDtA7vmdoX/b8rlHfdRyNn5gE4FvTGurqWKv8t5mpk1aH9Ksqh7uBn+lhC5iPZsY dmYDV0WnxcyHnTmP9n/bR+a1+w5SrPxPKLLdkEn1rjM7cQBB3cJMcT0oeWBH9F0wfi DBFd93gqvY/5aqLli8NeKIxVJ4Sa5y6ICDAYkCeU= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Original-Received: from [192.168.1.101] ([212.95.5.251]) by mail.gmx.com (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MeU0k-1jjSeU2bbA-00aYfS; Mon, 09 Mar 2020 10:01:54 +0100 In-Reply-To: <7DBBA6F5-4F53-48DC-A895-A0B06FF2A333@gmail.com> Content-Language: en-US X-Provags-ID: V03:K1:KO8ktzWxWRhK4QA4V5Mme3X2mUIhJYtwnrBgOY0mWmzrG4SgyVd gSb3FqJUYDJrZiQKoRx6dZOCzKz5BpbZDKHtmW1QpbkGiVpxdCJbW171oJYDznHQOAwYbsv pXjVfdF8r/s93/rMsNbEF599ye7bx72K/RP/hGBQL4cGRwCDZIb+Fh5gI7oS2V7TjMJA8K6 HpfmqdG3x6jB0A8gizbsg== X-UI-Out-Filterresults: notjunk:1;V03:K0:FukM3ndeapk=:LWBQhRpza1PQHq3Hm3k7ah 81FQCpsGpGaIQdGA2xTdNzF7Qwq/0naduN8Tl8k5G6bWTjMvo4kkVDl5qYwN49RPrqxAMBIYr G8/2uv0izladbstkLJi08DrA15l+N9Lhjry8HOUl8jQaxFU5XToKPqjfyYPeuWbLmEpUulwcF gELf2NZeu71Dj77kDH00KoUzQas4UguOtMk1CAwjYnXcnDBz/PqOyUz4W+wpL+1fXxyT7oI2C M06gKwB2/s4AlV9V6Y0BPk0hJxnSwwohbFZyu17jOiKLOaImglIrbgEBtIJ8ay57GDhK4JPBO CBEbkBVXZeXO/61MFOAsKXxKrqKvaqFLg41Uvrx+PAfLM/Rc/y8WKK6dZW89+FrESiwPwK78E 1pRcShFqQLb4Vm9fQaT7siHeAxPEyHy9oMcFAqoNFCijvhhJ8+SOar4Zcmj5J/xVQyrNnCsiZ TtesQZDRVroBr71d1Y41Y7JXCE3Ng+bGAO6/P7Tnh/85hL/roife1jXq0UfdKvcj4kM/yg9AM QUZKPBPpY8kCudaeHg74uX2RwwgKToy834qIMTRoH5EPz4/7GrUbAYm8cYXMVa4wXLnHsuYYq l5z6ermzAaBVLb6plfKErWJUkV5Vdfat7VRjQuOePDGKy41xWmjtR9yaLXdRnC/OOcoFk92zu Fwz7IZ+ZpKgcNAMJYcOYLy7rs7inou57/ez05KSy7nygsJFOcwklFDnMROUygPIq5oA0Pm+1Y HfX0IJfeSojUC9PCKJuJ54xtcvcDMi0l6p0lzL0wfrpGCMydwVkHByLJKV0/IgTtT17tDVwc X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:177082 Archived-At: >> I'm sorry, I only skimmed through your patch, but shouldn't this use >> 'unwind-protect'? Otherwise the "temporarily" won't hold in case of >> abnormal exit from BODY, unless I'm missing something. >> >> =E2=80=94 >> =C5=A0t=C4=9Bp=C3=A1n > > Thanks for spotting that. I added the unwind-protext form. If we want to be more strict about this macro then how about the following forms: (with-selected-window-undedicated (set-window-dedicated-p nil t)) will leave the selected window dedicated which does not really violate the contract of the macro but is unexpected at least. The following is more serious: Suppose a user has a >=3D 2 windows layout= and does (set-window-dedicated-p nil t) (with-selected-window-undedicated (other-window 1)) which will have the macro make some other window dedicated and the initially selected window undedicated. A similar thing happens with (set-window-dedicated-p nil t) (with-selected-window-undedicated (delete-window)) The macro should be named 'with-window-undedicated', take a WINDOW (nil for the selected one) as first argument and BODY as second. It should restore the dedicated status of WINDOW to what it was before running BODY and leave the dedicated status of all other windows alone. IMHO. martin