Received: (at 73022) by debbugs.gnu.org; 12 Sep 2024 09:49:58 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 12 05:49:58 2024 Received: from localhost ([127.0.0.1]:40164 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sogSb-0006pk-RN for submit <at> debbugs.gnu.org; Thu, 12 Sep 2024 05:49:58 -0400 Received: from mout.gmx.net ([212.227.17.21]:53353) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sogSX-0006pN-RE for 73022 <at> debbugs.gnu.org; Thu, 12 Sep 2024 05:49:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1726134577; x=1726739377; i=rudalics@HIDDEN; bh=vXGZBQcPFbqzPEud+39t0pkdEF4ilcKrxsT1ZZVaaMQ=; 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=iiztHktz8ZkSfVfEvJVc4NZrOcJRibEolN9iMbaf15mtPjlwJ5ZYiNn5ue26MvR0 zqqrQh5em4CRNWj1uRL2bdoNHtYeg3KVfT+CTxb+OSe0Lk8uHFRxMUm06CSeaEXWS gM4zgrQUA2UxI3KlOaRzyd/1se9pJRbW0MGUx76YTOar2DqI2oqAxxGTN2Z+qndeq uD+YtPDlMfeSjUJ8n2w3bkREIObZVu5N/n1rz5uGYbid7ZlX8VGL2ptYj1OlxmtGz cBK5tpmYdwrXfwHfN8l+B+SDBzWljfzTUEgN3NC4Q8rm1So8Gm9tFDZpzGcll4Pfz ALP2k66VMuWpw0OXWw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([46.125.249.45]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MowGU-1sDe4V0NxO-00qW39; Thu, 12 Sep 2024 11:49:37 +0200 Message-ID: <718661cf-90f1-4590-b635-778dc3a5a099@HIDDEN> Date: Thu, 12 Sep 2024 11:49:36 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Eli Zaretskii <eliz@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <86cyli4fxj.fsf@HIDDEN> <e8b03cd0-9964-49e7-a08e-1f3a8bd92828@HIDDEN> <86seue2l2b.fsf@HIDDEN> <CAJKAhPApQOrWm8ge+kp7RMNjn9aq=-FSo5aCY_1gheRwGi5zOQ@HIDDEN> <2d8e4603-5ea6-41e9-abfe-461392f717db@HIDDEN> <CAJKAhPDgWxYLpGsWHF9TFZ3SbBrJgt_07JryK6_fsBh-q_JSwg@HIDDEN> <4c3591f1-7c26-489f-ba68-8586e98cd99e@HIDDEN> <861q1qpehg.fsf@HIDDEN> <0e489c29-8274-4610-835a-b01c66a48fca@HIDDEN> <86wmjinsao.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86wmjinsao.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:gZ4Bdk8Ne2QG5303yBKvlLsldVW85qvGPHNZRu88BBjbcUYkMI7 LlI96iY4GSosNol7dlYTbJjgHiIUR1JrXQcwStmlSxd463r1sXEvCT8/GPSGPOh+8YK08C1 kRo3Ar8xz/jH0rrgtfTTdbfNfV51CtNLLxZs5NLMrUR21sJQ0OFoce99fV6NH0VKSg1qFom F1n46yxmSgMzeWrK98aqA== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:gOEBjfKPQNg=;q1CbYekKkSvTVBPp+o3n3Xznzjd nVkXnPzj3cMsAnSersgg5HyIp5Z6Oj6ormLXFUXjDbA+TLmvCLnB/xG17i+gMqyeQQTmHIJv8 iC4K/wDvmyJw6J0M7V03k/vMpqZgVLl28vVMq6cJK++B+WxNTgq2lq1UyV80R0WgMM84/rR0d mzLfKDRE9flpMBwSdcwqeRb2BpBRZhfd8HMl5OAv2tiEC2OI57IDUrxA0x8SJdJXfGqS6P2bY vm4KRjl0mfn9HsU9/V/1nc8+x3FF6QBlbeiAODBUQhAjSuRQn2twGuDA++B5kM/HSSOjxOwf1 r79sEKL7V4q6xcUg2CU7Ul8BdLNUKXF8XJaW0t5XBqAipt4sAnDgsQEUd5bOCmG9vEsm4GQi8 NjtBUkvHgQU0Uqx/hoL+/hFAZk0mkYXjSxky/K3bDdaSIwIoeesvLjQ3zlBvmSkEAKS+3wvVv aQiEjBbK7cistRMNM85IGcEzxoBaQJFlJSQBHxnSpFbSTRX5VOGMWnjkove15C+kgEnmh7W3E Zu+S+IjXgF+NYBXiHgI3x+a9U+LYjMMUBmosnKOmNn84zBN7tZnCzQSYlvvnFx7HHfJPeDObc 1maiSrxX4hXHe6nOLyCWIutFry30DIrJNsXxGZG3vmJKl7HehNapdCNprSYat8zbtkOGeJU+2 F0v5qceU4m3veTXL89JNmcmurbqphbsdFPFWdAyy4/TXQvkKlmzwpkwStOodlXv4U2fb4kCg2 /wRGXGmE393CrZOrvCaW+4JjyE/ha3egHAKVooDYi28yrwqHNhC8hA4/e8zWpZYfaak6xMtNt rJFcEu8yc1jihdzIAP84Bg2g== X-Spam-Score: 2.8 (++) 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 _might_ be incorrect when we allow FRAME_TOTAL_LINES (f) to exceed >> FrameRows (FRAME_TTY (f)) because we refuse to shrink a frame below some >> height. That's why I used the term "probably". [...] Content analysis details: (2.8 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 SPF_PASS SPF: sender matches SPF record 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) 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [46.125.249.45 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.17.21 listed in list.dnswl.org] -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [212.227.17.21 listed in wl.mailspike.net] -0.0 T_SCC_BODY_TEXT_LINE No description available. X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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.8 (+) 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 _might_ be incorrect when we allow FRAME_TOTAL_LINES (f) to exceed >> FrameRows (FRAME_TTY (f)) because we refuse to shrink a frame below some >> height. That's why I used the term "probably". [...] Content analysis details: (1.8 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [212.227.17.21 listed in wl.mailspike.net] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [46.125.249.45 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.17.21 listed in list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 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 T_SCC_BODY_TEXT_LINE No description available. -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager >> It _might_ be incorrect when we allow FRAME_TOTAL_LINES (f) to exceed >> FrameRows (FRAME_TTY (f)) because we refuse to shrink a frame below some >> height. That's why I used the term "probably". If I knew what that >> code does in all consequences, I could tell you more. But I don't know. > > If FRAME_TOTAL_LINES is different from FrameRows at that spot, it's a > bug, isn't it? It depends. On a GUI frame do the following: In *scratch* insert the two lines (insert (format "%s" (frame-native-height))) (insert (format "%s" (window-pixel-height (frame-root-window)))) and then do C-x 2 three times so yet get four windows. Now with the mouse drag the lower border upwards as far as you can. The minibuffer window should have disappeared by now. Evaluate the two lines above by putting point at their end and typing C-x e. You will see that the second value exceeds the first one - the root window got larger than its frame. So the window dimensions as Emacs can reasonably draw them exceed the dimensions of the window as the WM gives them to us. The same thing happens on TTY frames. With split windows, the size of the root window may exceed the size of the terminal window. Whether we now synch FRAME_TOTAL_LINES and FrameRows is just a matter of taste. > I still don't understand what is supposed to happen when we shrink the > frame to less lines/columns than the minimum window dimensions we > allow. There are two minimum window dimensions we "allow": The first are the hard-coded 5/2 values in handle_window_change_signal and additionally imposed in frame_windows_min_size. IIUC neither of these takes care of menu or tab bars nor of any window splitting. The second is the 'frame-windows-min-size' code that takes care of the entire frame layout in an equal fashion for GUI frames and TTY frames. In either case we do not shrink the dimensions of our windows but keep them as in the GUI example above. > Also, I'd be happier if you could describe the sequence of > events that lead to frame and window resizing following a SIGWINCH. IIUC we call change_frame_size, possibly delay it, and eventually call adjust_frame_size just as we do for GUI frames. There's no special magic involved. The problematic thing I see is that the entire cursor wrapping code including the check in cmcheckmagic seem botched because when a window is virtually drawn below the border of the terminal window (as in the GUI example sketched above) we do not check whether the cursor ends up below that border too. In particular the form /* First the degenerate case */ if (row == curY (tty) && col == curX (tty)) /* already there */ return; in cmgoto seems to indicate that we leave the cursor at its current location. Maybe we do that even earlier, for example, in if (curY (tty) == vpos && curX (tty) == hpos) return; of tty_cursor_to. And maybe neither of these is relevant because redisplay simply does nothing if the size of the root window does not change (I wouldn't know where and how redisplay checks that). At the very end the check in cmcheckmagic aborts us in any such case. martin
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 11 Sep 2024 15:07:00 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 11 11:07:00 2024 Received: from localhost ([127.0.0.1]:39399 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1soOvs-0007X4-6s for submit <at> debbugs.gnu.org; Wed, 11 Sep 2024 11:07:00 -0400 Received: from eggs.gnu.org ([209.51.188.92]:40266) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1soOvp-0007Wq-Q3 for 73022 <at> debbugs.gnu.org; Wed, 11 Sep 2024 11:06:58 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1soOvd-0000tQ-0P; Wed, 11 Sep 2024 11:06:45 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=bkmtF2qRgzjOo/DFqGQjui/IwG1wnk2NI4ZFNtAGBYU=; b=JOsR/zsZ68vW DYql6xFGqR5OXS4AusUil7FQaxNeDDUfpic7wxbLnvwYnV0fS1fszmsK8vtmldqxMHRG8WLm9keDw WyO+OxxjFwvoOY+7UoxO4Gor21L4e2lkxx3ASCqONqIwCkMdW1PXqTsvpa4Be0WNgjftG1DVz7nrb p1hwX6LJbXYvJtlEYE85wPecfMMRUK9DYDF0u3DqCDHKthyG86aVTi+RBzkRJAlbw+Zq/CMOOUQx3 jBT5RJEBRinVbZmieXj1CIu/l173HAbHLK3Ldf3Zi+xhyDqR0VmFxql9k8+mBvWVCqjASKaoGx84M xGqahn9cPupwTmldo7HeQA==; Date: Wed, 11 Sep 2024 18:06:39 +0300 Message-Id: <86wmjinsao.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: martin rudalics <rudalics@HIDDEN> In-Reply-To: <0e489c29-8274-4610-835a-b01c66a48fca@HIDDEN> (message from martin rudalics on Wed, 11 Sep 2024 16:37:58 +0200) Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <86cyli4fxj.fsf@HIDDEN> <e8b03cd0-9964-49e7-a08e-1f3a8bd92828@HIDDEN> <86seue2l2b.fsf@HIDDEN> <CAJKAhPApQOrWm8ge+kp7RMNjn9aq=-FSo5aCY_1gheRwGi5zOQ@HIDDEN> <2d8e4603-5ea6-41e9-abfe-461392f717db@HIDDEN> <CAJKAhPDgWxYLpGsWHF9TFZ3SbBrJgt_07JryK6_fsBh-q_JSwg@HIDDEN> <4c3591f1-7c26-489f-ba68-8586e98cd99e@HIDDEN> <861q1qpehg.fsf@HIDDEN> <0e489c29-8274-4610-835a-b01c66a48fca@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: -3.3 (---) > Date: Wed, 11 Sep 2024 16:37:58 +0200 > Cc: n142857@HIDDEN, 73022 <at> debbugs.gnu.org > From: martin rudalics <rudalics@HIDDEN> > > >> > For instance, Eli recently added this code (dispnew.c): > >> > > >> > /* This should never happen, but evidently sometimes does if one > >> > resizes the frame quickly enough. Prevent aborts in cmcheckmagic. */ > >> > if (vpos >= FRAME_TOTAL_LINES (f)) > >> > return; > >> > > >> > But this is checking the *frame*. Later, the assertion in > >> > cmcheckmagic will be made about the *terminal*. > >> > >> Right. This should probably be > >> > >> if (FRAME_TERMCAP_P (f) && vpos >= FrameRows (FRAME_TTY (f))) > >> return; > > > > That code is in update_frame_line, which is used only for TTY frames > > and uses frame glyph matrices. IOW, it updates the entire frame as a > > single large window. In addition, on a TTY terminal there's only one > > frame visible at any given time, and only that one frame is being > > redrawn, ever. > > > > Given the above, why is that code incorrect? > > It _might_ be incorrect when we allow FRAME_TOTAL_LINES (f) to exceed > FrameRows (FRAME_TTY (f)) because we refuse to shrink a frame below some > height. That's why I used the term "probably". If I knew what that > code does in all consequences, I could tell you more. But I don't know. If FRAME_TOTAL_LINES is different from FrameRows at that spot, it's a bug, isn't it? The reason I didn't want to depend on FrameRows is that it might be modified by a signal handler, and I couldn't convince myself that they will always be in sync when we get to that spot. FRAME_TOTAL_LINES is the result of us adjusting the frame size when it's safe to do so, and it sounded like a better idea to me. > >> And it's not about resizing frames "quickly". Here I can crash it in a > >> very slow fashion too. > > > > Good for you, but my comment describes the situation in which I saw > > that particular problem. As I already said, I can never crash Emacs > > if I resize the terminal emulator window slowly. > > And as I already said I can crash Emacs reliably if I slowly shrink the > window, slowly expand it again, precisely at the moment it should reshow > the minibuffer window. You can ask me any question about the state of > the frame and its windows at the time of the crash. I still don't understand what is supposed to happen when we shrink the frame to less lines/columns than the minimum window dimensions we allow. Also, I'd be happier if you could describe the sequence of events that lead to frame and window resizing following a SIGWINCH. > > Most probably because the terminal driver simply ignores such writes. > > AFAIU, the assertion there is not because of the terminal, it is there > > to catch Emacs bugs. > > Then tell us how to catch it. I'm already out of ideas. Maybe later, when I have more time to think about this.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 11 Sep 2024 14:38:18 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 11 10:38:18 2024 Received: from localhost ([127.0.0.1]:39353 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1soOU6-00060o-Cr for submit <at> debbugs.gnu.org; Wed, 11 Sep 2024 10:38:18 -0400 Received: from mout.gmx.net ([212.227.17.21]:35829) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1soOU4-00060U-2T for 73022 <at> debbugs.gnu.org; Wed, 11 Sep 2024 10:38:17 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1726065480; x=1726670280; i=rudalics@HIDDEN; bh=ncoLq5uwQ6neWh2sEMhFuGkOC5Yf63LXoMWGtBDrEP4=; 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=RZLC3C2FJ/AmLX20Sh7zq8PHkSB1gtCx0Yq+VDrGcYYCRH9OmaovnEuoz29IgXjP AtToDeg/tvCRA1+hwoAd5azf255F45QrHMJfHv8/KozpjSzaBhfs0XEcp3oAIDjiX 8IOw1EV3RXLHJux8wiDgQaReUQPZ304VexT0E8JKGMCG0O1MtGSMeRSukyMVETk0q dBnAzhkDMI85dRb+iUI/vpMQOSWXX15YUac6NMoNBs4HHC8rSeD2oKtQiPR1Jm/3G SGxWdkMoTxQAJB+oyEvToPEOSu4EmIblkdgOshARd4+kaPgQSvlV6kbDi0PLqmXKh tYYdIzZXB13WoAzukA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([213.142.97.126]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N63RQ-1rvIrg2IRs-016OZw; Wed, 11 Sep 2024 16:38:00 +0200 Message-ID: <0e489c29-8274-4610-835a-b01c66a48fca@HIDDEN> Date: Wed, 11 Sep 2024 16:37:58 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Eli Zaretskii <eliz@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <86cyli4fxj.fsf@HIDDEN> <e8b03cd0-9964-49e7-a08e-1f3a8bd92828@HIDDEN> <86seue2l2b.fsf@HIDDEN> <CAJKAhPApQOrWm8ge+kp7RMNjn9aq=-FSo5aCY_1gheRwGi5zOQ@HIDDEN> <2d8e4603-5ea6-41e9-abfe-461392f717db@HIDDEN> <CAJKAhPDgWxYLpGsWHF9TFZ3SbBrJgt_07JryK6_fsBh-q_JSwg@HIDDEN> <4c3591f1-7c26-489f-ba68-8586e98cd99e@HIDDEN> <861q1qpehg.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <861q1qpehg.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:Xky8pCJEtsKWwkCEbnLqXDEvt1hoLOoMfnUeO1X2qWuiIqeyAb7 YakMJdZ4Wk40d0Puz9SUVenCnfzOyla9xQSDE+Dvlbu8WjpzF7sKAstCM/YvjHDOAkcipGp k3I8cTgpVkw5/yb1dKNlRy4nR3yG3eptoaGDjmtNN2mClW/xcPrLl6U0QeLAwdo15LT9csC rzf9aF+r3jGH92qylzxMw== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:ROh3u0vfuiQ=;D4UzFMN23s7vdEW2wChsTw7C4PU lfRs+HLIAoIg5uStRyjMDKqLCoSt1tHgKMXGDkQyQsTXftfq/bP5QyWaFrnfZ5LaKsCqGkicJ F/57uVdKMZQtbXFI00RaJ+RdUhL2YC/S6uvODMiZk5Lrtg6GWn1Mi1jUI+DT7aoecxNVDKsrk GmEtIG+CUgf7OkNvDxaqGGZyYhQOPNlVPsIgVe0wzOzSmdIvNToRRgq8nL3/dSdF6k6Qxo0Fc m8iR58Yw868EoWk2zwFPDszAMl+EQi/7hxfu6HyvNbeFCiLvUagLNrR1fswqmCKUnU89feGvO OhwtXExYj51UO2q2vDyRUArTPmfp0SAs+LLhFiMyUdhq5UZiQ9DpjdGajGvg7nt6GtJLcBgq8 z+ZqxIgh6YJzUJ3hQHLYz4BF/QDtGi3I1mxrFVQ62FA6LGxE7RfjCqw/0amii/OpPW+Wp+zQb yxgwI4mzfof1UH8+9+y/8i8wtRiR9wWd7do9M/eIs4GHvOcdJLh7V06ML+ea+wekYBcE4TNgB TXORw27Uy8VN6mu3rOzaIACA1PpD4eSCwGSBtDvQj+hBgxbHdQ5kD47usttcW1TQI5dyEru5Y IByaaStyZvD2KH6snrOAWCVHMPt0QmBfRqwDWMOGTlw2lH2oXuRGHxjJkQkZCycrL1i0CiC82 /ZrZAHYqQhiJb36xJkuyfUTNR8snGwkA93sVUiQSKp6qEIAEhSyaXBUkmseAMNbsZK9/NeaHS JivCEhdkDBVv6sgyGS4EaMdtRkMOmg7k3YmN1GIqs3i5WQihJAEfhiBzbv9iOMkUCTw7bzxZ5 lo1Rc9pkDsLGT8L/7hm307Xg== X-Spam-Score: 2.8 (++) 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: >> > For instance, Eli recently added this code (dispnew.c): >> > >> > /* This should never happen, but evidently sometimes does if one >> > resizes the frame quickly enough. Prevent aborts in cmchec [...] Content analysis details: (2.8 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.126 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.17.21 listed in list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 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 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [212.227.17.21 listed in wl.mailspike.net] -0.0 T_SCC_BODY_TEXT_LINE No description available. X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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.8 (+) 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: >> > For instance, Eli recently added this code (dispnew.c): >> > >> > /* This should never happen, but evidently sometimes does if one >> > resizes the frame quickly enough. Prevent aborts in cmchec [...] Content analysis details: (1.8 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [212.227.17.21 listed in wl.mailspike.net] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [213.142.97.126 listed in zen.spamhaus.org] -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at https://www.dnswl.org/, low trust [212.227.17.21 listed in list.dnswl.org] -0.0 SPF_PASS SPF: sender matches SPF record 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 T_SCC_BODY_TEXT_LINE No description available. -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager >> > For instance, Eli recently added this code (dispnew.c): >> > >> > /* This should never happen, but evidently sometimes does if one >> > resizes the frame quickly enough. Prevent aborts in cmcheckmagic. */ >> > if (vpos >= FRAME_TOTAL_LINES (f)) >> > return; >> > >> > But this is checking the *frame*. Later, the assertion in >> > cmcheckmagic will be made about the *terminal*. >> >> Right. This should probably be >> >> if (FRAME_TERMCAP_P (f) && vpos >= FrameRows (FRAME_TTY (f))) >> return; > > That code is in update_frame_line, which is used only for TTY frames > and uses frame glyph matrices. IOW, it updates the entire frame as a > single large window. In addition, on a TTY terminal there's only one > frame visible at any given time, and only that one frame is being > redrawn, ever. > > Given the above, why is that code incorrect? It _might_ be incorrect when we allow FRAME_TOTAL_LINES (f) to exceed FrameRows (FRAME_TTY (f)) because we refuse to shrink a frame below some height. That's why I used the term "probably". If I knew what that code does in all consequences, I could tell you more. But I don't know. >> And it's not about resizing frames "quickly". Here I can crash it in a >> very slow fashion too. > > Good for you, but my comment describes the situation in which I saw > that particular problem. As I already said, I can never crash Emacs > if I resize the terminal emulator window slowly. And as I already said I can crash Emacs reliably if I slowly shrink the window, slowly expand it again, precisely at the moment it should reshow the minibuffer window. You can ask me any question about the state of the frame and its windows at the time of the crash. > Most probably because the terminal driver simply ignores such writes. > AFAIU, the assertion there is not because of the terminal, it is there > to catch Emacs bugs. Then tell us how to catch it. I'm already out of ideas. martin
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 11 Sep 2024 12:22:22 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 11 08:22:22 2024 Received: from localhost ([127.0.0.1]:37911 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1soMMX-0007AY-Mx for submit <at> debbugs.gnu.org; Wed, 11 Sep 2024 08:22:22 -0400 Received: from eggs.gnu.org ([209.51.188.92]:44852) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1soMMV-0007AI-Ag for 73022 <at> debbugs.gnu.org; Wed, 11 Sep 2024 08:22:20 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1soMMI-00083v-Uo; Wed, 11 Sep 2024 08:22:06 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=oJxoF/Z+AGwPv0KDytYiHBCqIXhg0q1opSVAw2sIt9U=; b=MDiU9DCuRlH2 FPRxkAjMgXr2BlvBdVVJsO4e0o+lruqNeoGBBnKd/bc/PWh0WxPvcWiKzD+RpIoO1MgJ+bbn/JbJ/ KFFyB9r4nnFJ0rgRF6y0RfnTm9sTGPmfwN/xD1d/SyxhAeo5EtY8gglKAWzHpNUt/Mi9zg31RzLHy Wx5ZqNULAjrhx9Bnq6HxPlT1V9Ol2bLyFnjkvxrje5jl3MEt4FQ6YvuZfzNpEpVtI4nvCfCX7M4Kj IidipkuHiscjgiWDW3QLilvpFLjwk4Inw1mvdSvifScRUbI2D5Xe/nqwpBBi3Kv0E+gPH8vYzrk0d TGbV7mmC/TbjTuA2oYKorA==; Date: Wed, 11 Sep 2024 15:22:03 +0300 Message-Id: <861q1qpehg.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: martin rudalics <rudalics@HIDDEN> In-Reply-To: <4c3591f1-7c26-489f-ba68-8586e98cd99e@HIDDEN> (message from martin rudalics on Wed, 11 Sep 2024 10:07:21 +0200) Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <86cyli4fxj.fsf@HIDDEN> <e8b03cd0-9964-49e7-a08e-1f3a8bd92828@HIDDEN> <86seue2l2b.fsf@HIDDEN> <CAJKAhPApQOrWm8ge+kp7RMNjn9aq=-FSo5aCY_1gheRwGi5zOQ@HIDDEN> <2d8e4603-5ea6-41e9-abfe-461392f717db@HIDDEN> <CAJKAhPDgWxYLpGsWHF9TFZ3SbBrJgt_07JryK6_fsBh-q_JSwg@HIDDEN> <4c3591f1-7c26-489f-ba68-8586e98cd99e@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: -3.3 (---) > Date: Wed, 11 Sep 2024 10:07:21 +0200 > Cc: Eli Zaretskii <eliz@HIDDEN>, 73022 <at> debbugs.gnu.org > From: martin rudalics <rudalics@HIDDEN> > > > For instance, Eli recently added this code (dispnew.c): > > > > /* This should never happen, but evidently sometimes does if one > > resizes the frame quickly enough. Prevent aborts in cmcheckmagic. */ > > if (vpos >= FRAME_TOTAL_LINES (f)) > > return; > > > > But this is checking the *frame*. Later, the assertion in > > cmcheckmagic will be made about the *terminal*. > > Right. This should probably be > > if (FRAME_TERMCAP_P (f) && vpos >= FrameRows (FRAME_TTY (f))) > return; That code is in update_frame_line, which is used only for TTY frames and uses frame glyph matrices. IOW, it updates the entire frame as a single large window. In addition, on a TTY terminal there's only one frame visible at any given time, and only that one frame is being redrawn, ever. Given the above, why is that code incorrect? > And it's not about resizing frames "quickly". Here I can crash it in a > very slow fashion too. Good for you, but my comment describes the situation in which I saw that particular problem. As I already said, I can never crash Emacs if I resize the terminal emulator window slowly. > The cmcheckmagic code is about a very peculiar situation that is hardly > relevant for today's terminals I think. Here I can never crash a build > that doesn't check assertions. Most probably because the terminal driver simply ignores such writes. AFAIU, the assertion there is not because of the terminal, it is there to catch Emacs bugs.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 11 Sep 2024 08:07:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 11 04:07:49 2024 Received: from localhost ([127.0.0.1]:37752 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1soIOD-0002iO-6M for submit <at> debbugs.gnu.org; Wed, 11 Sep 2024 04:07:49 -0400 Received: from mout.gmx.net ([212.227.15.15]:40913) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1soIOA-0002i8-D3 for 73022 <at> debbugs.gnu.org; Wed, 11 Sep 2024 04:07:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1726042047; x=1726646847; i=rudalics@HIDDEN; bh=vlSz759Mgl1EWpYoosYJC8/dMDASGJ+hsvqCpBk7tjM=; 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=NTt2LOHQIJKEhAbokAycGdEm7xMNDGcTF6+w33VdpSxduwuOVtdiGzg6KZI+qVoN 5VutZRfijPHmq5bUZcXOw6yVP00LeT4V9i4QHd3vKw91EWxzH0dCD0UtvSKQyqRtV DKvaoX7bhK9XXzhIZ3VrNb4tpZIE1/YZs3tOd1QPi2qe1d4PwS/iJuk4Ts5Jq3/2Z 3//h0L+QwP8gDBOV9D8qCzWdcFtjmcMNnT13X6g6hAyQClyCLIWesnmXg1YoHcsgU liiw0z+SmkFp3h3qSD8ZDzdKdX1nkt7F4UvxGgVoOt3W4//SU0jcR2mxWlbzIr0JR ciQVfwsQN8tyzZWVJw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([213.142.97.126]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MZCfD-1sS0II2rB3-00LECE; Wed, 11 Sep 2024 10:07:27 +0200 Message-ID: <4c3591f1-7c26-489f-ba68-8586e98cd99e@HIDDEN> Date: Wed, 11 Sep 2024 10:07:21 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Daniel Clemente <n142857@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <86cyli4fxj.fsf@HIDDEN> <e8b03cd0-9964-49e7-a08e-1f3a8bd92828@HIDDEN> <86seue2l2b.fsf@HIDDEN> <CAJKAhPApQOrWm8ge+kp7RMNjn9aq=-FSo5aCY_1gheRwGi5zOQ@HIDDEN> <2d8e4603-5ea6-41e9-abfe-461392f717db@HIDDEN> <CAJKAhPDgWxYLpGsWHF9TFZ3SbBrJgt_07JryK6_fsBh-q_JSwg@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <CAJKAhPDgWxYLpGsWHF9TFZ3SbBrJgt_07JryK6_fsBh-q_JSwg@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 X-Provags-ID: V03:K1:xWc3d68MsOZBO/YxR+glmN03GSC+31AebW4fI1YzQCEcSeR1k5j OS4tzOxzB3P/7WEGEMTTS3N4QlFrwFeP3WfDId4qNCW9rU4YOFMgigTp+OKqQIyfKNn5vWw dWfbQwJ9soVIUOHdA1Buz1kediIhLIC2J6arWEcxPWd1GbY9PkWeLzqG+Yqd3sRCNqni014 sX5i/U6NMH+mz2lmNCH8w== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:8tHdtj66ugQ=;HJ5APkY+wuO2+DRt3gvBYgjSCjI eaPZakc4+tcaiyGeUJZR4tcBoifiCjo6BtV7k5nZRJFufr4Wj7O06UMuX1rVJIOn9ovs00LCh MCZrjoZqQ9PRHAvel2IHIaUGbdzNbgPFawFB7pJGehdJ019CevWhXe0hgcf6OgKwyXBu25QjK SwRldXnXrqybUjdjiwl98Y4HsHU77KMasNRMYWyVEjhzORL5NZRXP4f/51TzhOk5NA/psomf7 rHx0rQPa562MhUW+LnazhG6+Lyld141dHoS1lo+o8BpWFCoilUjIq+CLfwCBK4S91dYBgzZ0s fR2AVIgCZJXFeYyyfA/T/Ygqp6C08uHvkVUN7aTKefye9eVNfDMlnr3l6jaIrUpZX5lDZ8Fw7 hu07f2zBdLtTih9n3smtgy2OwniHpQkZ7w3hmZAfiLMy2SEI8zVmaFtXXxtB2eqVscA0YKima y2pVXN8cnL3F8lSXHkJLBKBhxFFwj8o3xkjRzTSZXmFqD2VS+vKFP5lvlgrALy2kL+zFK9Qyx fARnSqdqOYAIzUCa7wEhelwLc+THjQ95p2oGbQFGQWWqwOyj+xOMwvg1Y6VsbpakpXfusYWdf fpNqL/OXp9ipV5v6YrF4DS5qKr+QSUMLfcAW96IKDVk2d8ZkHU+JRVlzb89jsbLpRLOPpC2jK a8Ke12GWjbcOPAP1GW8ifWKgSErLYuZbffLuS5yTc5/V8Zp6rvZUboF+I8i+InKmNfIfctxMR ouT/mU9Q0iuCKhh0nlUOWZhAjTw+FzS/h2QReIUXJIEXMIOrEdnJmhznoRC4NpXyRqIq+ZIAz WfowpRccFQnpH7iuKOeRQfVw== 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 applies well; thanks. > By the way, (window-min-size) still answers 4 (with and without your patch). That's expected. But (window-min-size (minibuffer-window)) should now always evaluate to 1 and (frame-windows-min-size) should now give 5 instead of 8. As for 'window-min-size' you can 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.126 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_PASS SPF: sender matches SPF record 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 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.15.15 listed in wl.mailspike.net] 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders -0.0 T_SCC_BODY_TEXT_LINE No description available. X-Debbugs-Envelope-To: 73022 Cc: 73022 <at> debbugs.gnu.org, Eli Zaretskii <eliz@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.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 applies well; thanks. > By the way, (window-min-size) still answers 4 (with and without your patch). That's expected. But (window-min-size (minibuffer-window)) should now always evaluate to 1 and (frame-windows-min-size) should now give 5 instead of 8. As for 'window-min-size' you can Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.15.15 listed in wl.mailspike.net] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [213.142.97.126 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_PASS SPF: sender matches SPF record 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 RCVD_IN_MSPIKE_WL Mailspike good senders -0.0 T_SCC_BODY_TEXT_LINE No description available. -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager ID4gSXQgYXBwbGllcyB3ZWxsOyB0aGFua3MuDQogPiBCeSB0aGUgd2F5LCAod2luZG93LW1p bi1zaXplKSBzdGlsbCBhbnN3ZXJzIDQgKHdpdGggYW5kIHdpdGhvdXQgeW91ciBwYXRjaCku DQoNClRoYXQncyBleHBlY3RlZC4gIEJ1dCAod2luZG93LW1pbi1zaXplIChtaW5pYnVmZmVy LXdpbmRvdykpIHNob3VsZCBub3cNCmFsd2F5cyBldmFsdWF0ZSB0byAxIGFuZCAoZnJhbWUt d2luZG93cy1taW4tc2l6ZSkgc2hvdWxkIG5vdyBnaXZlIDUNCmluc3RlYWQgb2YgOC4gIEFz IGZvciAnd2luZG93LW1pbi1zaXplJyB5b3UgY2FuDQoNCi0gZWl0aGVyIChzZXRxIHdpbmRv dy1taW4taGVpZ2h0IDApIGFuZCB0aGVuICh3aW5kb3ctbWluLXNpemUpDQoNCi0gb3IgZGly ZWN0bHkgKHdpbmRvdy1taW4tc2l6ZSBuaWwgbmlsIHQpDQoNCndoaWNoIHNob3VsZCBib3Ro IHlpZWxkIDIuICBCVFcsIG5laXRoZXIgb2YgdGhlIG1pbiBzaXplIGNoYW5nZXMgc2hvdWxk DQpoYXZlIGFueSBlZmZlY3Qgb24gdGhlIGJ1ZyBwZXIgc2UuICBCdXQgaXQgbWlnaHQgY2F1 c2UgaXQgdG8gb2NjdXINCmVhcmxpZXIgb3IgbGF0ZXIgYW5kIGFsc28gaW4gdGhlIG9uZSB3 aW5kb3cgY2FzZSB5b3UgbWVudGlvbiBiZWxvdy4NCg0KID4gRW1hY3MgZmVlbHMgYSBiaXQg InN0cm9uZ2VyIiBpbiB0aGUgQy14IDIgc2NlbmFyaW8sIG1lYW5pbmcgdGhhdCBpdA0KID4g c3Vydml2ZXMgc2hyaW5raW5nK2VubGFyZ2luZyB0aGUgdGVybWluYWwsIGJ1dCBpdCBzdGls bCBjcmFzaGVzDQogPiBzb21ldGltZXMuDQoNCldpdGhvdXQgdGhlIHBhdGNoIEkgY291bGQg bWFrZSBpdCBjcmFzaCByZWxpYWJseS4gIEkgY2FuJ3Qgd2l0aCBpdC4NCg0KID4gQnV0IGl0 IGFsc28gY3Jhc2hlcyBpbiBhIG5ldyBzaXR1YXRpb246IGp1c3QgYnkgc2hyaW5raW5nIHRo ZQ0KID4gbm9ybWFsL2luaXRpYWwvdW5zcGxpdCBmcmFtZSwgaS5lLiB3aXRob3V0IG5lZWRp bmcgdG8gZG8gQy14IDIuIEl0DQogPiBkaWRuJ3QgY3Jhc2ggYmVmb3JlLCBzbyB0aGUgcGF0 Y2ggZG9lc24ndCBtYWtlIHRoZSB3aG9sZSBFbWFjcyBtb3JlDQogPiBzdGFibGUgeWV0Lg0K ID4NCiA+DQogPiBXaXRob3V0IGRvaW5nIEMteCAyOg0KID4NCiA+ICM0ICAweDAwMDA1NTU1 NTU2YzMwMTYgaW4gZW1hY3NfYWJvcnQgKCkgYXQgc3lzZGVwLmM6MjM5MQ0KID4gIzUgIDB4 MDAwMDU1NTU1NTY2ZDM2ZiBpbiBjbWNoZWNrbWFnaWMgKHR0eT0weDU1NTU1NjA4ZmE4MCkg YXQgY20uYzoxMjINCiA+ICM2ICAweDAwMDA1NTU1NTU2NzFiMWIgaW4gdHR5X3dyaXRlX2ds eXBocyAoZj0weDU1NTU1NjAxMmZmMCwNCiA+IHN0cmluZz0weDdmZmZmMGY0ZWMxMCwgbGVu PTgwKSBhdCB0ZXJtLmM6ODMxDQogPiAjNyAgMHgwMDAwNTU1NTU1NjdjMTFkIGluIHdyaXRl X2dseXBocyAoZj0weDU1NTU1NjAxMmZmMCwNCiA+IHN0cmluZz0weDdmZmZmMGY0ZGQxMCwg bGVuPTgwKSBhdCB0ZXJtaW5hbC5jOjE2NA0KID4gIzggIDB4MDAwMDU1NTU1NTU5MWI2MCBp biB1cGRhdGVfZnJhbWVfbGluZSAoZj0weDU1NTU1NjAxMmZmMCwgdnBvcz0zLA0KID4gdXBk YXRpbmdfbWVudV9wPWZhbHNlKSBhdCBkaXNwbmV3LmM6NTMyNg0KID4NCiA+IDEyNiAgICAg ICAgICBpZiAodHR5LT50ZXJtc2NyaXB0KQ0KID4gKGdkYikgcCBjdXJZICh0dHkpDQogPiAk MSA9IDMNCiA+IChnZGIpIHAgRnJhbWVSb3dzICh0dHkpIC0gMQ0KID4gJDIgPSAzDQogPiAo Z2RiKQ0KDQpNYXliZSBiZWNhdXNlIHRoZSBmcmFtZSBjYW4gbm93IGdldCBzbWFsbGVyIGFm dGVyIHJlc2l6ZV9mcmFtZV93aW5kb3dzLg0KSUlVQyBpdCBhbGwgZGVwZW5kcyBvbiB3aGVy ZSB0aGUgY3Vyc29yIHdpdGhpbiB0aGUgZnJhbWUgaXMuICBJbiB0aGUNCnNwbGl0IHdpbmRv dyBjYXNlIHlvdSBwcm9iYWJseSBnZXQgY3Jhc2hlcyBzb29uZXIgaWYgdGhlIGN1cnNvciBp cyBpbg0KdGhlIGxvd2VyIHdpbmRvdy4gIE1heWJlIHN0aWxsIHNvb25lciBpZiB5b3UgcmVz aXplIHRoZSBmcmFtZSB3aGlsZSB0aGUNCm1pbmlidWZmZXIgaXMgYWN0aXZlLiAgSSBkaWRu J3QgdHJ5IHN1Y2ggc2NlbmFyaW9zLg0KDQogPiBUaGlzIG9uZSBzdGlsbCBoYXBwZW5zICh0 aGlzIGlzIGFmdGVyIEMteCAyKToNCiA+ICM1ICAweDAwMDA1NTU1NTU1OGI2OTcgaW4gYnVp bGRfZnJhbWVfbWF0cml4X2Zyb21fbGVhZl93aW5kb3cNCiA+IChmcmFtZV9tYXRyaXg9MHg1 NTU1NTYwNTA0MjAsDQogPiAgICAgIHc9MHg1NTU1NTYwMTMyMTApIGF0IGRpc3BuZXcuYzoy NjQ3DQogPg0KID4+DQogPj4gQW5kIGl0IG1vdmVzIHRoZSBhc3NpZ25tZW50IG9mIEZyYW1l Um93cyB0byBoYW5kbGVfd2luZG93X2NoYW5nZV9zaWduYWwNCiA+PiBpbiBkaXNwbmV3LmMu ICBEb2luZyBpdCBpbiBhZGp1c3RfZnJhbWVfc2l6ZSB3YXMgc2lsbHkgKGFzIEdlcmQgTcO2 bGxtYW5uDQogPj4gbm90aWNlZCBlYXJsaWVyKS4gIEZyYW1lUm93cyBzaG91bGQgYmUgdGhl IGhlaWdodCBvZiB0aGUgdHR5IHdoaWNoIGNhbg0KID4+IGJlIHNtYWxsZXIgdGhhbiB0aGUg aGVpZ2h0IG9mIG91ciBmcmFtZS4gIEVtYWNzIGlzIHN1cHBvc2VkIHRvIHN0b3JlIGl0DQog Pj4gYnV0IG5vdCB0byBtb2RpZnkgaXQgYWNjb3JkaW5nIHRvIG91ciBjYXBhYmlsaXRpZXMu DQogPj4NCiA+DQogPiBJIGRvbid0IGhhdmUgdGhlIGV4cGVydCBvcGluaW9uIG9mIGhvdyBp dCBzaG91bGQgYmUuIEJ1dCBJIGFncmVlIHRoYXQNCiA+IGEgc291cmNlIG9mIHRoZSBwcm9i bGVtIGlzIHRoYXQgdGhlIHR0eSBjYW4gYmUgc21hbGxlciB0aGFuIHRoZSBmcmFtZS4NCiA+ IEZyYW1lIGFuZCB0ZXJtaW5hbCBtYXkgaGF2ZSBkaWZmZXJlbnQgc2l6ZXMgYW5kIHRoaXMg Y3JlYXRlcw0KID4gaW5jb25zaXN0ZW5jaWVzLg0KDQpJbmRlZWQuICBUaGUgR1VJIGNvZGUg ZG9lc24ndCBoYXZlIHRoZSBjdXJzb3IgcHJvYmxlbS4gIFRoZXJlIGFuDQphcmJpdHJhcmls eSBsYXJnZSBFbWFjcyBmcmFtZSBtYXkgY29udGludWUgdG8gbGl2ZSB3aXRoaW4gYSB0aW55 IFdNDQp3aW5kb3cgd2l0aCBhbiBpbnZpc2libGUgY3Vyc29yLg0KDQogPiBGb3IgaW5zdGFu Y2UsIEVsaSByZWNlbnRseSBhZGRlZCB0aGlzIGNvZGUgKGRpc3BuZXcuYyk6DQogPg0KID4g ICAgLyogVGhpcyBzaG91bGQgbmV2ZXIgaGFwcGVuLCBidXQgZXZpZGVudGx5IHNvbWV0aW1l cyBkb2VzIGlmIG9uZQ0KID4gICAgICAgcmVzaXplcyB0aGUgZnJhbWUgcXVpY2tseSBlbm91 Z2guICBQcmV2ZW50IGFib3J0cyBpbiBjbWNoZWNrbWFnaWMuICAqLw0KID4gICAgaWYgKHZw b3MgPj0gRlJBTUVfVE9UQUxfTElORVMgKGYpKQ0KID4gICAgICByZXR1cm47DQogPg0KID4g QnV0IHRoaXMgaXMgY2hlY2tpbmcgdGhlICpmcmFtZSouICBMYXRlciwgdGhlIGFzc2VydGlv biBpbg0KID4gY21jaGVja21hZ2ljIHdpbGwgYmUgbWFkZSBhYm91dCB0aGUgKnRlcm1pbmFs Ki4NCg0KUmlnaHQuICBUaGlzIHNob3VsZCBwcm9iYWJseSBiZQ0KDQogICBpZiAoRlJBTUVf VEVSTUNBUF9QIChmKSAmJiB2cG9zID49IEZyYW1lUm93cyAoRlJBTUVfVFRZIChmKSkpDQog ICAgIHJldHVybjsNCg0KQW5kIGl0J3Mgbm90IGFib3V0IHJlc2l6aW5nIGZyYW1lcyAicXVp Y2tseSIuICBIZXJlIEkgY2FuIGNyYXNoIGl0IGluIGENCnZlcnkgc2xvdyBmYXNoaW9uIHRv by4NCg0KID4gSSB0aGluayB0aGUgZnJhbWUgbmV2ZXIgZ2V0cyBzbWFsbGVyIHRoYW4gMiBs aW5lcyAodGhlcmUncyBjb2RlIGluDQogPiBoYW5kbGVfd2luZG93X2NoYW5nZV9zaWduYWwg dG8gcHJldmVudCBpdCksIGJ1dCB0aGUgdHR5IGNhbi4gU28gaWYNCiA+IHdlJ3JlIGluIGEg MS1saW5lIHRlcm1pbmFsLCBhbmQgdXBkYXRpbmcgdGhlIDJuZCBsaW5lLCB0aGUgYWJvdmUg Y29kZQ0KID4gc2VlcyBub3RoaW5nIHdyb25nICh0aGUgZnJhbWUgc3RpbGwgaGFzIDIgbGlu ZXMpIGJ1dCBjbWNoZWNrbWFnaWNrDQogPiB3b24ndCBsaWtlIGl0ICh0aGUgdGVybWluYWwg ZG9lc24ndCBoYXZlIGEgMm5kIGxpbmUpLg0KID4gKFVzdWFsIGRpc2NsYWltZXI6IEkgZG9u J3Qga25vdyB2ZXJ5IHdlbGwgaG93IHRoaXMgd29ya3MuIEknbSBvZnRlbg0KID4gYnJhaW5z dG9ybWluZykuDQoNClJpZ2h0LiAgQnV0IEkgY2FuIGdldCBjbWNoZWNrbWFnaWMgY3Jhc2gg aGVyZSB3aXRoIGEgMjAgbGluZXMgZnJhbWUgdG9vLg0KDQogPj4gQW5kIGl0IG1vdmVzIHRo ZSBhc3NpZ25tZW50IG9mIEZyYW1lUm93cyB0byBoYW5kbGVfd2luZG93X2NoYW5nZV9zaWdu YWwNCiA+PiBpbiBkaXNwbmV3LmMuDQogPg0KID4gSW4gcHJhY3RpY2UsIHRoYXQgY29kZSAo aW4gdGhlIG5ldyBwbGFjZSB5b3UgcHV0IGl0KSBpcyBzdGlsbCBpbnNpZGUgYW4gaWY6IHRo ZQ0KID4gICAgaWYgKHdpZHRoID4gNSAmJiBoZWlnaHQgPiAyKQ0KID4gaW4gaGFuZGxlX3dp bmRvd19jaGFuZ2Vfc2lnbmFsLiBUaGlzIG1lYW5zIHRoYXQgaW4gZS5nLiBhIDEtbGluZQ0K ID4gdGVybWluYWwsIHlvdSB3b24ndCBiZSBzZXR0aW5nIEZyYW1lUm93cyB0byB0aGUgYWN0 dWFsIG51bWJlciBvZiBsaW5lcw0KID4gb2YgdGVybWluYWwgKDEpLCBhcyB5b3Ugd2FudGVk LiBJdCB3aWxsIHN0aWxsIGJlIHRoZSBvbGQgdmFsdWUsIGUuZy4NCiA+IDIsIGFuZCBpdCBt YXkgbWFrZSBjbWNoZWNrbWFnaWMgY3Jhc2ggYnkgdHJ5aW5nIHRvIGRvIHRoaW5ncyBpbiBs aW5lIDINCiA+ICh3aGljaCBleGlzdHMgaW4gdGhlIGZyYW1lLCB3aGljaCBoYXMgMiBsaW5l cykgYnV0IG5vdCBpbiB0aGUgdGVybWluYWwNCiA+ICh3aGljaCBkb2Vzbid0IGhhdmUgYSAy bmQgbGluZSkuDQoNClRoZSA1LzIgY2hlY2tzIGNhbm5vdCBoYW5kbGUgc3BsaXQgd2luZG93 cy4gIFRoZXNlIGFyZSBhcnRpZmFjdHMgZnJvbQ0KdGhlIHBhc3QuDQoNCiA+IE9uZSBvcHRp b24gc2VlbXMgdG8gaGF2ZSBGcmFtZVJvd3MgYWx3YXlzIG1hdGNoIHRoZSBhbW91bnQgb2Yg dGVybWluYWwNCiA+IGxpbmVzLiBDYW4gd2UgcmVtb3ZlIHRoZSAiaWYgKOKApiBoZWlnaHQg PjIpIiBsaW1pdGF0aW9uLCBhbmQgYWxsb3cNCiA+IDEtbGluZSwgMi1saW5lIGZyYW1lcyBl dGMuPyAoVG8gcmVhbGx5IG1hdGNoIHRoZSB0ZXJtaW5hbCBzaXplKS4gT3RoZXINCiA+IGNo YW5nZXMgbWF5IGJlIG5lZWRlZCBpbiBvdGhlciBwbGFjZXMsIHRvIGF2b2lkIHdvcmtpbmcg d2l0aCB2ZXJ5DQogPiBzbWFsbCBmcmFtZXMuLg0KDQpXZSBzaG91bGQgZG8gdGhhdC4gIElu IHByaW5jaXBsZSB3ZSBzaG91bGQgYWxsb3cgaGVpZ2h0IGFuZCB3aWR0aCB0bw0KYmVjb21l IHplcm8uICBXaG8ga25vd3Mgd2hhdCB0b2RheSdzIHRlcm1pbmFscyBwZXJtaXQ/DQoNCiA+ IE90aGVyd2lzZSwgaWYgd2UgbGV0IEZyYW1lUm93cyBiZSBsYXJnZXIgdGhhbiB0aGUgYW1v dW50IG9mIHRlcm1pbmFsDQogPiBsaW5lcywgYW5vdGhlciBvcHRpb24gY291bGQgYmU6DQog PiBBdCB0aGUgYmVnaW5uaW5nIG9mIHR0eV93cml0ZV9nbHlwaHMsIGNoZWNrIHdoZXRoZXIg d2UndmUgYmVlbiBhc2tlZA0KID4gdG8gd3JpdGUgZ2x5cGhzIGluIGEgbGluZSB3aGljaCBp cyBoaWdoZXIgdGhhbiB0aGUgYW1vdW50IG9mIGxpbmVzIGluDQogPiB0aGUgdGVybWluYWwu IElmIHNvLCByZXR1cm4gd2l0aG91dCB3cml0aW5nIGFueXRoaW5nLiAoQmVjYXVzZSB0aGUN CiA+IGxpbmUgd291bGQgYmUgaW52aXNpYmxlKS4NCiA+IE9yIG1heWJlIGluIHNvbWUgb2Yg dGhlIGNhbGxlcnMgb2YgdHR5X3dyaXRlX2dseXBocy4gRG9uJ3QgY2FsbA0KID4gdHR5X3dy aXRlX2dseXBocyB0byB3cml0ZSBnbHlwaHMgaW4gYSBsaW5lIHdoaWNoIGlzIG5vdCB2aXNp YmxlIChpdA0KID4gZXhpc3RzIGluIHRoZSBmcmFtZSwgYnV0IGRvZXNuJ3QgZXhpc3QgaW4g dGhlIHRlcm1pbmFsKS4NCg0KSSB0aGluayBGcmFtZVJvd3Mgc2hvdWxkIGFsd2F5cyByZWZs ZWN0IHRoZSBzaXplIG9mIHRoZSB0ZXJtaW5hbCBhcyBpdA0Kd2FzIHJlcG9ydGVkIHRvIHVz LiAgSWYgaXQgZG9lc24ndCwgd2UnbGwgbmV2ZXIgYmUgYWJsZSB0byB0cmFjZSBjaGFuZ2Vz DQpvZiB0aGUgdGVybWluYWwgc2l6ZSBjb3JyZWN0bHkuDQoNCiA+IEJ5IHRoZSB3YXksIEkg c2F3IHRoYXQgdGhlIGNtY2hlY2ttYWdpYyBjb2RlIGNoZWNrcyBjdXJZICh0dHkpID49DQog PiBGcmFtZVJvd3MgKHR0eSkgLSAxLCBub3RlIHRoZSAtMSwgd2hlcmVhcyB0aGUgZGlzcG5l dy5jIGNvZGUgSSBxdW90ZQ0KID4gYWJvdmUgZG9lc24ndCB1c2UgdGhlIC0xLiBJIGhvcGUg dGhpcyBpcyBvay4gQXMgbWVudGlvbmVkIHRoZXkncmUNCiA+IGNoZWNraW5nIGRpZmZlcmVu dCB0aGluZ3Mgc28gaXQgbWF5IGJlIG9rLCB0aG91Z2ggSSBkb24ndCB1bmRlcnN0YW5kDQog PiB3aHkgdGhlIC0xLg0KDQpUaGUgY21jaGVja21hZ2ljIGNvZGUgaXMgYWJvdXQgYSB2ZXJ5 IHBlY3VsaWFyIHNpdHVhdGlvbiB0aGF0IGlzIGhhcmRseQ0KcmVsZXZhbnQgZm9yIHRvZGF5 J3MgdGVybWluYWxzIEkgdGhpbmsuICBIZXJlIEkgY2FuIG5ldmVyIGNyYXNoIGEgYnVpbGQN CnRoYXQgZG9lc24ndCBjaGVjayBhc3NlcnRpb25zLiAgQ2FuIHlvdT8NCg0KbWFydGluDQo=
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 10 Sep 2024 17:45:37 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Sep 10 13:45:37 2024 Received: from localhost ([127.0.0.1]:36977 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1so4vp-0000r2-5u for submit <at> debbugs.gnu.org; Tue, 10 Sep 2024 13:45:37 -0400 Received: from mail-ua1-f48.google.com ([209.85.222.48]:56764) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <n142857@HIDDEN>) id 1so4vn-0000qp-49 for 73022 <at> debbugs.gnu.org; Tue, 10 Sep 2024 13:45:35 -0400 Received: by mail-ua1-f48.google.com with SMTP id a1e0cc1a2514c-846bcf3677dso1595629241.1 for <73022 <at> debbugs.gnu.org>; Tue, 10 Sep 2024 10:45:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1725990264; x=1726595064; darn=debbugs.gnu.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=p6WDnKGDCyjk05NRZA+pWOKu2FiqrZWkui4QJEG2L2I=; b=mWpDkWMt/f+XDub6AbmMKI3HLxzLHJOk5+7XPpnWrQDFJxPFXKJzpcRlSmU3aN9b6i 6KyHGe/eheFWURbvFXiy8FrV+xurTicfTMjnvDrx6CvcIZYntxNi90qlpjx/88Dj2bkC +zmq21LUUmEOzbn8CsWSiGepexPsEhHZq+NIVDkTjbWahv1gW5iC2UuYREokQSToCysn 5VHPJ1Oh4LkYK01jRjHBG0fDdhMrFb+Uj31cVdmLmEU0yI9ASELDSFrxmYtp1FGm811e met7T93zMvEq3YPS9RfvCgxr9VS/gkZ1k6+YJioDIUk2h0OwlBITBfBngYv4SKJo7lQp aYuQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725990264; x=1726595064; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=p6WDnKGDCyjk05NRZA+pWOKu2FiqrZWkui4QJEG2L2I=; b=qGqi7TFbSvGAViOvmV1TKhX+WTNVqwf7kFeVvGP8V9Rhj6Su6AkhsCDmSdewzAjn8j dfpeLD+ATrggMFC6HpdiKtGNSQzZZtglU5r+D06lH0DbUWA0UYGw8fBSixUfPdYLK70t uXPFBw6aidrnFqCMTPz6k4vEpkWRf+ryo+dwgk6mIZAkJiLTnSMdKiPIBpGZhjnuI5JT KjA7CA/LAdeePwwt/iB83tohH7d1LInmTpncQZEfCncGZjNcdMhMhmubxB6aMtzrYrSk LzMdVQErRrhkyIjAJfqcKUjmYtacsRMUMHwq9xz28KFlUoAqYRe7QWDYNhG+wvkwxjKf gdVQ== X-Forwarded-Encrypted: i=1; AJvYcCVEd/wd5LX40OP6T6oTALobVUsKxKLLO2cvMtoVRZY97H5QXlykzqpIYweH6lekHWEnPESTIw==@debbugs.gnu.org X-Gm-Message-State: AOJu0YzzuDtchTbAnQ5bHS8FfL3VouZX1lvLSMS3lgd4TwwW3PN3uzux UEEN1Ud+JBn0kWOYiIGkA25eLK3+9PfU3YSKrzPZzVDP1Q+Ti14cL6v9rWV/Hfh96oTvvQ5Mjt8 reqy4HcJUm86NmQwh1P68M6Z131k= X-Google-Smtp-Source: AGHT+IFXUtprgJUA4mCupzYlRyUSi6NB0GTcaGFzG5CXUcsg8PLqh96SMGmct5EiRm3H9Bo3gPy1uzrG9Up8CtrPG0U= X-Received: by 2002:a05:6102:f0b:b0:48f:4a50:233e with SMTP id ada2fe7eead31-49bde2647b5mr16641846137.21.1725990264299; Tue, 10 Sep 2024 10:44:24 -0700 (PDT) MIME-Version: 1.0 References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <86cyli4fxj.fsf@HIDDEN> <e8b03cd0-9964-49e7-a08e-1f3a8bd92828@HIDDEN> <86seue2l2b.fsf@HIDDEN> <CAJKAhPApQOrWm8ge+kp7RMNjn9aq=-FSo5aCY_1gheRwGi5zOQ@HIDDEN> <2d8e4603-5ea6-41e9-abfe-461392f717db@HIDDEN> In-Reply-To: <2d8e4603-5ea6-41e9-abfe-461392f717db@HIDDEN> From: Daniel Clemente <n142857@HIDDEN> Date: Tue, 10 Sep 2024 17:43:57 +0000 Message-ID: <CAJKAhPDgWxYLpGsWHF9TFZ3SbBrJgt_07JryK6_fsBh-q_JSwg@HIDDEN> Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: martin rudalics <rudalics@HIDDEN> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.2 (/) X-Debbugs-Envelope-To: 73022 Cc: 73022 <at> debbugs.gnu.org, Eli Zaretskii <eliz@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.8 (/) > Please try the attached diff (from my heavily edited copy of master, if > it doesn't apply cleanly, complain immediately rather than messing up > your Emacs). It should fix two silly bugs in window.el that make a > frame's safe minimum size much too large and includes the fix I proposed > earlier here. It applies well; thanks. By the way, (window-min-size) still answers 4 (with and without your patch)= . Emacs feels a bit "stronger" in the C-x 2 scenario, meaning that it survives shrinking+enlarging the terminal, but it still crashes sometimes. But it also crashes in a new situation: just by shrinking the normal/initial/unsplit frame, i.e. without needing to do C-x 2. It didn't crash before, so the patch doesn't make the whole Emacs more stable yet. Without doing C-x 2: #4 0x00005555556c3016 in emacs_abort () at sysdep.c:2391 #5 0x000055555566d36f in cmcheckmagic (tty=3D0x55555608fa80) at cm.c:122 #6 0x0000555555671b1b in tty_write_glyphs (f=3D0x555556012ff0, string=3D0x7ffff0f4ec10, len=3D80) at term.c:831 #7 0x000055555567c11d in write_glyphs (f=3D0x555556012ff0, string=3D0x7ffff0f4dd10, len=3D80) at terminal.c:164 #8 0x0000555555591b60 in update_frame_line (f=3D0x555556012ff0, vpos=3D3, updating_menu_p=3Dfalse) at dispnew.c:5326 126 if (tty->termscript) (gdb) p curY (tty) $1 =3D 3 (gdb) p FrameRows (tty) - 1 $2 =3D 3 (gdb) This one still happens (this is after C-x 2): #5 0x000055555558b697 in build_frame_matrix_from_leaf_window (frame_matrix=3D0x555556050420, w=3D0x555556013210) at dispnew.c:2647 > > And it moves the assignment of FrameRows to handle_window_change_signal > in dispnew.c. Doing it in adjust_frame_size was silly (as Gerd M=C3=B6ll= mann > noticed earlier). FrameRows should be the height of the tty which can > be smaller than the height of our frame. Emacs is supposed to store it > but not to modify it according to our capabilities. > I don't have the expert opinion of how it should be. But I agree that a source of the problem is that the tty can be smaller than the frame. Frame and terminal may have different sizes and this creates inconsistencies. For instance, Eli recently added this code (dispnew.c): /* This should never happen, but evidently sometimes does if one resizes the frame quickly enough. Prevent aborts in cmcheckmagic. */ if (vpos >=3D FRAME_TOTAL_LINES (f)) return; But this is checking the *frame*. Later, the assertion in cmcheckmagic will be made about the *terminal*. I think the frame never gets smaller than 2 lines (there's code in handle_window_change_signal to prevent it), but the tty can. So if we're in a 1-line terminal, and updating the 2nd line, the above code sees nothing wrong (the frame still has 2 lines) but cmcheckmagick won't like it (the terminal doesn't have a 2nd line). (Usual disclaimer: I don't know very well how this works. I'm often brainstorming). > And it moves the assignment of FrameRows to handle_window_change_signal > in dispnew.c. In practice, that code (in the new place you put it) is still inside an if:= the if (width > 5 && height > 2) in handle_window_change_signal. This means that in e.g. a 1-line terminal, you won't be setting FrameRows to the actual number of lines of terminal (1), as you wanted. It will still be the old value, e.g. 2, and it may make cmcheckmagic crash by trying to do things in line 2 (which exists in the frame, which has 2 lines) but not in the terminal (which doesn't have a 2nd line). One option seems to have FrameRows always match the amount of terminal lines. Can we remove the "if (=E2=80=A6 height >2)" limitation, and allow 1-line, 2-line frames etc.? (To really match the terminal size). Other changes may be needed in other places, to avoid working with very small frames.. Otherwise, if we let FrameRows be larger than the amount of terminal lines, another option could be: At the beginning of tty_write_glyphs, check whether we've been asked to write glyphs in a line which is higher than the amount of lines in the terminal. If so, return without writing anything. (Because the line would be invisible). Or maybe in some of the callers of tty_write_glyphs. Don't call tty_write_glyphs to write glyphs in a line which is not visible (it exists in the frame, but doesn't exist in the terminal). By the way, I saw that the cmcheckmagic code checks curY (tty) >=3D FrameRows (tty) - 1, note the -1, whereas the dispnew.c code I quote above doesn't use the -1. I hope this is ok. As mentioned they're checking different things so it may be ok, though I don't understand why the -1.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 8 Sep 2024 17:01:48 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 08 13:01:48 2024 Received: from localhost ([127.0.0.1]:59972 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1snLIK-0007nt-Cy for submit <at> debbugs.gnu.org; Sun, 08 Sep 2024 13:01:48 -0400 Received: from mout.gmx.net ([212.227.15.18]:32835) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1snLIJ-0007ng-Dh for 73022 <at> debbugs.gnu.org; Sun, 08 Sep 2024 13:01:48 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1725814896; x=1726419696; i=rudalics@HIDDEN; bh=vqDm2GVgbI40WWphiAXiJlCCt1/Dp7sZoI6NxIgD4ao=; 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=WIUn/6hERy8bhXt/9+c2LC1y0jTRioS4viorM0zmhm++IDYC6sL7GEYRQnZxqlM+ s60oNbOQhv1Kg3GVrlq7pNFMz6/8HW18pAleVTIeqguJ3E8S0AND1Zja4q7oZ3ZqG f1/LaT1fASaHpgZcUL+cD7+t1VgW30AIaxrKgXzw1KhRz41uIrJFV6DPIIHdLGkaY z+7PwxWkSwb/VM3y8L4HOp+/BRsEe5+nSq0oXuKhMK59i1ABaDVxLaZ9vnHzC/HfY M3nTWCgCM0H0ls5l3vwOfPxF8lKbbvTcsVPD8S64vPBvk6+J8j3YW1gDxb0+NKPm+ ScHBuc5acPA9EaDyJg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.217]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1N0oBr-1rqYMv0aU1-017Slg; Sun, 08 Sep 2024 19:01:36 +0200 Message-ID: <9aba8074-9556-4a6a-bb7b-7a4f92ea96d1@HIDDEN> Date: Sun, 8 Sep 2024 19:01:35 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Eli Zaretskii <eliz@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <CAJKAhPDWJD-zbsomqr+BzxgP0hJH=vBnBPN74K0+0eN8xY6fzg@HIDDEN> <d4740e50-0a25-4a9f-88b4-de46aa532dc1@HIDDEN> <86ed5uw48a.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86ed5uw48a.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:w70CLnG+ZQTzcfbIm3YGbXVgJ8YIAq5OB4VvXEBa0bW3I/utIX6 rFarqriUqhYtKLm0EoEzw+m5bFWvc6wp98j52ZbYxv94fu/qzQZN5OE0lFf/ifITxJt4G2z wXEjJPw6cH4XjIVb0nIvw7Q7o/gcvOc9sMOY4O9MmoR45ueAH7i0JwR9T3jjt6v9d69gBh3 I2fMZAh3xMK4uESgGsghA== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:jsWkIsqxlxU=;uA7xOGIbXLHaIf6NlbTtsrYxWOa Kfp+y+1Xm2z8TB0HnpREcejYTNjXXsz4xhUAnCNINsbR2M2QHgaNtVQDHMqzCUk7REAC7M4ZU CnvXSm3eJ43AnDboFxgyB6bU8lQEPSiM+3Tsmzd/pGkqw0TjYFhTrId1qUlJDQgZYPiLp6jk6 WSZeSA2QgDAgrnx/cNdsBovLvon5IANHOG8oTZWoKjNwqTcYHvxT28w001cG6WuvC/Xgm2kcp zfjxTXXORIJmm9jS6O7fB2hfajnFN3fvJ0mMeoM21ZLyzaRLKLY9n7eWnRk26M58qgkOEPKJG sKEheIyPYL/1BbDi2/yT94NpVH2schGCUpfoJeW19XiIWphjBxOiTzfJ9LSU4m7BOt4z9NmpZ EFYJmNvQtgaquId1sLZ+eQ22YmhpDG80vyA8maZAW1hDJU/ENkJxSTAbprUr5VwqAlVESn7gt 04iRzUnozC5UBsPKmKPSsi7Kp86/kfRzhAsSTEKXGV4WaIDWWH9JuXxbnFpClu1qRlkDw//R1 VmGQioYFbyP4ctQBO/YkiwmZXoFiDkR253zetreu8fupuczW21ef1Iz4KJVZO6GSFXNuqfQtK XJhm78y94Hm1n3lHygDXAgUtjZLJ/ouEwb2uj8nAr1kdFEfgznif1gB4kb+MPlAYVGrEh3JWX 4SokItwFO8maElfytgkovhriX+slPjz7WNzKHPLdP+8UjMjrZ/JqthXBnC19pOrzT8ABqhFct ivMWxHyhruow5XDBFhY9REMuD8PkrdbX8MFC6ZBn99CXpJX5rtv+Clz1lDAW3uGT71pv87i3C VSXDVcb8Uwx/Dd7MxM9d3NrrSKpQi7/7puYoZssLeli1U= X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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 don't think it's an off-by-one. It's simply that Emacs draws the > screen top to bottom, so the very first row that violates the > assertion by exceeding FrameRows is the only one that is seen. You're right. martin
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 8 Sep 2024 15:35:01 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 08 11:35:01 2024 Received: from localhost ([127.0.0.1]:59906 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1snJwK-0003C8-UK for submit <at> debbugs.gnu.org; Sun, 08 Sep 2024 11:35:01 -0400 Received: from eggs.gnu.org ([209.51.188.92]:59270) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1snJwJ-0003Br-KB for 73022 <at> debbugs.gnu.org; Sun, 08 Sep 2024 11:35:00 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1snJu4-0004MT-NB; Sun, 08 Sep 2024 11:32:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=wc7WYbQD3Wev74WONx5e8Le3VXBfsWx6DV183IerOIM=; b=jvCsLV5MlV+X CgOU3+ECPo7zpVQNE9/cidosPAIhvzZnw3r37Uhg+KKFAiBn0m1VWjL5Wiq3DK1imOGvXx1ubJEqo PpR0WkhgtEFXGwEFMv8Ygi4vohwmvta8/6sNW7+GBiyCbd7V5KMz4vBWb+EZx/crKVqeZ6vuA7Gof vKQs6e5IP0c023Dhs/bpmsO8HLSCkF2QUcnMEERPX9hg4jpZP53ropvnkU8nhAH59xiBspzSnppD7 TIXb+gZjfQH1p9MgfHBUvpr38u5ka4ywmM7ZC7lm2soq9yIKQRw+Hzre7Yo7OWSAoPDyz9ebQObcG zsh8who1ZUv9hWhJvHb/Jg==; Date: Sun, 08 Sep 2024 18:32:37 +0300 Message-Id: <86ed5uw48a.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: martin rudalics <rudalics@HIDDEN> In-Reply-To: <d4740e50-0a25-4a9f-88b4-de46aa532dc1@HIDDEN> (message from martin rudalics on Sun, 8 Sep 2024 16:43:54 +0200) Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <CAJKAhPDWJD-zbsomqr+BzxgP0hJH=vBnBPN74K0+0eN8xY6fzg@HIDDEN> <d4740e50-0a25-4a9f-88b4-de46aa532dc1@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: -3.3 (---) > Date: Sun, 8 Sep 2024 16:43:54 +0200 > Cc: Eli Zaretskii <eliz@HIDDEN>, 73022 <at> debbugs.gnu.org > From: martin rudalics <rudalics@HIDDEN> > > > In cmcheckmagic we have: > > if (!MagicWrap (tty) || curY (tty) >= FrameRows (tty) - 1) > > emacs_abort (); > > > > Is this an assertion that needs to always hold? > > I very strongly doubt so myself. And strangely it's _always_ an > off-by-one error here just as you sketched below. I don't think it's an off-by-one. It's simply that Emacs draws the screen top to bottom, so the very first row that violates the assertion by exceeding FrameRows is the only one that is seen.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 8 Sep 2024 14:59:00 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 08 10:59:00 2024 Received: from localhost ([127.0.0.1]:59879 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1snJNT-0001HK-Eu for submit <at> debbugs.gnu.org; Sun, 08 Sep 2024 10:58:59 -0400 Received: from mout.gmx.net ([212.227.17.20]:45883) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1snJNR-0001H4-GY for 73022 <at> debbugs.gnu.org; Sun, 08 Sep 2024 10:58:58 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1725807526; x=1726412326; i=rudalics@HIDDEN; bh=6egIgnx24OknKrDvmiNl1y9KVwLyd/Q1/ocFH+oyIE4=; 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=jVnsdg/3wA8uqCr6n7TDN40LpeSdSTlYLm+wVpzeE9LQD0M4pLqxbwkDli2pToWq uIQL+GFrVqC4qGcVrn9C7WH58DKp9ugO0l00hkjC8NjEvTv5y9qNUd0XJ7ZPEI1eU MlQv6YaZXnFBgFr2J4k6PTBoYTORrRdv12bnzPsqgyZW89UjUAXQweSSoAQEJGEf3 02B7Txxl/BrGkF3Hu7aeSLJ3XQJatxEb7v+7wy2T91vl9YXVIKlM6B0RhMfk/VlP9 CWaj1mWfVOemnlcIPfvAhk1Nr7SijFKFQWRcyfQ9ExtlRopDXQ6/ARZTOGNU11+ZT KGGSgegxuT0bE3oymA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.217]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MBm1U-1sslwo17PA-000QLE; Sun, 08 Sep 2024 16:58:46 +0200 Content-Type: multipart/mixed; boundary="------------qCWD7mi1hQmE6Wjh4Ckg0R2c" Message-ID: <2d8e4603-5ea6-41e9-abfe-461392f717db@HIDDEN> Date: Sun, 8 Sep 2024 16:58:45 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Daniel Clemente <n142857@HIDDEN>, Eli Zaretskii <eliz@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <86cyli4fxj.fsf@HIDDEN> <e8b03cd0-9964-49e7-a08e-1f3a8bd92828@HIDDEN> <86seue2l2b.fsf@HIDDEN> <CAJKAhPApQOrWm8ge+kp7RMNjn9aq=-FSo5aCY_1gheRwGi5zOQ@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <CAJKAhPApQOrWm8ge+kp7RMNjn9aq=-FSo5aCY_1gheRwGi5zOQ@HIDDEN> X-Provags-ID: V03:K1:b901M27oDLYL5n3S8apidXIHQs33V46uEXI7CQiC7skITI0ZOrE oJUUnHeeSulPe+tCG02/YqZ3imZS3ulUwv59rz8jMz58wxlv10PyWumKFxwBxwsB9hl7L20 qCM1+pRqRJvqq+pQNqQHUp+GfP8Kcp0QkJqnLzhaHc2KWRzx+9bhdqg4KO0p+3zv9umMdVt 9bvPenwIdzxC2j8IaUHUA== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:HQDpzcExmZc=;4Yb/9LY1ftwGQ+Q4p4D5421vqMj rkHP71Z4y99WWjKdRTFbZqGq1q1+2LvetRNRxSacujw21FeTD+Gui/J6puNk/E3+y92NSsNGl R6mnqfzXOOOk/ah7lhzPRN2eO7nE34B8S84/q5K7aZiWB9uupoIsrywnxJmW2D1Zj8F/SiDWW CqD09lFN3RNMRF6s7WRti4IdowfwilrSCj6I0Riig+BZUr49ekoUoOSx5HzSZpsYdor4cZrcq oEPxxd1Xuz+oHYDDUf+yB7Jr2ku3LqOBaw3AdvnBh3FbZoqD7BslG8CMDyoeJVVlVWYTC1kU+ /qVei5gAVcAFn4Q1XcasCt8lDZySPrd7ye69UARuqC1YkkcEOrqVHJ1flTE5vKtZDhkhzjmTV OE5aoHKpGTF9YrVHu3hC0RpfX26ocy31tDCwibcgY1cUKIG2ceDDxwCH0FbVjbcSS3+Xp7ZfJ dyoSOG8WKtAfGZ3TDEWQvtfuN0w2r9pz8yOkWmVBA73pS39QK6jiM+xd9RGCsA+bpkkmC52vP FczK211cd1MEqqasTHcfXKBl+0le9lv95C5szNrikyf71ip2eCICg+6AWbNIoFuxV9amOlvsR jBsroOKRCY7wLkOrzP/3T8v8E+82x1TfZvticFgdFSvxrlRvXP0SHLNWWjx2q7zx/wfa/yn1G +yTUko4Fj43l8sZiYal0CLM5PlJ8klxELNEP+OD0L6yRubyLBumkDYGtGSuA6dRQeFx8fSygI 06jgQ5tepAThP22QyTXjypL+8ma05u3Ir0U0p/PK/4d+5mm9vCqK2NWegEIFcSx09ylU/58PB aaNwuIMAiTNpGTSZ8PvYrLJA== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 73022 Cc: 73022 <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. --------------qCWD7mi1hQmE6Wjh4Ckg0R2c Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 ID4gSSBjYW4gY2F1c2UgdGhlIGJ1aWxkX2ZyYW1lX21hdHJpeF9mcm9tX2xlYWZfd2luZG93 IGZhaWxlZCBhc3NlcnRpb24gKA0KID4gICAgZ2x5cGhfcm93X3NsaWNlX3Aod2luZG93X3Jv dywgZnJhbWVfcm93KSBpcyBmYWxzZSAgKSB3aGVuIHNsb3dseQ0KID4gcmVzaXppbmcgcm93 IGJ5IHJvdyAoN+KGkjbihpI1IHJvd3MpLiBUaGUgbnVtYmVyIG9mIGNvbHVtbnMgZG9lc24n dCBtYXR0ZXINCiA+IChjYW4gYmUgYSBub3JtYWwgb25lKS4NCiA+DQogPiBZb3UgY2FuIGFs c28gdHJ5IG1heGltaXppbmcvdW5tYXhpbWl6aW5n4oCcdGhlIHdpbmRvdyBpZiB5b3Ugd2lu ZG93DQogPiBtYW5hZ2VyIHN1cHBvcnRzIGl0LiBUaGF0J3MgYSB3YXkgb2Ygc3VkZGVubHkg Y2hhbmdpbmcgdGhlIG51bWJlciBvZg0KID4gcm93cyBmcm9tIGEgbm9ybWFsIHZhbHVlIChl LmcuIDIwKSB0byBhIGRhbmdlcm91cyB2YWx1ZSAoZS5nLiA0KS4NCiA+IEFmdGVyIHVubWF4 aW1pemluZyBpdCBpbW1lZGlhdGVseSBjcmFzaGVzIChpZiB5b3UgZGlkIHRoZSBDLXggMg0K ID4gc3BsaXQpLg0KDQpQbGVhc2UgdHJ5IHRoZSBhdHRhY2hlZCBkaWZmIChmcm9tIG15IGhl YXZpbHkgZWRpdGVkIGNvcHkgb2YgbWFzdGVyLCBpZg0KaXQgZG9lc24ndCBhcHBseSBjbGVh bmx5LCBjb21wbGFpbiBpbW1lZGlhdGVseSByYXRoZXIgdGhhbiBtZXNzaW5nIHVwDQp5b3Vy IEVtYWNzKS4gIEl0IHNob3VsZCBmaXggdHdvIHNpbGx5IGJ1Z3MgaW4gd2luZG93LmVsIHRo YXQgbWFrZSBhDQpmcmFtZSdzIHNhZmUgbWluaW11bSBzaXplIG11Y2ggdG9vIGxhcmdlIGFu ZCBpbmNsdWRlcyB0aGUgZml4IEkgcHJvcG9zZWQNCmVhcmxpZXIgaGVyZS4NCg0KQW5kIGl0 IG1vdmVzIHRoZSBhc3NpZ25tZW50IG9mIEZyYW1lUm93cyB0byBoYW5kbGVfd2luZG93X2No YW5nZV9zaWduYWwNCmluIGRpc3BuZXcuYy4gIERvaW5nIGl0IGluIGFkanVzdF9mcmFtZV9z aXplIHdhcyBzaWxseSAoYXMgR2VyZCBNw7ZsbG1hbm4NCm5vdGljZWQgZWFybGllcikuICBG cmFtZVJvd3Mgc2hvdWxkIGJlIHRoZSBoZWlnaHQgb2YgdGhlIHR0eSB3aGljaCBjYW4NCmJl IHNtYWxsZXIgdGhhbiB0aGUgaGVpZ2h0IG9mIG91ciBmcmFtZS4gIEVtYWNzIGlzIHN1cHBv c2VkIHRvIHN0b3JlIGl0DQpidXQgbm90IHRvIG1vZGlmeSBpdCBhY2NvcmRpbmcgdG8gb3Vy IGNhcGFiaWxpdGllcy4NCg0KVGhlIHBhdGNoIGRvZXMgbm90IGZpeCB0aGUgY21jaGVja21h Z2ljIHByb2JsZW0gYnV0IG1ha2VzIGl0IG11Y2ggbGVzcw0KbGlrZWx5IHRvIG9jY3VyLiAg QW5kIHJlZGlzcGxheSBvZiBhbiBpbnNhbmVseSBzbWFsbCB0dHkgd2luZG93IGxvb2tzDQpt dWNoIGJldHRlciBoZXJlLg0KDQptYXJ0aW4NCg== --------------qCWD7mi1hQmE6Wjh4Ckg0R2c Content-Type: text/x-patch; charset=UTF-8; name="terminal-resize.diff" Content-Disposition: attachment; filename="terminal-resize.diff" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2xpc3Avd2luZG93LmVsIGIvbGlzcC93aW5kb3cuZWwKaW5kZXggZjQy MjZmYTQ0MjguLmU2NDhjY2IyNzBhIDEwMDY0NAotLS0gYS9saXNwL3dpbmRvdy5lbAorKysg Yi9saXNwL3dpbmRvdy5lbApAQCAtMTY5Miw5ICsxNjkyLDEwIEBAIHdpbmRvdy0tbWluLXNp emUtMQogCQkgICAgIDAKIAkJICAgKHdpbmRvdy1taW4tcGl4ZWwtaGVpZ2h0IHdpbmRvdykp KQogCSAgICAgIChtYXggKGNlaWxpbmcgcGl4ZWwtaGVpZ2h0IGNoYXItc2l6ZSkKLQkJICAg KGlmICh3aW5kb3ctLW1pbi1zaXplLWlnbm9yZS1wIHdpbmRvdyBpZ25vcmUpCi0JCSAgICAg ICAwCi0JCSAgICAgd2luZG93LW1pbi1oZWlnaHQpKSkpKSkpKSkpCisJCSAgIChjb25kCisJ CSAgICAoKHdpbmRvdy0tbWluLXNpemUtaWdub3JlLXAgd2luZG93IGlnbm9yZSkgMCkKKwkJ ICAgICgod2luZG93LW1pbmlidWZmZXItcCB3aW5kb3cpIDEpCisJCSAgICAodCB3aW5kb3ct bWluLWhlaWdodCkpKSkpKSkpKSkpCiAKIChkZWZ1biB3aW5kb3ctc2l6YWJsZSAod2luZG93 IGRlbHRhICZvcHRpb25hbCBob3Jpem9udGFsIGlnbm9yZSBwaXhlbHdpc2UpCiAgICJSZXR1 cm4gREVMVEEgaWYgREVMVEEgbGluZXMgY2FuIGJlIGFkZGVkIHRvIFdJTkRPVy4KQEAgLTE4 ODgsNyArMTg4OSw3IEBAIGZyYW1lLXdpbmRvd3MtbWluLXNpemUKIAkgKG1pbmkgKHdpbmRv dy1uZXh0LXNpYmxpbmcgcm9vdCkpKQogICAgICgrICh3aW5kb3ctbWluLXNpemUgcm9vdCBo b3Jpem9udGFsIGlnbm9yZSBwaXhlbHdpc2UpCiAgICAgICAgKGlmIChhbmQgbWluaSAobm90 IGhvcml6b250YWwpKQotCSAgICh3aW5kb3ctbWluLXNpemUgbWluaSBob3Jpem9udGFsIG5p bCBwaXhlbHdpc2UpCisJICAgKHdpbmRvdy1taW4tc2l6ZSBtaW5pIGhvcml6b250YWwgaWdu b3JlIHBpeGVsd2lzZSkKIAkgMCkpKSkKIAogKGRlZnVuIHdpbmRvdy0tbWF4LWRlbHRhLTEg KHdpbmRvdyBkZWx0YSAmb3B0aW9uYWwgaG9yaXpvbnRhbCBpZ25vcmUgdHJhaWwgbm91cCBw aXhlbHdpc2UpCmRpZmYgLS1naXQgYS9zcmMvZGlzcG5ldy5jIGIvc3JjL2Rpc3BuZXcuYwpp bmRleCAxYTI0MzA3OWU0Ni4uOGE1Nzg2NmQzZWQgMTAwNjQ0Ci0tLSBhL3NyYy9kaXNwbmV3 LmMKKysrIGIvc3JjL2Rpc3BuZXcuYwpAQCAtNjA1NCw2ICs2MDU0LDExIEBAIGNoYW5nZV9m cmFtZV9zaXplXzEgKHN0cnVjdCBmcmFtZSAqZiwgaW50IG5ld193aWR0aCwgaW50IG5ld19o ZWlnaHQsCiAgICAgICBhZGp1c3RfZnJhbWVfc2l6ZSAoZiwgRlJBTUVfUElYRUxfVE9fVEVY VF9XSURUSCAoZiwgbmV3X3dpZHRoKSwKIAkJCSBGUkFNRV9QSVhFTF9UT19URVhUX0hFSUdI VCAoZiwgbmV3X2hlaWdodCksIDUsCiAJCQkgcHJldGVuZCwgUWNoYW5nZV9mcmFtZV9zaXpl KTsKKyAgICAgIGlmICgoRlJBTUVfVEVSTUNBUF9QIChmKSAmJiAhcHJldGVuZCkgfHwgRlJB TUVfTVNET1NfUCAoZikpCisJeworCSAgRnJhbWVSb3dzIChGUkFNRV9UVFkgKGYpKSA9IG5l d19oZWlnaHQ7CisJICBGcmFtZUNvbHMgKEZSQU1FX1RUWSAoZikpID0gbmV3X3dpZHRoOwor CX0KICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL3NyYy9mcmFtZS5jIGIvc3JjL2ZyYW1lLmMK aW5kZXggN2Y0YmYyNzRhZDkuLjk5MDhlYzMwN2Y3IDEwMDY0NAotLS0gYS9zcmMvZnJhbWUu YworKysgYi9zcmMvZnJhbWUuYwpAQCAtODI3LDE0ICs4MjcsMjYgQEAgYWRqdXN0X2ZyYW1l X3NpemUgKHN0cnVjdCBmcmFtZSAqZiwgaW50IG5ld190ZXh0X3dpZHRoLCBpbnQgbmV3X3Rl eHRfaGVpZ2h0LAogICBuZXdfdGV4dF9saW5lcyA9IGRvc19uZXdfdGV4dF9saW5lcyAtIEZS QU1FX1RPUF9NQVJHSU4gKGYpOwogI2VuZGlmCiAKKyAgLyogQXNzaWduIG5ldyBzaXplcy4g IERvIGl0IGhlcmUgdG8gbWFrZSBzdXJlIHRoYXQgZnJhbWUgYmFzZWQKKyAgICAgcmVkaXNw bGF5IGdldHMgY29uZ3J1ZW50IHNpemVzIGZvciB0aGUgZGltZW5zaW9ucyBvZiB0aGUgZnJh bWUKKyAgICAgbWF0cml4IGFuZCB0aGUgY29tYmluZWQgd2luZG93IG1hdHJpY2VzLiAgKi8K KyAgRlJBTUVfQ09MUyAoZikgPSBuZXdfdGV4dF9jb2xzOworICBGUkFNRV9MSU5FUyAoZikg PSBuZXdfdGV4dF9saW5lczsKKyAgRlJBTUVfVEVYVF9XSURUSCAoZikgPSBuZXdfdGV4dF93 aWR0aDsKKyAgRlJBTUVfVEVYVF9IRUlHSFQgKGYpID0gbmV3X3RleHRfaGVpZ2h0OworICBG UkFNRV9QSVhFTF9XSURUSCAoZikgPSBuZXdfbmF0aXZlX3dpZHRoOworICBGUkFNRV9QSVhF TF9IRUlHSFQgKGYpID0gbmV3X25hdGl2ZV9oZWlnaHQ7CisgIEZSQU1FX1RPVEFMX0NPTFMg KGYpID0gRlJBTUVfUElYRUxfV0lEVEggKGYpIC8gRlJBTUVfQ09MVU1OX1dJRFRIIChmKTsK KyAgRlJBTUVfVE9UQUxfTElORVMgKGYpID0gRlJBTUVfUElYRUxfSEVJR0hUIChmKSAvIEZS QU1FX0xJTkVfSEVJR0hUIChmKTsKKwogICBpZiAobmV3X2lubmVyX3dpZHRoICE9IG9sZF9p bm5lcl93aWR0aCkKICAgICB7CiAgICAgICByZXNpemVfZnJhbWVfd2luZG93cyAoZiwgbmV3 X2lubmVyX3dpZHRoLCB0cnVlKTsKIAogICAgICAgLyogTVNET1MgZnJhbWVzIGNhbm5vdCBQ UkVURU5ELCBhcyB0aGV5IGNoYW5nZSBmcmFtZSBzaXplIGJ5CiAJIG1hbmlwdWxhdGluZyB2 aWRlbyBoYXJkd2FyZS4gICovCi0gICAgICBpZiAoKEZSQU1FX1RFUk1DQVBfUCAoZikgJiYg IXByZXRlbmQpIHx8IEZSQU1FX01TRE9TX1AgKGYpKQotCUZyYW1lQ29scyAoRlJBTUVfVFRZ IChmKSkgPSBuZXdfdGV4dF9jb2xzOworLyoqICAgICAgIGlmICgoRlJBTUVfVEVSTUNBUF9Q IChmKSAmJiAhcHJldGVuZCkgfHwgRlJBTUVfTVNET1NfUCAoZikpICoqLworLyoqIAlGcmFt ZUNvbHMgKEZSQU1FX1RUWSAoZikpID0gbmV3X3RleHRfY29sczsgKiovCiAKICNpZiBkZWZp bmVkIChIQVZFX1dJTkRPV19TWVNURU0pCiAgICAgICBpZiAoV0lORE9XUCAoZi0+dGFiX2Jh cl93aW5kb3cpKQpAQCAtODY3LDIyICs4NzksMTIgQEAgYWRqdXN0X2ZyYW1lX3NpemUgKHN0 cnVjdCBmcmFtZSAqZiwgaW50IG5ld190ZXh0X3dpZHRoLCBpbnQgbmV3X3RleHRfaGVpZ2h0 LAogCiAgICAgICAvKiBNU0RPUyBmcmFtZXMgY2Fubm90IFBSRVRFTkQsIGFzIHRoZXkgY2hh bmdlIGZyYW1lIHNpemUgYnkKIAkgbWFuaXB1bGF0aW5nIHZpZGVvIGhhcmR3YXJlLiAgKi8K LSAgICAgIGlmICgoRlJBTUVfVEVSTUNBUF9QIChmKSAmJiAhcHJldGVuZCkgfHwgRlJBTUVf TVNET1NfUCAoZikpCi0JRnJhbWVSb3dzIChGUkFNRV9UVFkgKGYpKSA9IG5ld190ZXh0X2xp bmVzICsgRlJBTUVfVE9QX01BUkdJTiAoZik7CisvKiogICAgICAgaWYgKChGUkFNRV9URVJN Q0FQX1AgKGYpICYmICFwcmV0ZW5kKSB8fCBGUkFNRV9NU0RPU19QIChmKSkgKiovCisvKiog CUZyYW1lUm93cyAoRlJBTUVfVFRZIChmKSkgPSBuZXdfdGV4dF9saW5lcyArIEZSQU1FX1RP UF9NQVJHSU4gKGYpOyAqKi8KICAgICB9CiAgIGVsc2UgaWYgKG5ld190ZXh0X2xpbmVzICE9 IG9sZF90ZXh0X2xpbmVzKQogICAgIGNhbGwyIChRd2luZG93X19waXhlbF90b190b3RhbCwg ZnJhbWUsIFFuaWwpOwogCi0gIC8qIEFzc2lnbiBuZXcgc2l6ZXMuICAqLwotICBGUkFNRV9D T0xTIChmKSA9IG5ld190ZXh0X2NvbHM7Ci0gIEZSQU1FX0xJTkVTIChmKSA9IG5ld190ZXh0 X2xpbmVzOwotICBGUkFNRV9URVhUX1dJRFRIIChmKSA9IG5ld190ZXh0X3dpZHRoOwotICBG UkFNRV9URVhUX0hFSUdIVCAoZikgPSBuZXdfdGV4dF9oZWlnaHQ7Ci0gIEZSQU1FX1BJWEVM X1dJRFRIIChmKSA9IG5ld19uYXRpdmVfd2lkdGg7Ci0gIEZSQU1FX1BJWEVMX0hFSUdIVCAo ZikgPSBuZXdfbmF0aXZlX2hlaWdodDsKLSAgRlJBTUVfVE9UQUxfQ09MUyAoZikgPSBGUkFN RV9QSVhFTF9XSURUSCAoZikgLyBGUkFNRV9DT0xVTU5fV0lEVEggKGYpOwotICBGUkFNRV9U T1RBTF9MSU5FUyAoZikgPSBGUkFNRV9QSVhFTF9IRUlHSFQgKGYpIC8gRlJBTUVfTElORV9I RUlHSFQgKGYpOwotCiAgIHsKICAgICBzdHJ1Y3Qgd2luZG93ICp3ID0gWFdJTkRPVyAoRlJB TUVfU0VMRUNURURfV0lORE9XIChmKSk7CiAgICAgaW50IHRleHRfYXJlYV94LCB0ZXh0X2Fy ZWFfeSwgdGV4dF9hcmVhX3dpZHRoLCB0ZXh0X2FyZWFfaGVpZ2h0Owo= --------------qCWD7mi1hQmE6Wjh4Ckg0R2c--
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 8 Sep 2024 14:44:16 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 08 10:44:16 2024 Received: from localhost ([127.0.0.1]:59874 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1snJ9E-0000Y0-0E for submit <at> debbugs.gnu.org; Sun, 08 Sep 2024 10:44:16 -0400 Received: from mout.gmx.net ([212.227.17.21]:57205) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1snJ9B-0000Xk-SK for 73022 <at> debbugs.gnu.org; Sun, 08 Sep 2024 10:44:14 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1725806641; x=1726411441; i=rudalics@HIDDEN; bh=1VUAK0XkslIxoK7EAjKNUIA1hwnRVftTwPRr420PO/M=; 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=SSxVAfjtL111BNKSUKMJ8Jo2ksk0nAZ4vs6ZqTazmxQ0mxkNCJRk7kFHRhJXLBjB OC7Ghk3xwEcpiWeUhagbalpQ/xQWR/hFmg83XQQMwh69rFZ2mFCVjj8Nz3avetGid +mJO+cNxmC5fxmZJKpVaWGxK5mWWZa7h/zHjKAouirxAZU+TxOwk64kS/dqg1MJJO PEdnB4RIjR5/2mblJN9Q7q9wwRwPWu8oe2RWIpd0kNkpg3Pk1jLR4z+eOW84bWUzG VJJWHSiSf73TaSgTq8tVoFFHXciZ5YAX/ZbFrbuEAhocmHeAZvB+ksPnQIHQLZX6b zsu3VVzNwai3jnAcrA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.217]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MWASY-1sYTAw3Tfm-00OA21; Sun, 08 Sep 2024 16:44:00 +0200 Message-ID: <d4740e50-0a25-4a9f-88b4-de46aa532dc1@HIDDEN> Date: Sun, 8 Sep 2024 16:43:54 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Daniel Clemente <n142857@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <CAJKAhPDWJD-zbsomqr+BzxgP0hJH=vBnBPN74K0+0eN8xY6fzg@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <CAJKAhPDWJD-zbsomqr+BzxgP0hJH=vBnBPN74K0+0eN8xY6fzg@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:WVOW8762wRAeM4buKePoCat/BfqOYa2L7lX/isk3IUTcTUglMkm 81kFe43tJckl4vjhmHV2k/092C2c6arWDhCsY3WyTaOBsjlJL1aQ1fuXbynQPt1AOG3D8WY wTQCyiKOx9FUKDYPpavQ/U+Ld/K1v73H8v1Z+4HQXOKwW2vU9LOraln5+FAavEtNAyrOklU XcDFRWGEwT2yPxX/5wN3A== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:+poM+66lQxY=;OL+Won5hFQiN05LoEANhyq8T3Ix +7TF2GSKzZJiJ/2z2W2TmaVNOYXhjfSkEDiEzMPhvkK2cJVBmX3IXA7hgTYsUlLWGJwpVJB/X Y97wf/NstFsa+7nmIW7n7maw/ty4x4gksY2NHbdrtYUqHwTPsWZN1xIGgGD3DHHqF7QTiRrNL c+JMv0Lzt8UhUb56tUxSzQCYsVvvOG5SeKM3lvmn18yHhTjxOVa0sXRT7HBoiH3dx8f7EbT3z 7Ae+rlLf4sM8rNyDnWD5PIKXappDCltwJy9lV2+t0KqylWpYglUev64f+TfUVhhyyIOuaywlH jQTLfCMtBL/zxZCXxa1XjtOkPLvpPd82aCNaIqrUrJp0E4ixXSV1P0se9yVw+sCPGTV6mtnNT 4xTlFEPBIseIZSQv7Sl3KlxbSTEJeGjTmzT2BUw30rBxtDnerVL3t/MtA46FZyB5GRKp9KTB7 IkHaBsjDyz7PL49G0sjmV/jiLeUL2ocX47QRYujsC7LBL/RcRXs8SMvJUJnOlZVUGMQ3XVjmC yfd1xvbNGBZe7rMR+Ltw463uRl7O5nONr/o5ddeVhspMa5CgKJz+GuP7YUwKzoR4NrOQkVLmd oVztCwiiylW8AHJ9evKpyGnluRp4+iOoepDgAywnf7we0/qKFQTG2dHbxHxr0tEM/z+geKK+2 wPi6HePKA8SIOkgdA5Pu8VMol3g2Spcs7XIGG+Sao+mInm7IgWJD7WYbJgLQ2ZykGXTtfyEH0 WNp1R7J7sW9TOzfJL3zBweOrJx0LvKbVPup5yizdCzQWOKYn/HtZCp2HKzkhLPrJq6YLWhoyg 7rUijpEbPVZbNp7xoYzaTf5A== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 73022 Cc: 73022 <at> debbugs.gnu.org, Eli Zaretskii <eliz@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 (-) > In cmcheckmagic we have: > if (!MagicWrap (tty) || curY (tty) >= FrameRows (tty) - 1) > emacs_abort (); > > Is this an assertion that needs to always hold? I very strongly doubt so myself. And strangely it's _always_ an off-by-one error here just as you sketched below. > I have tried > copy-pasting it at the beginning of tty_write_glyphs and I found that > it fails continuously (e.g. it tests: 62 >= 63-1). Actually I used a > breakpoint instead of emacs_abort. > Are there useful places where I could trace that the assertion holds > true?, earlier places than the current place. I suppose in all those cases curX (tty) == FrameCols (tty) does not hold so the assertion does not trigger. martin
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 8 Sep 2024 14:36:37 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 08 10:36:37 2024 Received: from localhost ([127.0.0.1]:59800 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1snJ1o-00009O-SU for submit <at> debbugs.gnu.org; Sun, 08 Sep 2024 10:36:37 -0400 Received: from mout.gmx.net ([212.227.17.22]:39277) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1snJ1m-00009B-E6 for 73022 <at> debbugs.gnu.org; Sun, 08 Sep 2024 10:36:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1725806185; x=1726410985; i=rudalics@HIDDEN; bh=THz/3j8BMtnMdChHD1cozTchIBeIsxvK/rQpURODiMk=; 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=HUgs8xOsESlSqX+UO7OluBOTI+1o7aX956p1kblb3YejMNSTjw0mIVEiGHvH3edC i6HDDq1C3SffOlmGepynNLUcXSP7QegVsLLKrqszIU0csJxIyQU02sy4jIUfDL9bJ YEF7DI0kNJsN6AMHUrRBRdO3wBqmoa7kKvwAWGTUi5Ao/xVewHdTOl531/8G9Hh3G +gx7ke1Vl1C2MvLp8p5J5IaO+eG9fYmr42WNrU/FQwzJxKiu7DQkJGWxHawdV1A8R pz+EvgqxoCe0wqW6mfvSswVt/i0Gn7VsdkNpuNsKFNHCktotXq2G7xycdKXzLlhUJ ESdNpvSp2idJG+7MDg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.217]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N3bX1-1s5TnW2xnf-010b5G; Sun, 08 Sep 2024 16:36:25 +0200 Message-ID: <6421c647-1675-4e28-80ad-43eea06cf5fe@HIDDEN> Date: Sun, 8 Sep 2024 16:36:24 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Daniel Clemente <n142857@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <86ed5z5z8m.fsf@HIDDEN> <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> <CAJKAhPBjuvicyTcDcjxmx5xCRsUqWkUw9LEOf7oQoHr6trVh_w@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <CAJKAhPBjuvicyTcDcjxmx5xCRsUqWkUw9LEOf7oQoHr6trVh_w@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:Ui89ExYxeAN5mf8+GI62q21gnihYldzeH4BFYMXFZ520B0ytJOr 7oObjcD5Gb0B9+FYj3C1H2csAd2kkxod+9yTC9fMSduXSVd7W7wEUvoUVQYg00K4Hxun2+i QPUVTV7GhUejm725iJz1EgUaymMuNPuX9/+4NGUiBAwm9GxhhGxMRJebkmORxHz91sYQ1RT Az6+ALLXjy6xHzZLgujdg== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:LG/RF/sH4JA=;A/YKeSwF2OyoJX+2S9471QKaS4w ySrwZOIUZ9LxjEgmsvWgttj9HKb/u/KlKApxgpUYMpreX6xKx/jSYGtTVxYTIqirbSjmVwC3q TJko7ee1A+YzxelKX0sMOqxV0SxrjPyf/JM5tS+2qApkB6Ego9bAjhrpUqMUSfAC6Pd+2Sj9G bh+LJe1QkzWm1Cwg1ONUvJ+cJjpumWvp831pvxCt0QahwnShyjZEviB+ZWUu2KB+SA39sDQg5 yhdS6QutSnB5/7JE5AN9y/OXLEh2OQzhf3uqAn8cpGy966fzwEz3AvqT1elHol4Qk/2LCs7MB 4iNJFgETDaLeMnvgZCavclawWG5kOC8yZBTKg9y7OMLK0oAtxZYL8A79zUoLihEizWc+6sie0 BLoyQeg63kIi4N6TZFdgJFnF6Cen1GqNIvOlRJSRNhXHMWInys957zXgS/aTqnkG2ZM79X4Zs t6nM72sJZ/v/7tWKz0VYIv+JDO89ie1za0zax1Y0creyTzYFtVTj5p4C8Y0afAOZZiH0LZjj7 G37CXm7s+xPBQiT/wAZKwIK5vF8fh4sg+78BTNtBsb8WmKE9enYeVytQSuEGb1Rq5T77RavzL Yr9VYj7yu8ilo/G/MrTFnwfg2A3LxOqfpm62e1suoFn+REa0slYBPGVNqWh7Ka6IGYzZ2ew/z VmexJ+irwGOQz6G5oU0a3oE8PNnyn/pO90f1sxpQ7mlof7TZRDhrtIZ4/Edkf/m1lcR5Waed6 mlVUQZZiyXg1gJLborxKwAiuU8VH4bkHPyRPMP8ezYAdOL8DxPn4VM9xFqNVMqdLK/6/SM5c+ xcHOvzJZoAA0Iu9Mct4aNz3A== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 73022 Cc: 73022 <at> debbugs.gnu.org, Eli Zaretskii <eliz@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 (-) > We're dealing with two type of assertion violations / crashes / backtraces: > - in update_frame_line, that causes chcheckmagic to fail > - in build_frame_matrix_from_leaf_window, assertion violation > > With the same build I mentioned in the top post (that is, without any > code change), I can see both, after following the same instructions I > posted. > The update_frame_line happens much more frequently, therefore I > thought that the update_frame_line was fixed in 71289; but it's not: I > just reproduced the update_frame_line issue. Good to know. > So you can't be sure that the original assertion violation is gone. Right. > Your build may have crashed with the update_frame_line crash, before > reaching the build_frame_matrix_from_leaf_window crash. Right again. But I think that with my initial patch, the likeliness of the later has decreased. > The best would be to solve both crashes :-) > > I don't know whether both crashes are related. They are both caused by shrinking the frame size to something Emacs doesn't like. Note the if (width > 5 && height > 2) check in handle_window_change_signal and the /* Don't allow too small height of text-mode frames, or else cm.c might abort in cmcheckmagic. */ if ((FRAME_TERMCAP_P (f) || FRAME_MSDOS_P (f)) && NILP (horizontal)) { int min_height = (FRAME_MENU_BAR_LINES (f) + FRAME_TAB_BAR_LINES (f) + FRAME_WANTS_MODELINE_P (f) + 2); /* one text line and one echo-area line */ if (retval < min_height) retval = min_height; } in frame_windows_min_size. People always were aware of the problem but with split windows these values are of no use. martin
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 8 Sep 2024 11:31:24 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 08 07:31:24 2024 Received: from localhost ([127.0.0.1]:58077 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1snG8a-00071r-77 for submit <at> debbugs.gnu.org; Sun, 08 Sep 2024 07:31:24 -0400 Received: from eggs.gnu.org ([209.51.188.92]:56376) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1snG8Y-00071e-PQ for 73022 <at> debbugs.gnu.org; Sun, 08 Sep 2024 07:31:23 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1snG8Q-0007DZ-Ua; Sun, 08 Sep 2024 07:31:14 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=qoJNhtcWSxkFDGJ2J8WzD+ClEk1Qafu47q8XiJ0b2mc=; b=Do54uwPSJEUDF2tOXI41 cfnoy3dziw7gjHLxn6dyUi6vdG7Spvsp/S3fp+A9qO8LG62pl2t7bc+PXsynTAUZSMT7YC2Mh1htr e2qbHnv2Hq7ENF8WjFog+UsiGQlHJqI14t0QT3gNyBtcAZRLyJtUXJomh6RxnsmcO3ICg2FTgu4p/ 2wFdE//3sULrL0zorWg6ElYDMEBSO+3hWe12p+HvPoTseDdsKyAfSG37VDuq8QqMMI0q9s2OUHqIb AINSip6FvZUCNre+WIRuCtiEb19gJYsr3jT2co+I7ossrG5E6m3QW/HarmPrwRXd/09TNv51Q8srV UO7PzMv3RFtsvQ==; Date: Sun, 08 Sep 2024 14:31:08 +0300 Message-Id: <86h6aqwfer.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Daniel Clemente <n142857@HIDDEN> In-Reply-To: <CAJKAhPApQOrWm8ge+kp7RMNjn9aq=-FSo5aCY_1gheRwGi5zOQ@HIDDEN> (message from Daniel Clemente on Sun, 8 Sep 2024 11:08:14 +0000) Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <86cyli4fxj.fsf@HIDDEN> <e8b03cd0-9964-49e7-a08e-1f3a8bd92828@HIDDEN> <86seue2l2b.fsf@HIDDEN> <CAJKAhPApQOrWm8ge+kp7RMNjn9aq=-FSo5aCY_1gheRwGi5zOQ@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 73022 Cc: rudalics@HIDDEN, 73022 <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: -3.3 (---) > From: Daniel Clemente <n142857@HIDDEN> > Date: Sun, 8 Sep 2024 11:08:14 +0000 > Cc: martin rudalics <rudalics@HIDDEN>, 73022 <at> debbugs.gnu.org > > > I noticed that causing this assertion to fail is not very easy. For > > example, if I drag the terminal emulator window one line at a time, I > > can never cause it, even if I get to frame sizes that are much smaller > > than the minimum we need for 2 windows. Somehow, I need to drag the > > frame so it resizes by several lines and/or columns. Not sure why. > > > > I can cause the build_frame_matrix_from_leaf_window failed assertion ( > glyph_row_slice_p(window_row, frame_row) is false ) when slowly > resizing row by row (7→6→5 rows). The number of columns doesn't matter > (can be a normal one). I cannot. Slowly dragging the window never crashes. > You can also try maximizing/unmaximizing“the window if you window > manager supports it. That's a way of suddenly changing the number of > rows from a normal value (e.g. 20) to a dangerous value (e.g. 4). > After unmaximizing it immediately crashes (if you did the C-x 2 > split). This also never crashes here.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 8 Sep 2024 11:11:13 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 08 07:11:13 2024 Received: from localhost ([127.0.0.1]:58044 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1snFp2-0005v5-T1 for submit <at> debbugs.gnu.org; Sun, 08 Sep 2024 07:11:13 -0400 Received: from mail-ua1-f48.google.com ([209.85.222.48]:60684) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <n142857@HIDDEN>) id 1snFp1-0005ut-UV for 73022 <at> debbugs.gnu.org; Sun, 08 Sep 2024 07:11:12 -0400 Received: by mail-ua1-f48.google.com with SMTP id a1e0cc1a2514c-846d536254fso1034799241.1 for <73022 <at> debbugs.gnu.org>; Sun, 08 Sep 2024 04:11:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1725793804; x=1726398604; darn=debbugs.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=QE07cERyDtP/gCwa1bjfglUiPe3CLB4ChkNzCYPNCO0=; b=kQu1Xlqued/xTuCuVgCx8vZnu1JYCQ/AnZQy7kd67jgl7rlw1BOn+bDj0tLofhs9ZD 28FBJ1SUkzhZDp4YppF3Wt/++jHUGCcj5c15yGCz0LJgjNZpKzmUqJb5J/UNNfSykkZ1 IQDhTueKvV0wDaR95glfpxtFofZNHcghY12W2Q/A2xwHhrkPUjDIEbsEwpfNC8h0Z3hp 6/ynHgSv0t+ucs4lOUSqQ2JlegRCjO+Lib8QY0nZ58LZ8gnZH0iZRYAZdm35xgPJ5pu0 KEq06XsX0MdFsTn//0KE3G9doRzc0hFGqFrkp4cQRBl/zP01p8BP1s58BLjDQ0gRCuPt c3fQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725793804; x=1726398604; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=QE07cERyDtP/gCwa1bjfglUiPe3CLB4ChkNzCYPNCO0=; b=sg9NUUdQA37/rnX3b6MQGb1Y0HM1GwX15mT6cw2VHMC73Fmvll00bWS126d3IPL9LG LJq6ef6nzxUd8KaUairngZR/sfgKQpFoBjHjY1HYIzuWyBLto1HIi+aSMD1J8FAReXdB J7ieDtqxd0547dyoGKjqQU8yqHCK5bx3SuxGGota6OnIg9pu9QU2kX40Hk8h2ok+2Wqv uRcJwarUOgszWOOIG9HKoXUtkFdlROQzYWKeTFin2kcZ86RUVZyaTx5YrmfjMKcsDkpk FlzTxpt7ec3hTPDw7ojvHXkbovgBucT9eQ6VVrVoTfPXsUZGTfDFftT0jQijiPLyAkHR /HLA== X-Forwarded-Encrypted: i=1; AJvYcCU1j/CiywfFTD6hYQyhYmGEb8+G3ozhpkRWwEg4Vl1AIUMSxZGFysd6/MgXP5xVxYfck16q/Q==@debbugs.gnu.org X-Gm-Message-State: AOJu0YyzVKbpQf5RLkXFefgZwQpFMIsOvBhsbhByifIVbXxeg731tuBV 0E6K/0c7hOFy59wJCkKSGDO9MhPaLpV7x2OH26CGhlhKwZpaIepI/Z2pDhX+IWVPHGF6Cw2rFdT v6OsrAoU/Y8Eu5IRybtkcN6Stw0WLG91VnRQ= X-Google-Smtp-Source: AGHT+IFOjVmkGnnV3HxUf/lJq3nNRryPlRY8/8HNl6VxNGwHqW2fPrgCMPYv2PjwWuvoPXg/2+DHNBdMgvqnHs2MDp4= X-Received: by 2002:a05:6102:4405:b0:48f:447d:7915 with SMTP id ada2fe7eead31-49bde1c58e8mr5711026137.15.1725793804281; Sun, 08 Sep 2024 04:10:04 -0700 (PDT) MIME-Version: 1.0 References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> In-Reply-To: <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> From: Daniel Clemente <n142857@HIDDEN> Date: Sun, 8 Sep 2024 11:09:40 +0000 Message-ID: <CAJKAhPDWJD-zbsomqr+BzxgP0hJH=vBnBPN74K0+0eN8xY6fzg@HIDDEN> Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: martin rudalics <rudalics@HIDDEN> Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.2 (/) X-Debbugs-Envelope-To: 73022 Cc: 73022 <at> debbugs.gnu.org, Eli Zaretskii <eliz@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.8 (/) > I attach the patch now, sorry for not doing it earlier. > Please attach patches if I can help trying out things. I don't know this code so I may break it if I change the low-level behavior. But I can safely add many breakpoints and debug messages to research the bugs. Apparently we could use more assertions in other parts of the code, or move the existing ones (under glyph debug) to catch the problem earlier. In cmcheckmagic we have: if (!MagicWrap (tty) || curY (tty) >= FrameRows (tty) - 1) emacs_abort (); Is this an assertion that needs to always hold? I have tried copy-pasting it at the beginning of tty_write_glyphs and I found that it fails continuously (e.g. it tests: 62 >= 63-1). Actually I used a breakpoint instead of emacs_abort. Are there useful places where I could trace that the assertion holds true?, earlier places than the current place.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 8 Sep 2024 11:09:48 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 08 07:09:48 2024 Received: from localhost ([127.0.0.1]:58038 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1snFng-0005jy-EW for submit <at> debbugs.gnu.org; Sun, 08 Sep 2024 07:09:48 -0400 Received: from mail-vk1-f178.google.com ([209.85.221.178]:61495) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <n142857@HIDDEN>) id 1snFne-0005ji-8W for 73022 <at> debbugs.gnu.org; Sun, 08 Sep 2024 07:09:46 -0400 Received: by mail-vk1-f178.google.com with SMTP id 71dfb90a1353d-5012813249cso522961e0c.2 for <73022 <at> debbugs.gnu.org>; Sun, 08 Sep 2024 04:09:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1725793718; x=1726398518; darn=debbugs.gnu.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=1pYXpKl1Cc3D9RIN6Ga2xoKM8y04A6fjkG9eS9qeQ2Y=; b=fiMubweWbMsx6s1hoRU2N+4C6rnbttekR8RttC7nsBEJSTi8cHVM4hjiB8u0gCJhVE PIHObYhSsv+ou/mx1Ab755gNlJLiUKCQCQwmtKDzYBfqx+IpNsRO8kZcvLKPcJ6CG7uL rtpyrORJSPT7BjiKr4B+Nx/IN2i/uYsMnxpCEzB5oNuNwEQ1ro/LCc5N6RxLPAEFKDxw mtvvWZv27p6f37dJke4oqlS3J4Hs/yB26VwOxE7sPu0T3/gj9bzC+4cZnHAOWNE9OMa0 nR7SEr0p3m711hWmUsyIVC0YFQVxZW5tGRCkXqOqi+clHkF4rh5tOTIHB7V773PMGpCC YEWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725793718; x=1726398518; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1pYXpKl1Cc3D9RIN6Ga2xoKM8y04A6fjkG9eS9qeQ2Y=; b=CDh6X5/QEjU6wCc8KNhkcut/RBFA0i8ql9PpFeWvSJpIbG4JF5o/YYLJv8TQ2SKpNb O2NGgNptk3Ibip4AljHlRy4vDpndBlL1UApxAsA+Fc0Mv0YD+dYoWlYd3BV+vxuBuPJ4 7/dKjUCw+yx0R5SFFWlVUDuD8ygl6eKfG0DlNAe/KjAwRY291N8664t8zxe8iRocRAGi hblsKpmbKqM8amdmh7MUgoDYZaoVXt7dCnmwv7DWrjOyUoQCd8CEiEPrYC2iTdE2qf7W cGMMycxLfTM2Yhi266nfqNleUqSmpSQK8rSzNoy49ILuFFYOfIsUdgQ0vym43W2VqxR+ 8czQ== X-Forwarded-Encrypted: i=1; AJvYcCXaHHOcdn2+5YqdQBZJKAKWxm4F9mu/SNlDLqOl+IYcC+FOVcjNISoLAMuX+fsCtOIKfhtiIw==@debbugs.gnu.org X-Gm-Message-State: AOJu0YyivsDg4ldRcejMSF6LChX2KIRTV/5zRecIsfQvikhHgoJq55YK w3KaFHVz5EDAQ0okGDAhh3evnCWVrT1Zuy4FDttFIN9tiRnDsK+bwPlZuOTZeuA4RxRWMhe1zco WLYXMYl87F95aNpKTVjo4QfrGWm2u1XHfoOA= X-Google-Smtp-Source: AGHT+IGqr99BRn8s/3qbHv3n+2lnCieFzxsgvbmVbhQbR+tBGCZ/6BGrhxnjiLzmCSEyDhjXoxbCX2eXVrVo281CtFo= X-Received: by 2002:a05:6122:3123:b0:4fc:e4f5:7f83 with SMTP id 71dfb90a1353d-5021423527dmr6891127e0c.9.1725793718609; Sun, 08 Sep 2024 04:08:38 -0700 (PDT) MIME-Version: 1.0 References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <86cyli4fxj.fsf@HIDDEN> <e8b03cd0-9964-49e7-a08e-1f3a8bd92828@HIDDEN> <86seue2l2b.fsf@HIDDEN> In-Reply-To: <86seue2l2b.fsf@HIDDEN> From: Daniel Clemente <n142857@HIDDEN> Date: Sun, 8 Sep 2024 11:08:14 +0000 Message-ID: <CAJKAhPApQOrWm8ge+kp7RMNjn9aq=-FSo5aCY_1gheRwGi5zOQ@HIDDEN> Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Eli Zaretskii <eliz@HIDDEN> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.2 (/) X-Debbugs-Envelope-To: 73022 Cc: martin rudalics <rudalics@HIDDEN>, 73022 <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: -0.8 (/) > I noticed that causing this assertion to fail is not very easy. For > example, if I drag the terminal emulator window one line at a time, I > can never cause it, even if I get to frame sizes that are much smaller > than the minimum we need for 2 windows. Somehow, I need to drag the > frame so it resizes by several lines and/or columns. Not sure why. > I can cause the build_frame_matrix_from_leaf_window failed assertion ( glyph_row_slice_p(window_row, frame_row) is false ) when slowly resizing row by row (7=E2=86=926=E2=86=925 rows). The number of columns doe= sn't matter (can be a normal one). You can also try maximizing/unmaximizing=E2=80=9Cthe window if you window manager supports it. That's a way of suddenly changing the number of rows from a normal value (e.g. 20) to a dangerous value (e.g. 4). After unmaximizing it immediately crashes (if you did the C-x 2 split).
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 8 Sep 2024 11:09:22 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Sep 08 07:09:22 2024 Received: from localhost ([127.0.0.1]:58035 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1snFnG-0005j8-2b for submit <at> debbugs.gnu.org; Sun, 08 Sep 2024 07:09:22 -0400 Received: from mail-ua1-f52.google.com ([209.85.222.52]:60666) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <n142857@HIDDEN>) id 1snFnE-0005iq-5I for 73022 <at> debbugs.gnu.org; Sun, 08 Sep 2024 07:09:20 -0400 Received: by mail-ua1-f52.google.com with SMTP id a1e0cc1a2514c-846cdfbb153so935578241.0 for <73022 <at> debbugs.gnu.org>; Sun, 08 Sep 2024 04:09:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1725793692; x=1726398492; darn=debbugs.gnu.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=7wJViNcJJBcEbM87wmuOB/yUGru7q5EgZumHILOR+4k=; b=WB3tXbMN08VUAtVTDk4iruEmqScjeXCykPdahT/Uu6afMqw48WhyJUCZk19xPTcD2k iADpkF4c8HTE0ptVYqEQxTlNA8aaW+AHMAPsT5fXaeXkRRdNQp2oRZprLn8Lwy+CeYxL uGf3FEESwW28ZLcWazfAFXTy6N92ZyKhqfdxzMz6QkCX0RaJZ0D15kTn2G1uABwHZj4h DtP5w399HaQPgsfmQpNfMP1GCHdK3qWQJzJAfnylW69bvT6C8NHFYUP9E7TXjHnbiAKH c9W0ENaasaDB2uMqYLPMgfP1yby8jRoUyF2KIDd3718M28u66NK9p9M+KcSzuFrrQMY8 5jjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725793692; x=1726398492; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=7wJViNcJJBcEbM87wmuOB/yUGru7q5EgZumHILOR+4k=; b=QFv55TsljKXWZFbDMHHYtOINHOSH0o1Q0WoyJxYF11Izn3TKPJH3fty1fCy0X64XVx NrfTNjX2A8FEdBGBZDB170uXY7YhZ8nDsH8UrvYWhpOom4tJfUoGfnTZ3prjeJ0yeqmV yApmc8cJIoJpCO1aK8BE3xDsXwSV+47oofiveJ8BH+kY3wZbRI4VU2o4saiFajQ/Hf3s S1BdsJHNMNAc+9JFwXto1mDf1O9Oig9cYyJli7crFar0DBQqa3PP2/1q8kmvoR7JRPJA UJb9kh6W2Wl5FXzsxAaoA6Wkr8L21ykBzrSEhQN8xGSs4efKS2WYkBlkKSkRSIwAuxfK 4McQ== X-Forwarded-Encrypted: i=1; AJvYcCUyMYtYPFu9W1q2njZE2Q2uLouzIHljF/8c+80E9tR0h5FadlF8PgBrJZJuiwRrpY6S/E759w==@debbugs.gnu.org X-Gm-Message-State: AOJu0YyyjqhpXGjN5x5nfdLMkCgQibJ1PrU0/MEbv+GUcbrX50lUX350 aZAaHIGsP5eR4IbCOpsBWM6IjMPJ/FR8r3DQtbIPPZz1QbZBNJGQCup5b24DU41aeHeY7OR0+IB riAvjzvW8P1iws98LbsisFMvFISTBgZkY X-Google-Smtp-Source: AGHT+IHYKvVtvjTwm/Yz3Tt9KbDd/y5D3jkNpbI0Z625WauYZmVdLUdMlK2+CXdbb3rkzXfSFScoyX4qdaYbm6I9WOo= X-Received: by 2002:a05:6102:3a12:b0:49b:fe9f:42fb with SMTP id ada2fe7eead31-49bfe9f4601mr251211137.13.1725793692472; Sun, 08 Sep 2024 04:08:12 -0700 (PDT) MIME-Version: 1.0 References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <86ed5z5z8m.fsf@HIDDEN> <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> In-Reply-To: <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> From: Daniel Clemente <n142857@HIDDEN> Date: Sun, 8 Sep 2024 11:07:48 +0000 Message-ID: <CAJKAhPBjuvicyTcDcjxmx5xCRsUqWkUw9LEOf7oQoHr6trVh_w@HIDDEN> Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: martin rudalics <rudalics@HIDDEN> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.2 (/) X-Debbugs-Envelope-To: 73022 Cc: 73022 <at> debbugs.gnu.org, Eli Zaretskii <eliz@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.8 (/) > #0 terminate_due_to_signal (sig=3D6, backtrace_limit=3D40) at ../../src/= emacs.c:432 > #1 0x000000000061b51b in emacs_abort () at ../../src/sysdep.c:2391 > #2 0x0000000000541fc2 in cmcheckmagic (tty=3D0x1ebe0d0) at ../../src/cm.= c:122 > #3 0x0000000000546564 in tty_write_glyphs (f=3D0x1e7bb30, string=3D0x1e9= afe0, len=3D80) at ../../src/term.c:819 > #4 0x00000000005508c9 in write_glyphs (f=3D0x1e7bb30, string=3D0x1e9a0e0= , len=3D80) at ../../src/terminal.c:164 > #5 0x000000000042a6d7 in update_frame_line (f=3D0x1e7bb30, vpos=3D4, upd= ating_menu_p=3Dfalse) at ../../src/dispnew.c:5326 > #6 0x00000000004298c5 in update_frame_1 (f=3D0x1e7bb30, force_p=3Dtrue, = inhibit_id_p=3Dfalse, set_cursor_p=3Dtrue, > [=E2=80=A6] > so the original assertion violation is gone here. > We're dealing with two type of assertion violations / crashes / backtraces: - in update_frame_line, that causes chcheckmagic to fail - in build_frame_matrix_from_leaf_window, assertion violation With the same build I mentioned in the top post (that is, without any code change), I can see both, after following the same instructions I posted. The update_frame_line happens much more frequently, therefore I thought that the update_frame_line was fixed in 71289; but it's not: I just reproduced the update_frame_line issue. So you can't be sure that the original assertion violation is gone. Your build may have crashed with the update_frame_line crash, before reaching the build_frame_matrix_from_leaf_window crash. The best would be to solve both crashes :-) I don't know whether both crashes are related.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 18:43:32 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 14:43:32 2024 Received: from localhost ([127.0.0.1]:38224 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1smHS8-000841-BT for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 14:43:32 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51320) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1smHS6-00083d-FH for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 14:43:30 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1smH1A-0001cH-Fi; Thu, 05 Sep 2024 14:15:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=WQDtD1ypVsMBjXhggEBekiORisWK/RDy57SduNXzVC8=; b=HKDhbEs1bR5T RbaM8KMqTHhT5z7gtv/cDuTgtUzUYNG9KYTv6eipqQ5zusYa4gKw94JfHdW2nhqzBVZDcQcRTpPRz ham7lyWhyo6o2zohXm57W+qp0qFW/RwGecC89xtT3BjRT2k6M3R68idHSNyQZOIT3lj3tFTLNhfZJ JZ38Du1I0dGUubP2UV+bG0cEetHSFVkQtheK9GoH1nQGXMMu5yfEJhB3t/KqZ3RnOWUnNfyGIgw1e STHCLS8nbqnx0UESicMZ/6DLB4Aj7aiv6W0cvJmD5uOoFKN5Nxpu13IsZbgtacBeMRYkPDV006SbC WPnW8mdd/4N6ZtZuI2aZLw==; Date: Thu, 05 Sep 2024 21:15:37 +0300 Message-Id: <86ikva2chi.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: martin rudalics <rudalics@HIDDEN> In-Reply-To: <926a2250-8f1b-4bb4-921e-90abb62b9038@HIDDEN> (message from martin rudalics on Thu, 5 Sep 2024 18:30:29 +0200) Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <86ed5z5z8m.fsf@HIDDEN> <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> <86bk124fw1.fsf@HIDDEN> <7f8ab4d2-fc73-4364-8c6d-5219ced46434@HIDDEN> <86tteu2lm6.fsf@HIDDEN> <41f29165-e654-4d64-a2f0-72fc84bc8924@HIDDEN> <86o7522iil.fsf@HIDDEN> <926a2250-8f1b-4bb4-921e-90abb62b9038@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: -3.3 (---) > Date: Thu, 5 Sep 2024 18:30:29 +0200 > Cc: n142857@HIDDEN, 73022 <at> debbugs.gnu.org > From: martin rudalics <rudalics@HIDDEN> > > > It doesn't crash for me when I repeat these steps, but I'm doing this > > in PuTTY logged into a remote GNU/Linux system, so maybe that's the > > reason. > > Can you get the window as small as in my third screenshot? Yes. > In which order does it re-show windows when you re-enlarge the > window? From top to bottom with the minibuffer window last? First I see just empty frame, even when I enlarge the frame to 4 lines. Then I see both windows, including the menu bar and the mini-window. Sometimes I see different behavior: first just a mode line of the upper window with one text line, and 1 or 2 empty lines below the mode line; then menu bar, and finally the bottom window with its mode line and the mini-window.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 18:43:32 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 14:43:32 2024 Received: from localhost ([127.0.0.1]:38222 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1smHS8-00083z-1j for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 14:43:32 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51320) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1smHS5-00083d-Hs for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 14:43:30 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1smHQw-0004VZ-BV; Thu, 05 Sep 2024 14:42:18 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=uhzdNsmI6F39Q8hmF9RJVyBDH7q8FloQ+hXBvfCeDJk=; b=oMWZvHCtM8CJ nGS11OniXNy8hZPQSlh1e3T8cequoDvWdBEFC1dvVLRG2Xb8bwbnyuQCg8+CQcCrTmDuDFBxNHjA5 4BFnvgwMt9EEvEud254rlQEf7+WWqWkOPTZpHqy+uB9+2NE+Uc0BSx48yJjbID3dCnWWXu4kE/H+u jZnskP7AKhYTJ6QbhXJYnoQc+q2UDxWZ1hsXjKiX0a5uVrukP/RewhV/BBCyTxCy+yP0LiWciK78E bsDgxFlzp7+k/HEdxYiQcIfiy+fx2I8ZU9lqzzu9K/CwJhKVynG+dbvHBp0+Qoz3Vk+dZ/NKhxMOx pQdpeDPpkE6MRh8D9TNzOQ==; Date: Thu, 05 Sep 2024 21:41:43 +0300 Message-Id: <86ed5y2ba0.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: martin rudalics <rudalics@HIDDEN> In-Reply-To: <333ce596-479e-4b59-b2b7-84d446ca5962@HIDDEN> (message from martin rudalics on Thu, 5 Sep 2024 18:58:47 +0200) Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <86ed5z5z8m.fsf@HIDDEN> <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> <86bk124fw1.fsf@HIDDEN> <7f8ab4d2-fc73-4364-8c6d-5219ced46434@HIDDEN> <86tteu2lm6.fsf@HIDDEN> <41f29165-e654-4d64-a2f0-72fc84bc8924@HIDDEN> <86o7522iil.fsf@HIDDEN> <926a2250-8f1b-4bb4-921e-90abb62b9038@HIDDEN> <333ce596-479e-4b59-b2b7-84d446ca5962@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: -3.3 (---) > Date: Thu, 5 Sep 2024 18:58:47 +0200 > From: martin rudalics <rudalics@HIDDEN> > Cc: n142857@HIDDEN, 73022 <at> debbugs.gnu.org > > One detail: If looking at the fourth, final screenshot I sent earlier, > then I notice that the last character of the lower mode line is black > which seems to correspond to curX (tty) == FrameCols (tty). Does this > mean that the cursor is on the mode line of the lower normal window? Probably. But the best way of figuring this out is to look at the cursor coordinates in the debugger.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 17:00:06 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 13:00:06 2024 Received: from localhost ([127.0.0.1]:38081 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1smFq2-0000YC-5V for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 13:00:06 -0400 Received: from mout.gmx.net ([212.227.15.18]:49377) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1smFpz-0000XA-57 for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 13:00:04 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1725555531; x=1726160331; i=rudalics@HIDDEN; bh=hRc6Bna6mOtlMRyFRkNOmgmclFOwVi7FlYIjMcQBLqk=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:From:To: Cc:References: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=Gf+7x9oU9rV76nXPoL/MJSOUVASprVbrVADGxWpLRFsGPCUTZLGdJ8RBHiBFCNXl zB4c8evTZahwJS2JJj+c9lGFfX32Ivp4R5oh+De18KjqamAyN5+UwRy/rgYpDI7fD L0BIg+jOIluoSbcomETkBDk7dnYJC1ccC2FHGbeBsb5d0Y4b1g4xlcO/j0zZzjTD1 VyTZ17wBPro3H6GWbzrAQF8eVeE/Srl3azjbzGsGJuXTNeXxN2GMgXl7gmMYeseE6 IuXL6eEFuuDpR27ptuWzELxP5WTkVFgqwq1FFzWIGJ5mWEQW7dMKcaTynbrkjCBSd 6h+zAAp7rWjRx9uLEA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.159]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1Mw9UE-1rwM7b0tnA-013JG2; Thu, 05 Sep 2024 18:58:51 +0200 Message-ID: <333ce596-479e-4b59-b2b7-84d446ca5962@HIDDEN> Date: Thu, 5 Sep 2024 18:58:47 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size From: martin rudalics <rudalics@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <86ed5z5z8m.fsf@HIDDEN> <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> <86bk124fw1.fsf@HIDDEN> <7f8ab4d2-fc73-4364-8c6d-5219ced46434@HIDDEN> <86tteu2lm6.fsf@HIDDEN> <41f29165-e654-4d64-a2f0-72fc84bc8924@HIDDEN> <86o7522iil.fsf@HIDDEN> <926a2250-8f1b-4bb4-921e-90abb62b9038@HIDDEN> Content-Language: en-US In-Reply-To: <926a2250-8f1b-4bb4-921e-90abb62b9038@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:WVQBO+38XryknkBwzhXI5eZ8m3ccSzcIjbqs+BOYgfliUfZvW4z sjNQo8uGZFJpD0JONif24rRkITsa01cUC9YAIFSm0YQlyYKb24ww83TA9ewwJFT9DbFRdQp goIZg2x+Lo6j21UXjI/JdqBRs4iJ2AX23ZKHDQKP2ycece72yFypSn9yJSWkusZxVdGgywu TrklzccnHEDRQOwRUWfIg== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:w+6vuQkuugU=;wiNozwo3dLJJ5MB6IJk3xouv/am thtnq3qoz2S0PnrPT+KMwvm9+Z706TjwRBwrVINFA5dl4uJk+M21aNs4bufn/uTY/4Qp9AY5r DpIzAWkAdSlheTNXa9H08i1xLkUrrzWKkz6brBlA0sUFXgJ5IKb2peSPcs0Q2zjJGqCYhr09P NUKPeshEH/2ANnCTW93ExJ8ztTkV8ERLsI4tnT+KqnCwl1KFvmPrHPyTWds8KLfLJgvvx9Xvd BzCdtPQ2Glr+zwJJShq2QXKaalEa2vdFp6MTOXoPd65lH7JCkAHLLSItKhtEZPn2YkCaZ96Oo gd9r7P3dLjbZJ/aUutDpbmzOSbVe7k1Bt6EF9ZEjS02YAZNIf+p+8N28eAxa+3EJSaC0x9chS Ys1J9GNmZXZ/7TB6sKN0adqe84KgfG85nJ0eW/83qN1Q1sH6DGuZ0zLcZ2G1aM2bbQxHyzXvM aiqRu8AjYJN3WinAEpdnOalPUTC9gZFGU9TgylxqmtQ+qXUKXm7G/omzREyybcNgRrSGkP22e CDC8tWnuUaM0GloLn2HcQYsHqJIFRrW4eIPadvgdjpG9Rz1vOCwTMgejlNKuQzyysVM4WUHwD JW71AdkQTy7fdEeOS+y/4J+g80SQ/XWPBWtuCLp4H7HvhbpdDLo+jWrVhShv1AEIEH17CAZD8 sbvakAWkhdMRG5b/fybiJXVtYFmLNKpsvHwMw4LEOEJmuXN5ifprXGMD3BSgxBP97hOMWqp6a S0l/k6820T6RPuW+3b0VzrJjYmIuVPG/FtpLZSiiYoNKqdJLCeJkrcQnWD6O7LdOqbr1I1t+8 TfFHtT1BKvN0qaFymFKv7ONw== 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: One detail: If looking at the fourth, final screenshot I sent earlier, then I notice that the last character of the lower mode line is black which seems to correspond to curX (tty) == FrameCols (tty). [...] 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 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.159 listed in zen.spamhaus.org] 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [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.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_WL Mailspike good senders X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: One detail: If looking at the fourth, final screenshot I sent earlier, then I notice that the last character of the lower mode line is black which seems to correspond to curX (tty) == FrameCols (tty). [...] Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.15.18 listed in wl.mailspike.net] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.159 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 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) 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager One detail: If looking at the fourth, final screenshot I sent earlier, then I notice that the last character of the lower mode line is black which seems to correspond to curX (tty) == FrameCols (tty). Does this mean that the cursor is on the mode line of the lower normal window? martin
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 16:40:11 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 12:40:11 2024 Received: from localhost ([127.0.0.1]:38021 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1smFWk-0007RH-Il for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 12:40:11 -0400 Received: from mout.gmx.net ([212.227.17.20]:51089) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1smFOa-0006sB-K8 for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 12:31:45 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1725553833; x=1726158633; i=rudalics@HIDDEN; bh=agmMAqXAzjLxQUNOxafebC0O9e2MH3LFSoJQjpsqSPI=; 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=hVlqoBiTqR9ps7aC0uXlm/jpkVXbNGJ9kNIjyuTlooa5FjocidkrpoZ/Ats+dPBz kDDa3iGp2nSKVYJrwi0Jj8H7CJKXcQrx9LuhXrLFxvvVDCUNQKXempKwKX3jqdKPL Fv8AhTAG52GgV1bG+iWyp6RjGAOcMgrVvC7eklUT1YrGpA3FvzXfyPnlEIC4fHyNf MK14WI+G9CVeMwKz7CAlEWUkP66QG49P/nyeLj5QSAXdEdXEFjxBENupb0PrXsz5T 1YRsofIbjfhV/TKTGVxEOa0Q1uQn3g/14c8hmjGraAaIf+CB0VAiJ9phgT6bbXNKR UoZFslA/cM8PYdyF1g== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.159]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MkYXm-1sLBTy2wWM-00m646; Thu, 05 Sep 2024 18:30:32 +0200 Message-ID: <926a2250-8f1b-4bb4-921e-90abb62b9038@HIDDEN> Date: Thu, 5 Sep 2024 18:30:29 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Eli Zaretskii <eliz@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <86ed5z5z8m.fsf@HIDDEN> <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> <86bk124fw1.fsf@HIDDEN> <7f8ab4d2-fc73-4364-8c6d-5219ced46434@HIDDEN> <86tteu2lm6.fsf@HIDDEN> <41f29165-e654-4d64-a2f0-72fc84bc8924@HIDDEN> <86o7522iil.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86o7522iil.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:ACLwbSddSehfUyxpgABJPPEMXJy6B6zxMNXW5xliPD/gBya5eIp 1EHE39Q2M2xHyHZC3qhYtV2b+Ey8pS3BUPCB6rr45mfcQZf+I34cL0xUIoED1bq95/tVB1Z laRXbwrmk4D1w0hUjTYJacWmDYFa+RJ5lLeicJ66jJeTkAwcgGA68WdfK/lOzy0t2BfDiMD etIgy+8PQQH07B1V9Cg1Q== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:BEFnR11o4KI=;ZGRafvYDzcwbA+GcB/K7HK7CgeH fPKkwwUJDE21aTYNkaZxy4JNEGL8rn+FTwIXcjIc8vHnEVbsf9ofEOAyvvIqK+j7IWSDuwqMP J/uUPOlkj04S3knQ2DX7OEEQg+ylmeQNtYhIaRDGdJfSDMkbV/yP9Zb8Sugj2ucazj2CFjvgz +6HmeDOoiRleiQmHuN8lLcH+LLCMgAyUU8pbwQUugHgbU2z64i1hBj5bgmb1l/MhG0sXjrwzx ymaYLUhSjTsxNhTNOLSlvXhO4f9BwkBnq9SF2QV+BuWS23wkYeLWqAP3O7Se6ltAcIWQ9GdJs wvcaOuqrbUBNEPUw+nmx4ZpueO3+1IIfNdUvqrGl2z0fQi8xGEIxpt8aw3gJW/UNKVn7YN+Jb kBuugunQaR9/wG+6jclupN5uneM2RXxqkDoZlAXa9vrBOJWfGIs1EzrZe9CcQ6baxndsW9gs3 WcTv33iR1IWgCZCFdNa45uXmYcofWcyJ8Yt27hQvGBKkdkievc5LSKYIwWRLC3Z3NI7sbU7Kb eGvLiYKP5KmWSoQ856IjENDNuCODdFpEl3WPgWuQDH4jewd/WolnniPFcjz3zuR4/qIprzbyD uyWG3Yg56zASMuwyqscfsB0OTSUwZNwqGlH/1G3vSqtEo0SH/60i3oPZ6AxFvFDqsatJ/Gekv tQyywBKe9E0h1CtAn0yWJrUCKmaGmMTtFXQazbtzs+plCm40HJf6nr//b0w3bgpiwKBj5/F6G ND4jO1nUDUBiyef3DqOHvc4+hp7O9vjLesd4I/KU9vYhdWT5cgarcTpptIe6z+JzDAK2LTLeK s1ANq2yE9oxDwb+5hIdqp4MA== 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 doesn't crash for me when I repeat these steps, but I'm doing this > in PuTTY logged into a remote GNU/Linux system, so maybe that's the > reason. Can you get the window as small as in my third screenshot? In which order does it re-show windows when you re-enlarge the window? From top to bottom with the minibuffer window last? 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.159 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) -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 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [212.227.17.20 listed in wl.mailspike.net] X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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 doesn't crash for me when I repeat these steps, but I'm doing this > in PuTTY logged into a remote GNU/Linux system, so maybe that's the > reason. Can you get the window as small as in my third screenshot? In which order does it re-show windows when you re-enlarge the window? From top to bottom with the minibuffer window last? Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.159 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 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [212.227.17.20 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) -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager > It doesn't crash for me when I repeat these steps, but I'm doing this > in PuTTY logged into a remote GNU/Linux system, so maybe that's the > reason. Can you get the window as small as in my third screenshot? In which order does it re-show windows when you re-enlarge the window? From top to bottom with the minibuffer window last? martin
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 16:28:28 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 12:28:28 2024 Received: from localhost ([127.0.0.1]:38002 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1smFLQ-0006Z5-Df for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 12:28:28 -0400 Received: from mout.gmx.net ([212.227.17.20]:56965) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1smFLO-0006YT-6n for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 12:28:27 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1725553633; x=1726158433; i=rudalics@HIDDEN; bh=Ppu/atj9dBpMSK9voBWz1DcEMzF4/Xd1DZ+JOO/RdUc=; 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=FVYFW+8f0PU5sRtQvSOZDKydAIcIdDNZEq3RCvOaixjDpx+26mfaz0pUT68rkb9I FUolidWi6ZJHxlQDPPqyzSP8ulleFs5wyg9FyTER9jTzcaBIFn/ITqJGXvAklRFcQ ykCa9iviBJJXzcyqKDDqNFpZpMj4FIQbzSSlgm6pG1PrSxwTB0/Tbzojiw4vb87eG bvGBzgSVnXEzLCFk5W92rj6osR+AvRzsC1DhRsKWM0A9tAmE0jbellvRpS5l4ENaT fTtUfI4TELQN6d1VvyCZG75gT1G128FZEit14Ac6KKt/6eN7mr/+rUp7xQZQX/67b ZTFNIvfKmycHD82j1A== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.159]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N8ofO-1s1JN12zGo-00yJGy; Thu, 05 Sep 2024 18:27:13 +0200 Message-ID: <24026689-43a7-4340-ba0e-54d8e8c655ed@HIDDEN> Date: Thu, 5 Sep 2024 18:27:07 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Eli Zaretskii <eliz@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <86cyli4fxj.fsf@HIDDEN> <e8b03cd0-9964-49e7-a08e-1f3a8bd92828@HIDDEN> <86seue2l2b.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86seue2l2b.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:SIZkMwDoQSds5HD8saM+uBdXfKdnOGco07Vve8Qy7G/D/SH2hDh SIAXnAGoXGdr1KD5fyVdE9C1VDSjkp1pDpqOFrw2j5i+gkYAwfXM/E4y7SECYK7ozB2F37d GZhCl7GkMZMfkNJ1beSEy4RDin9KuSem3KTd5GsJBijfDnXhds4PoTdei5umWe8+TkdR32z TSyo9ujDtPbTOcLPt1GJg== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:A33tYocSjZk=;Wi0LdGyE8GY7SHM2wV6PCB/rYJ4 KtZqiznfn0Zv6x3YVHVKs+1SStJBmZolVA1YcyUxBap+YdFInnMi+Tq45oX2SX6bZFLuioueK +5TLPiQ7Si5qFPchveYIpD0AoEL1ATmhAoMRrlClpI+foUsETSiO/aMFcxBS9kG1cfe+Oqe/I tOa80mourkaRmHksTBPKlWUUfACcTtiqe9tWYemTx9cD68siSMBWV+EAR48Fq8lMKDMv8tdcV qT29TBhTk53duA/uwzK2Ows9G1s6mV1MYc9jwqzBmotlgR+c9uO4lorehVqqdrvTOApqgXVhK fgi8+tvV4z4lprJUAP7gJVaK8y9apjDDWVKhkhoMxhZcJ+8tnHwAdjQ97UH+HetF1w/VPsM1U Bw/e7SQ7ATsc9IPXQtgxerGQdjk4XTE1y1aID4CbAmkkAiEXzHk2Rtz/9V0g/WhYV5cDRddMt ZqEK49CN3yTjYSKY63AKo42/8wCfarjepuSXR/o/8ZIPqv5DZ126eCS1HiS9iDAA7/ZI8cjtD jSTtI4PyAuPaEfk7BdzkJ4fAO9Ga+1QtX4JcfG7zU1TUr87gEwoNIKdW5WZM/DXg9m4jigt6z Eoxi71JZmkN4AG6/4SyY45SRHutN/Bt+OG7Ov4zHUXhViQ8fbsHQezZYb6T9hiN0mlcVGe7ne BRgywmTufALg3i/SOiW+MlD67Jv1xUOMI3MgAP7VvzH1KTvRNhQSVd1Cts4tEd1gCsezJE9n9 KtiP/a2Whvjy1Jsw9RUPIeBrMtSen82966dB07tv+7d4iLoKOjuVAtY54uxfvxBeDP4uWixRj z3/KkxwK+9XuSM2zW4WjfkVw== 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: > What is supposed to happen, with the current code, when the frame is > resized to less than the minimum dimensions we allow? Shouldn't we > disallow/refuse such resizes? And if we don't refuse, wha [...] 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.159 listed in zen.spamhaus.org] -0.0 RCVD_IN_MSPIKE_H2 RBL: Average reputation (+2) [212.227.17.20 listed in wl.mailspike.net] -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_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) X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: > What is supposed to happen, with the current code, when the frame is > resized to less than the minimum dimensions we allow? Shouldn't we > disallow/refuse such resizes? And if we don't refuse, wha [...] 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.17.20 listed in wl.mailspike.net] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.159 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_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 > What is supposed to happen, with the current code, when the frame is > resized to less than the minimum dimensions we allow? Shouldn't we > disallow/refuse such resizes? And if we don't refuse, what will > happen to the windows? E.g., if the frame is not tall enough to show > the menu bar, the two mode lines, the mini-window, and at least one > line for each of the two windows, what should I expect to see on > display? As for GUI frames I wrote some code to handle that but you didn't like it back then. Basically, we should do the following: - Add min-size-hints so the window manage never tries to make the frame to small. These have to correspond to the current window layout and the window decorations - a frame with split windows has a larger minimum size than one with one window only as we can see in the present thread. - When the window manager doesn't comply, simple ignore the shrink request. Portions of our frame that don't fit will be clipped by the window manager. I wrote some code to always keep the minibuffer window visible in such case but cannot remember whether it works well. My WM (and Windows too) never tried to make a GUI frame smaller than I wanted. On terminal emulators we should (or even do) conceptually the same as with a non-compliant WM. The terminal emulator has to do the clipping just like the WM. > Taking some code and moving it to another place in the same function > can only affect what's going on in that function and the functions it > calls. For example, if you had > > foo (); > bar (); > baz (); > > and then you move the call to baz to be before the call to bar, like > this: > > foo (); > baz (); > bar (); > > then I can understand why bar and its subroutines are affected. But > once we are done with this code, all the 3 calls have been made, and > the order in which they were made can hardly matter for the code which > runs after that, right? So I moved the assignments within adjust_frame_size (baz) in front of the resize_frame_windows (bar) calls. Is it that what you mean? > So if the crash was inside the call to bar, then I could understand > how moving the call to baz before it could affect the crash. But the > backtrace from the assertion violation didn't show adjust_frame_glyphs > anywhere on the call-stack, so I don't understand how simply > rearranging code inside adjust_frame_glyphs could change something > _outside_ it. Do you mean adjust_frame_size instead of adjust_frame_glyphs here so the fact that makes you wonder is that adjust_frame_size never shows up in the backtraces? I could imagine that resize_frame_windows (or even 'window--pixel-to-total') mess up things in a way that confuses frame based redisplay later. In adjust_frame_glyphs_for_frame_redisplay we do eassert (matrix_dim.width == FRAME_TOTAL_COLS (f) && matrix_dim.height == FRAME_TOTAL_LINES (f)); and I wonder whether there's an execution path that could bypass that assertion. martin
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 16:06:40 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 12:06:40 2024 Received: from localhost ([127.0.0.1]:37975 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1smF0K-0004wv-6N for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 12:06:40 -0400 Received: from eggs.gnu.org ([209.51.188.92]:57468) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1smF0I-0004wX-7e for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 12:06:39 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1smEz9-0005mQ-0b; Thu, 05 Sep 2024 12:05:27 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=ehvV6zRaKYnWEIQivgDcn5FbqodATNHPkX1nB/9o+N8=; b=mF+IvJM87Qsn V+GVOTyE1DhL0vQl1qH1NmAuDU7d5IUVWcVhf+Q3gNZ01jEFlDSAfyTNqrdqIYNAduccoinLNWwsR 0t4fGvINQDeh8wkTHk4gXMKbM+ceKq319HJn2UOsp4Qub2GiqHDDEoC4im9AjQUkZ3sswHoZEfSy5 1SU8LnV743Xaq3vjgq8SsJUmmDNsMtiPyWaqTXjJUc6PYzeEfS8HyVBnFx2nO3k+vENkDJAOMiG7d C3Ua79mN0RVYJDO0OPbcAgUPmQ7y68aUba63iCV5+nS5/MbKBguIAbN/1N6HvgHyj7yTnmoFANr8H 9t2YdMrxy3rqCPg5NQ1nEQ==; Date: Thu, 05 Sep 2024 19:05:22 +0300 Message-Id: <86o7522iil.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: martin rudalics <rudalics@HIDDEN> In-Reply-To: <41f29165-e654-4d64-a2f0-72fc84bc8924@HIDDEN> (message from martin rudalics on Thu, 5 Sep 2024 17:48:51 +0200) Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <86ed5z5z8m.fsf@HIDDEN> <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> <86bk124fw1.fsf@HIDDEN> <7f8ab4d2-fc73-4364-8c6d-5219ced46434@HIDDEN> <86tteu2lm6.fsf@HIDDEN> <41f29165-e654-4d64-a2f0-72fc84bc8924@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: -3.3 (---) > Date: Thu, 5 Sep 2024 17:48:51 +0200 > Cc: n142857@HIDDEN, 73022 <at> debbugs.gnu.org > From: martin rudalics <rudalics@HIDDEN> > > I attach four screenshots to illustrate what I'm doing. > > First I split the window via C-x 2 (tty_1.png). Now, using the mouse, > I drag the lower edge of the terminal window up in order to shrink that > window (tty_2.png). At some moment the edge can't be dragged any more > (tty_3.png). Now I drag the edge down to enlarge the window again > (tty_4.png). When at this moment I drag the edge once more down Emacs > crashes. Which IIUC means that Emacs crashes at the time it wants to > show the minibuffer window again. It doesn't crash for me when I repeat these steps, but I'm doing this in PuTTY logged into a remote GNU/Linux system, so maybe that's the reason.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 15:55:25 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 11:55:25 2024 Received: from localhost ([127.0.0.1]:37922 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1smEpR-0003vU-3J for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 11:55:25 -0400 Received: from mout.gmx.net ([212.227.17.22]:59893) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1smEpO-0003vB-K0 for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 11:55:23 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1725551651; x=1726156451; i=rudalics@HIDDEN; bh=aUU2KSch1vQhiB50TK5THBGKB90jaSRo9ebVa1hXWE0=; 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=YvM1cU0IpGhFDU/szY9AcWmxH2x4xbhNVTXM8sH/jiENGz/cdIPxDV0m6WNT20jY yCpMOs4X+NI0WZ8hOVbwDja5qG77WCpJs2yOZk/vhBAfcdkNZZZoQUUXTvPgcZ3xC nCHxres2LWQcf1v1wtewDOsvfyJuxAY2puRN0VMi2/kISkqPPjA1duCD2CB4Pp04S +Vap0QrpGU9plYvHml5AsJP/lPJPKwDS+bWcIsnMHC2rUUwy7PVcVcqoV0wgRonYK TLRZZrsdEUk6srql677f4XZCKyzS8Bwx0KmHWxObrw0rQnY8ACIjtnnYTXLGUlEHl uMZsj5CkE1Iy00QR1w== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.159]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MgvvJ-1s77gh30JR-00hOuD; Thu, 05 Sep 2024 17:48:54 +0200 Content-Type: multipart/mixed; boundary="------------NRa7Qrb608tUY0duGKRawJDS" Message-ID: <41f29165-e654-4d64-a2f0-72fc84bc8924@HIDDEN> Date: Thu, 5 Sep 2024 17:48:51 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Eli Zaretskii <eliz@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <86ed5z5z8m.fsf@HIDDEN> <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> <86bk124fw1.fsf@HIDDEN> <7f8ab4d2-fc73-4364-8c6d-5219ced46434@HIDDEN> <86tteu2lm6.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86tteu2lm6.fsf@HIDDEN> X-Provags-ID: V03:K1:DxFEh9E5TU0Ra43oMbU9ieb927JJufscQWdWBXm0TeVyqXM2nv5 klbTpSL+3kFCA5lLJ3dS8uEVzkNVNVhnCtX81UKG9dQkN4MMKOWyiAo3as0nafkcUMkBaPe BM9HvtdpAjx07njJYoXXzWxA+PztLqxDVlEn8a425fQdbgzaUfcI3oo1vNl5q4dcvHuVt9b eSz4bFYMw3gSDYn6hONnw== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:5IedhVR7FKg=;DKIeEx+mqphxOQ5M449+WfHUTV/ gzpPVTTnxihfn9qCVtOoQmJUROcTmAWIq0h2deW6zsD/Lfy1Rvb/OcGJCu2EJufcVC5tGomH4 h+sn86Gi833C+ewf/XaB0sQax2g8E7j78YWltzWF+sHjbCL3F0kVLFKGOGoPONydFRO7mdNNn y79d4Oqufn/GF0wn9RrzG+7vyuJppnNMtMNX7Ipjp4ClhcOCYedYl0ctXNX3aU4cyov1T7h2X JObNCZ8CJjxHItJnwL9m40owmUm2+SYSqyUst6BNaqjfggY7MF0g1tm05eraa2FzkfaqcC62w gYkVApDAWVUnxflFeUxtMa9v+fenVr1J/6PTxVDA81BRab4YFiVQ46SpVwRHhaHvu9hTi1Ni8 P3EcdX4L4VdnSuyetfB4r2j4DJp9WGaQaFuRz+NMvDg4c06AbjCa6sW6M4VPTjcEIjpqYg9p1 VqbWDDjEjtcC+/GtEEudK8A6yIpePve+K29Bxu9NMvWf4rBSgEi6gX6g/1UJMmop3LsxbQvVg uGPRXLDR8C2k0Sa0QLBIYMGSYOzYujyyBvBi9m9+SnDbg11DF3G1Aay5loeswaF1iHQoVD9vT X3iCTrhN42S+k+5EyusF7mhtmx0i9/xi6cXG6pXLkKt4jrwefuRFTxiKiXYD1XRNJwaqaqeMD roN0nDPFOF7aFFKbpKUdHnZ5jSHPd7eGM54OniTx6NG2JjRevMdpuZM1iA7uwzCFgEyAMqGAI 2qD8qV9JfghfjppFmV/gbNEavhpVfLf3+XpdAQUB/WH0y5bBRjRpVE0lQP7kw8pV27apwMaqB UDGcIeA/uN8T+5HTuwE12P/w== X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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> This is a multi-part message in MIME format. --------------NRa7Qrb608tUY0duGKRawJDS Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit I attach four screenshots to illustrate what I'm doing. First I split the window via C-x 2 (tty_1.png). Now, using the mouse, I drag the lower edge of the terminal window up in order to shrink that window (tty_2.png). At some moment the edge can't be dragged any more (tty_3.png). Now I drag the edge down to enlarge the window again (tty_4.png). When at this moment I drag the edge once more down Emacs crashes. Which IIUC means that Emacs crashes at the time it wants to show the minibuffer window again. martin --------------NRa7Qrb608tUY0duGKRawJDS Content-Type: image/png; name="tty_4.png" Content-Disposition: attachment; filename="tty_4.png" Content-Transfer-Encoding: base64 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 RUVFlBsMGAwGhzo8NQ5QUF+FhYW4u7vj6upqNS89PR2dTmf+7ObmRrt27ZwdglMZDAbOnj1L dHQ0Pj7WI0PUVt6W6I9WXkeUl5dz9uxZSktLiY2NJSgoqEHpRIVr6bgh+0fL9kfYvtfS/iaE +OOo7OhUquzweHt51TmoQa2dnf3797Nnzx6b8+666y4iIyMtppWUlBAdHU379u05cOCA1TJz 5sxh4cKF5OXlUV5eTvv27Tl79mytATqDo+WoKiMjgy5durB8+XLuuOMOi3l1lbcxlJeX8913 33Ho0CF8fX25/fbb6dev31VZd1OU15mqtgONRkNoaCh9+vShbdu2Dc77008/5dlnn6WsrAyN RoOLiwu5ubm4u7vXK11zc/HiRVauXFnjfD8/Px544IFGWXdTHTe0Wi3ffPMN48aNo3Xr1nWm b677R3p6OsuWLbOaHhgYyOTJk5sgomtTc92+ixcvpl27dgwZMsRi+meffcZ1111H3759Hcqv qfY3IYSoSfWOTiV7Ozy1dnbWr1/PK6+8YvOqzqBBg6w6CW5ubgwZMoT27dvbzO/tt9/m7bff BmDatGls3LixttU7jaPlsFdd5a30zjvvkJKSwkcffVSv9VQqLCxkxIgRnDx5khtvvJGcnBze eOMN3nnnHf72t7/VO19747O3vM3V+vXref311+nYsSNGo5HMzEy0Wi2TJ09m8eLF9R7usLS0 lBkzZjB+/Hi++uorPD09uXz5slUHxt50zdGFCxf48MMPzZ+Tk5Px9/c335WKjo5utM5OUx03 MjIymD59Oh06dLCrs9Nc94+SkhISEhJIT09n8+bNtGrVil69etGzZ88G5eus41pTu9aPf6+8 8gp33HGHVWdnxowZvPDCCw53dppqfxNCCFsURcHd3b1B50p1Psbm5eVl91UdjUbD6tWr7U57 NTlSDnvZW96DBw9isNEjddTs2bNJSkoiMTHRfDfi/fff5/nnn2f8+PHExcXVK19743Nk+zZX UVFRHDt2DKjYgf79738zc+ZMHnjgAUaNGlWvPNPT0ykuLmbChAl4enoCEBYWVu90zdHQoUMt 9p+QkBCmTp3KG2+8cVXjuNrHDUc01/2jXbt2LF68GICAgAAefvhhXnvttQbn66zjWlP7Ix3/ HNWc9zchxB+DSqXCxaVhb9045Z2djRs3smLFCvPntm3b8txzzzUoz6KiIr744gt27NhBeXk5 w4cPZ+rUqY1+FTwhIYEvv/ySS5cu0aFDBx566CGrNPaUt7i4mM8++4zU1FS2bduGl5cXTz75 pHn+3LlzUasdGx9i4cKFTJo0yeKxqyeeeIJXXnmFRYsWmU88582bR2xsLIGBgSxYsIDc3FwG DBjAM888g6+vr8PxObJ9L126xPz58zl69Kj5MbtJkyZZ3DWZN28e7du3Jzw8nAULFpCamkpc XBwzZswgOjraIr/s7Gw+/fRTDh8+jF6vp02bNkycOJGhQ4c6VHe2qFQqJk+ezMyZM0lLSzNP f/fddwkPD7e4U5Gbm8srr7zClClT6NGjB1CxPdLT0/ntt9/Mnzdv3gzA6NGjGTdunEPpwL52 P2fOHJKSkoCKbTF16lRef/11jh8/TmxsLO+++y5eXl6NXn+1sacdOJLOXk1RXkf2D3vis2f/ bQz27JeOHtec2Z5NJhMbN27k559/5rfffsPHx4dhw4bx0EMP2XyHZtWqVfz0009kZGQQFhbG TTfdxL333otarb5mjn/O5szv1aZqp0II4SinjMYWGBhIWFgYGo2GdevW8cMPPzQoP51Ox8CB A3nnnXfo0KED3bp148033+TOO+90Rrg12rBhA4MHDyYhIYH+/fuj0+mYOHGiVTp7yqvX6zl8 +DBZWVkYjUYMBgOFhYXmP0f99ttvZGVlMWLECIvp7u7uDBgwgL1795qnrVy5kpdeeonJkycT ExNDly5dmDNnDjfddBPl5eUOx2fv9j116hS9evVizZo19O7dG39/fx5++GHuv/9+i3QrV65k 9uzZ3H777Xh7e9O3b1+WLVvG4MGDLdatKArDhg1j8eLFxMXF0bt3bzIyMti+fbvD9VeTffv2 AXDdddeZpy1dupQNGzZYpMvPz+eTTz4xd1gqlz1z5gx5eXlAxWNqlfWn1+sdTmdvu4+IiMDH x4cjR47w0Ucf8eCDD/Lrr7/Srl07MjIyzB2dq1F/ttjbDuxNZ6+mKq+9+4e98dmz/zYGe/ZL R44bzm7POTk5PPDAA+Tl5dG/f39CQ0N5/vnneeSRR6zKMnXqVMaNG0dKSgqdOnXCYDDwySef mDsw18Lxz9mc/b3aVO1UCCEcFtbjFuWp5SaluKjQ/AcoiqIos2fPVry8vJSUlBSLv9TUVKUm kyZNUgYMGFDj/EpPPPGE0r59e5vznn76aSUsLEzJzMw0Tzty5IiiUqmUNWvW1Jl3dbNnz1Zc XFyURx55xOJv+vTpFun69eundOjQQSkpKbGIBVCWL19uM297yjt48GDlrrvucjjuqnbs2KEA ypYtW6zm3XPPPUr37t3Nn8eMGaNoNBrl3Llz5mkJCQkKoCxevLhB8dVW3ptvvlnp3r27Rf39 9NNPCmCx3caMGaMAyuHDh63KVzVdcnKyAihr1661K7a6zJ49W/Hx8VEef/xx5fHHH1fGjx+v tGvXTpk3b55Fuj59+iiTJ0+2mFYZi612kJSUpADKqlWral1/Xekcbffz589XAGX06NGKwWCw mu/s+qsqODhYeemll2zOs7cd2JuuqtqOG84u78mTJxVAWbdund3L1LZ/2Bufo/uvI/z9/ZVX X321xvXas19Wquu44ez2rCiKUl5ebvH5m2++UVQqlVJUVGQV83vvvVdjbI6Uo6qrefyzV2xs rNKtWzer7zcXFxdl9uzZ5nT1+V6tbX9rzHYqhPjjApQDu7cpBw8erNdf1f7MU8tNSliPW5Q6 7+wUFxcTExNj8de1a1dn9bVs+v777xk5ciSXL1/m2LFjHDt2DLVaTVRUFDt37qxXnoqioNVq Lf6qDq9ZXFzMgQMHuPfee/Hw8DBPr/qIUVMqLS0FMF/lrMrT09PiDgFAr169LAZk6NevH23b tmXLli2NEl95eTkbN27koYcesqi/8ePHEx0dbfWse5cuXSxekO7WrRtQ8RhIpcjISGJjY5k1 axa7d+92SpwmkwmtVkteXh5arZbS0lLOnj1LWVmZU/JviPq2+7///e82n61vjPqri73twNH2 Yo+mKK8jHInvau+/lezZL+3l7PYM4OLigslkIjU1lcTERDQaDYqiWMS3bt06PDw8LB5La2yN cfxzhF6vt/p+U6r9/kRjfK82VTsVQvyxmEwmziUns3XHTlavW8/qdevZumMn55KTMZlMdS5f 5zs7np6eJCQkWExrzJcWy8vLSU9PZ+nSpXz//fdW86u+W+EIDw8Pfvzxxxrn5+bmYjKZrEZd smcUpqvB398fqHiUo7rc3FwCAgIsptl68T08PJzLly83SnzZ2dkYDAZiY2Ot5sXGxlptt6io KIvPlS+fVW207u7u7Nq1i2eeeYYhQ4YwcOBAZs6cyfjx4+sdZ2hoKEuWLDF/PnLkCP379yck JIQXX3yx3vk2VEPafU0XHxqj/upibztwtL3YoynK6whH4rN3/33mmWf44osvLKZt376d3r17 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 3Fzmzp1Lq1at7O7spKen88Ybb6DX6xkxYkSL7+xkZGTw97//nVmzZlnNc7T+XF1diY+PJyoq qjFCrbeysjJOnTpFTk4Ohw4dIiQkhA4dOtChQ4cG5dtc272j7C1Hc92+9n7vT5kyhSlTpgDw wQcfsH//fpv5ffXVV5SUlBAUFIRWq0Wr1dK7d29eeuklmxdMncnLy4uEhAQOHTrE66+/3qjr EqI+rr17ui2Uu7u7zas1VR07doxZs2YxduxYevXqxYYNG65KbLt37yY5OZno6Gg0Gg25ubms Xr2atLQ07rrrrkY/kDpbRkYGJSUlmEwmp+SnVtf+6ltLq7+mEBwczMKFCwFQFIWlS5fy6aef Mnr0aPr27VuvPM+cOYPRaHRmmE1mzpw5xMfH13gi1NJ89tlnxMXFcf311zc4L7VazT//+U8n ROVckZGRvPjiiwDcdttt3HzzzTz00EMNzreltHt7y9Fcty/Y971fVV3fNaNGjeLJJ58EKs4X 3nzzTWbOnMmnn37a6I/wPf744zz88MMcPHiQ6667rlHXJYSjWkRnx2AwmL/sR48e3dThNJru 3buzZMkSgoODWbp06VVbr7e3N76+viQnJ2M0GsnIyCAwMJCoqCirL5ukpCROnTqFTqfDxcUF Hx8fYmJi6Ny5M+7u7uZ0er2eQ4cOkZKSgl6vx93dnfDwcPr27Wu+87FhwwZKS0sBCAwMZNCg QezevZuUlBQ0Gg2jR48mMDCQvLw8Tp48yeXLlykqKsLd3Z2QkBB69eplvnNjMBg4c+YMGRkZ aLVaoOIOT+W7M127drW4YmpPfFXT/vLLL2RmZuLp6Unnzp3p2rVrvepP1E2lUjFq1Cg+/fRT cnJyLOZlZWWxYsUKkpOT8fT05Prrr2f48OHmuz96vZ5Vq1aRnZ1NYmIi7u7uzJkzx7z8U089 Ve87RU1l+/btHD9+nFmzZv0hOjuVj3dVdgTqa//+/ezcudP8OTIykrvvvttmWp1Ox6pVqzh7 9izl5eVEREQwbNgwevToYU6zYsUKwsPD8fX1ZeXKleTn59OlSxcmTJhgdcxwphUrVhAVFUVg YCArV64kOzub6OhoJk6cSGhoKOB4uy8tLWXNmjUcPXoUg8FA7969GTdunMW7hsuWLePSpUtA Rd2NGzeORYsWcf78ecLDw5k2bRru7u4oisL+/fvZt28faWlpeHp60rNnT8aOHWvzBHzXrl3s 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 rZWhBrBWAAAAAElFTkSuQmCC --------------NRa7Qrb608tUY0duGKRawJDS Content-Type: image/png; name="tty_3.png" Content-Disposition: attachment; filename="tty_3.png" Content-Transfer-Encoding: base64 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 --------------NRa7Qrb608tUY0duGKRawJDS Content-Type: image/png; name="tty_2.png" Content-Disposition: attachment; filename="tty_2.png" Content-Transfer-Encoding: base64 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 2CFIwrXYszewEYmL1qzG9KxM4fPDH6nx1iOrgzv0tEwm86sjcLDLASPvEEfBcflw0UNRqVRB eRmbVCr1GhXNHwqFwmv4zf4Eq340dqRSaUAdwhUKxah3jqTg2rJlC+69915UVlYOOhR0MOl0 uiGPMZ4nHVqtNuRf8urPfq/X64N24d9f/8iB+LOuPYL1+w30uDHRBbK8/myPl19+GXPnzhXd EP8kDqF5y4mIiGgAGRkZ+N3vfof6+vrxrgrRFc9sNiMuLg4PP/wwW9dQSGLDSiIimnCWLFky 3lXwEhsbyz59dEXSarXYvHnzeFeDaEAMO0RERCP0wAMPjHcViIioHwOGnVB6LwAREREREVGg 2GeHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhE iWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhE iWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhE iWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhE iWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhE iWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhE iWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhE iWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhE iWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhE iWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhE iWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhEiWGHiIiIiIhE iWGHiIiIiIhEiWGHiIiIiIhESTbQH9asWTOW9SAiIiIioivY3r17gz5PPtkhIiIiIiJRYtgh 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 9tkhIiIiIiJRYtghIiIiIiJRYtghIiIiIiJRYtghIiIiIiJRYtghIiIiIqKQIgsL87usXDbw ANMMO0REREREFFJ0ep3fZbU67YB/Y9ghIiIiIqKQkjQl0f+yiQOXZdghIiIiIqKQMjU5GRF6 /ZDlIiL0SElOHvDvDDtERERERBRSwsKk+FHeAhgiIgYsExGhx48WLIBUOnCkGbg3DxERERER 0ThRKpX48aL/wfnaWtTV1aOzsxMAoNPpkJg4BSnJyYMGHYBhh4iIiIiIQpRUKkVqSgpSU1KG 9/+DWx0iIiIiIqLQwLBDRERERESixLBDRERERESixD47REREREQUctxuN5xO56BlwsLCIJFI Bvw7ww4REREREYUciUSC7u5uOHp6+v27TCaDRq0edB5sxkZERERERCFJo9FALvN9PuMJOoM9 1QEYdoiIiIiIKIRdHnj8DToAww4REREREYU4T+AJJOgA7LNDREREREQTgPr/++f4G3QAhh0i IiIiIpoAAgk5HmzGRkREREREosSwQ0REREREotRvMzarxTzW9SAiIiIiIgoqPtkhIiIiIiJR kgKA3dY53vUgIiIiIiIKCk++kQFAzZf78L+StZArNeNaKSIiIiIiopFwdFlQ8+U+AIAEAGKv Wuke1xoREREREREFUUv5fsn/AVGPo2lTiZbnAAAAAElFTkSuQmCC --------------NRa7Qrb608tUY0duGKRawJDS Content-Type: image/png; name="tty_1.png" Content-Disposition: attachment; filename="tty_1.png" Content-Transfer-Encoding: base64 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 d2vAIwY7giAIgiAIgiA0a2VlZZjMZsxms1sDnjonKGio0tJSAgIC8PPzc1iXk5ODTqezffb3 96ddu3aeToJHmc1mjh07RlJSEhqN48wQ9eW3JbrY8usOk8nEsWPHqKysJCUlhcjIyEaFE6pc SP2GOD5atouhfi+k400QhItH9UCnWvWAJyQ42OWkBvUOdrZv386WLVucrrvhhhtISEiwW1ZR UUFSUhLt27dnx44dDtu88847fPbZZxQVFWEymWjfvj3Hjh2rN4Ge4G4+asrNzaVr164sWrSI a6+91m6dq/x6g8lk4ttvv2XXrl2EhoYybtw4BgwY0CT79kV+PalmO1CpVMTExJCamkrbtm0b HfdHH33EI488gtFoRKVSoVarKSwsJCAgoEHhmpvTp0+zePHiOteHhYUxdepUr+zbV/1GcXEx X331FePHj6d169YuwzfX4yMnJ4eff/7ZYXlERAS33HKLD1J0YWqu9btw4ULatWvHsGHD7JbP nz+ffv360b9/f7fi89XxJgiCUJfaA51qcgc89Q52Vq5cyXPPPef0W50hQ4Y4DBL8/f0ZNmwY 7du3dxrfq6++yquvvgrAzJkzWb16dX279xh38yGXq/xWe+2118jIyOC9995r0H6qlZaWMmLE CA4dOsQ//vEPCgoKePnll3nttdd4/PHHGxyv3PTJzW9ztXLlSl566SU6deqExWLhzJkzFBcX c8stt7Bw4cIGT3dYWVnJo48+yoQJE/j0008JCgri7NmzDgMYueGao1OnTvH222/bPqenp6PV am13pZKSkrw22PFVv5Gbm8uDDz5Ihw4dZA12muvxUVFRwdatW8nJyWHt2rW0atWKPn360Lt3 70bF66l+zdcu9P7vueee49prr3UY7Dz66KM8+eSTbg92fHW8CYIgOCNJEgEBAY26VnL5GFtw cLDsb3VUKhVLly6VHbYpuZMPueTmd+fOnZidjEjdNWfOHNLS0ti7d6/tbsSbb77J7NmzmTBh Ah07dmxQvHLT5079NleJiYns378fqDqA/u///o8nnniCqVOnMnLkyAbFmZOTQ3l5ORMnTiQo KAiA2NjYBodrjoYPH253/ERHRzNjxgxefvnlJk1HU/cb7miux0e7du1YuHAhAOHh4UybNo0X Xnih0fF6ql/ztYup/3NXcz7eBEG4OCgUCtTqxr1145F3dlavXs2vv/5q+9y2bVsee+yxRsVZ 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 /XGsYtPJTaMCsm1auL0CqhrleadDkkkNh1GDygY/aj2dH06RbNLAblSjrN4Hdzvzq2dYNFAB omfoMmpVyLRoUdngR5237TyKWa9YUvMXz8Rsl1jVZ7GSTGrYDRpUNPjDXrbWWWLqVTTEar1i xXP+NCog06qFPyCgzO2X/ILDaIv3/Ikhd/tn1auRYtbgeAST4rRHzva+RVf3M2dK/uK5PYiG jsobjf7IYVTDYVTjqMvXbpthN6iRaFKjyOXr8tnO5K5XdoMadd7AGdk+yu3bTeugMljwwcpV kv7dZZdMQ98+vUN/37fajLfnTxN3Z+ecHCMOOpvxaQcnfGLTyc0vRD6bTXucjQE4G+VrwKoa /R0GYqUSO9Emn9DhQ7xi1iuW1PzFMzHbJVb1WSy562gLMfUqGmK1XrHiOX9+oe0ZjOJFvOdP DLnbvzpvQPaTZDnb+xZd3c9IFav8xXN7EA0dlTca/VFNU6DDZ/dcngBcMlyQjoTc9SpW5fgl EBXsLNtbj/e+r0dHwabYdERnAtZnIiIiojObqGDnULW4qxdi0xGdCVifiYiIiM5ssZ9SiIiI iIiIKAoY7BARERERkSIx2CEiIiIiIkVisENERERERIrEYIeIiIiIiBSJwQ4RERERESkSgx0i IiIiIlIkBjtERERERKRIDHaIiIiIiEiRGOwQEREREZEiMdghIiIiIiJFYrBDRERERESKxGCH iIiIiIgUicEOEREREREpEoMdIiIiIiJSJAY7RERERESkSAx2iIiIiIhIkRjsEBERERGRIjHY ISIiIiIiRWKwQ0REREREisRgh4iIiIiIFInBDhERERERKRKDHSIiIiIiUiQGO0REREREpEja 9n4QBEHUAlQqlWyZISIiIiIikgvv7BARERERkSIx2CEiIiIiIkVisENERERERIrEYIeIiIiI iBSJwQ4RERERESkSgx0iIiIiIlIkBjtERERERKRIDHaIiIiIiEiRGOwQEREREZEiMdghIiIi IiJFYrBDRERERESKxGCHiIiIiIgUicEOEREREREpEoMdIiIiIiJSJAY7RERERESkSAx2iIiI iIhIkRjsEBERERGRIjHYISIiIiIiRWKwQ0REREREisRgh4iIiIiIFInBDhERERERKRKDHSIi IiIiUiRtez+oVKquzAcREREREZGseGeHiIiIiIgUicEOEREREREpEoMdIiIiIiJSJAY7RERE RESkSAx2iIiIiIhIkRjsEBERERGRIjHYISIiIiIiRWKwQ0REREREisRgh4iIiIiIFInBDhER ERERKRKDHSIiIiIiUiQGO0REREREpEgMdoiIiIiISJEY7BARERERkSIx2CEiIiIiIkVisENE RERERIrEYIeIiIiIiBSJwQ4RERERESkSgx0iIiIiIlIkBjtERERERKRIDHaIiIiIiEiRGOwQ EREREZEiMdghIiIiIiJFYrBDRERERESKxGCHiIiIiIgUicEOEREREREpEoMdIiIiIiJSJAY7 RERERESkSAx2iIiIiIhIkRjsEBERERGRIjHYISIiIiIiRWKwQ0REREREisRgh4iIiIiIFInB DhERERERKRKDHSIiIiIiUiQGO0REREREpEgMdoiIiIiISJEY7BARERERkSIx2CEiIiIiIkVi sENERERERIrEYIeIiIiIiBSJwQ4RERERESkSgx0iIiIiIlIkBjtERERERKRIDHaIiIiIiEiR GOwQEREREZEiMdghIiIiIiJFYrBDRERERESKxGCHiIiIiIgUicEOEREREREpEoMdIiIiIiJS JAY7RERERESkSAx2iIiIiIhIkRjsEBERERGRIjHYISIiIiIiRWKwQ0REREREisRgh4iIiIiI FInBDhERERERKRKDHSIiIiIiUiQGO0REREREpEgMdoiIiIiISJEY7BARERERkSIx2CEiIiIi IkVisENERERERIrEYIeIiIiIiBSJwQ4RERERESkSgx0iIiIiIlIkBjtERERERKRIDHaIiIiI iEiRGOwQEREREZEiMdghIiIiIiJFYrBDRERERESKxGCHiIiIiIgUicEOEREREREpEoMdIiIi IiJSJAY7RERERESkSAx2iIiIiIhIkRjsEBERERGRIjHYISIiIiIiRWKwQ0REREREisRgh4iI iIiIFInBDhERERERKRKDHSIiIiIiUiQGO0REREREpEgMdoiIiIiISJEY7BARERERkSIx2CEi IiIiIkVisENERERERIrEYIeIiIiIiBSJwQ4RERERESkSgx0iIiIiIlIkBjtERERERKRIDHaI iIiIiEiRGOwQEREREZEiMdghIiIiIiJFYrBDRERERESKxGCHiIiIiIgUicEOEREREREpEoMd IiIiIiJSJAY7RERERESkSAx2iIiIiIhIkRjsEBERERGRIjHYISIiIiIiRWKwQ0REREREisRg h4iIiIiIFInBDhERERERKRKDHSIiIiIiUiQGO0REREREpEgMdoiIiIiISJEY7BARERERkSIx 2CEiIiIiIkVisENERERERIrEYIeIiIiIiBSJwQ4RERERESkSgx0iIiIiIlIkBjtERERERKRI DHaIiIiIiEiRGOwQEREREZEiMdghIiIiIiJFYrBDRERERESKxGCHiIiIiIgUicEOEREREREp EoMdIiIiIiJSJAY7RERERESkSAx2iIiIiIhIkRjsEBERERGRIjHYISIiIiIiRWKwQ0RERERE isRgh4iIiIiIFInBDhERERERKRKDHSIiIiIiUiQGO0REREREpEgMdoiIiIiISJEY7BARERER kSIx2CEiIiIiIkVisENERERERIrEYIeIiIiIiBRJ294PX3zxRVfmg4iIiIiIfsHGjRsn+zJ5 Z4eIiIiIiBSJwQ4RERERESkSgx0iIiIiIlIkBjtERERERKRI7U5QQNSWpqYmaDQa6HS6WGcl pgKBAFwuFwDAZrNBo9GI+nfcftFTVVUFt9sd+lun0yEzMzPidPTL0djYCJ1OB62WXaISncn7 l+0VUefJcuSvXr0amZmZKCwsDPt+1apVKCgoQJ8+faKSTin279+PvXv3tvnbeeedh+Tk5Fbf b968GU6nE1OmTIl29kIaGxuxePFidO/eHVOnTu2y9cYjt9uNt956CwBw5ZVXIi0trcN/w+3X OT6fD++++y569uyJkSNHtvr9vffew8cff4z6+nr4fD5kZWXhzTffjDhdrNTX12PNmjUYM2aM qHrVYsOGDTh8+DAuu+wyWK3WKOYwPuzYsQP19fU499xzw76Xuv08Hg+uuuoqZGVlYdGiRdHK rmRVVVVYt25dq++tVisuvPDCGOTozBSv+1dsvy+2vVq9ejXcbjdUKhWsVit69eqF7t27R7MI IQ0NDfjkk08wfvx42O32LlknkRSyBDv/+te/cO6557YKTv7+97/jV7/6VSg4kTudUmzZsgWL Fy9u82rNgAEDwoKdzZs3Y/Hixdi/fz8SExO7JNgJBAJQL5nePwAAIABJREFUq9UwmUwAALPZ DADw+/2i72jEky+++AI//fQTZsyYAYfDEfX1KW37xcq2bduwaNGidjv7W2+9FbfeeisA4Nln n8XWrVvbXI7YdLHidDrx/PPPIzs7W3SwU1JSgkcffRQejwfjx49XfLBTWlqKP/3pT3jggQda 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 a95L5fq0rKuP8FUZsSp6NCfkuoSyXLPCWb9oicR2CcWLu+r1kwVpesRp022FCWpsMwZ0N7e8 vkN3/a5S+akx+v7sZP3hrhH62Se1enL9mTDW+vJR0eBTbUunxqfH6KbRbv3TphpNyozVgjy3 8lKc+qw8shfN0XiCsedUq6aPjDNVdvXOen1w0dif4l7ayL+dk6LScx2aOixOt4z16L2joU1M EOn6DbZQ2r++joPmL/vpuy8ayxXTz1AcarsWruN0IO3pYHyBZX/qF67jPhKG+hPScJ+PvD1c 13nj7DrZx4QMya7IhqGhftyjd6av7BNi7T0Gi/6WG6j6tk4dqm7TvLzgx4YjEhwanxbTr0fQ RafblBHvUGF67IDrZ0j6tKzV1He+3DjarVf31gdOpJI0dVjvFwltPqPXgYmhLNesUOs3FPV3 u4TreH69qF5xDpuWjovX1yd79VpRfVi6VR05265H1lXp1zvP6e4BTuBwqeMqksK13INn2rRw rEedhrStrEXvFzfrL3LcGuF1DuiuWrS2S1/ePNiocakxWjKu72N696lWvXWwMejfhTOk+T0x K1kLx3q05JVy/fzTWr38tWH9nmwmEvWLhnC2f9XNPlU2+DRzVHB3H7Oh8GKRaO/9Bvs8E6pw 1i+U436otgeREsr6hut8NG1YXNANgVS3XfkpMdp76nw7Xt/aqTR38D6aPiKy1yVD4bhH/5j+ i935cLaKn8hVD5Pe9KtcOPzLR7W66yqvHp+VrHSPQxPSY/Xb24arpqWzX188+tq+Bp1t9un1 O4frlrEeZSU6NTkzVo/MSAoq57B1feO1/5HluNQYJfZwQfzDD87qhhy3/n1JRqDMxIxY/c31 yZqYcT5Qnazr0Lw8j3KTnUr3OPS1CfH60fy0XutZdLpNN+a4NTfXLU+MTdmJzqDlm12uWaHW L5y8sXaNSY5RsssuT4xdY1Nienz6lvBluXSPQ3EOm/JTu5frz3YJ1/Fc29Kp//6iUU9cl6Sb c916sZepZs2s74yRcXromkSNTuoaozIxI1bXZ7t0sLr7Bb3Z7Sf1fVyFIhrLPXCmTfPGeLTp RLN8hvTn4mZdPTxOw+Id3cJOtLZLOL22r16bS5r1ym3D9Z3rkjVjZJxmZ7v06MwkTRkW+t/5 NSPi9JMFaXpy/RntPd2mv9tYrbL6Dr1y23D158FDuOsXLeFu/57fUad7JiboG1O9SnHZdV2W S0/dmNrvzwt3e+8XrvOM2fNltOoX6nEfrXYynMLZ/oVyPjIrIdauZ5dnKjvRqZwkp55bnimf Ib20+/yXK2+vaNXNuW7dMtajxDi75uS49IM5Kf1eplmROu7T3A6d/G6ufrE4o9cy6D9T3dji Y2zKS4nRy3vqLznAymy5cFm965wSYm166sZU/XxRuqSuO7oLXi7TmabQB35XNfm04OVy/XJp hv60cmTg9T2nWgNz8DtsUttT+UGN4LaHsiVJP9lSo7/dcP7LT9cfa9LyNeX6l/npemxmV2Ay DOnzitagLkxPrj+j3981XMVP5AaWt3JtpTY/mNVjPf9x01lNGRarjfePkt3W9Zk3rC7VlpMt IS3XrFDrFy7r7h2hpeOCJ5o48vhoSdKLu+v1wFunei13+Nvdy4W6XcJ9PL+4q17r7h2hg2fa gu4S+5ldX0n6+xtT9dzy81PfflTSokfWBX/DdSifJ/V9XJkVreUeqGrTg9MS9bNPuvrbHzjT pnOtnRoW79DBM+dPvNGqX7h1GtLSVyr0kwVp+uevpMkd09UonWnyafma0L6k0Btr1+t3DNd7 R5sCE7S0+Qx9/feV2vFwjv7+hlT9301no1a/aAp3+/cPH9YoM96p52/NlNNuU21Lp/7q7dN6 dln/pvIPd3vvF47zTCjny2jUrz/HfbTayXCJRPtn5nwUin/9uEbZSU4d/06u7LaubnK3v1ER NEb7xx/VaMbIuMC12ulGn77136e1up9fiWFWpI77WIeU4XFoRATHD1/JbJlTlhj3/HCdfnzL +f6pnvjgx483jnbrwwdG6ZaXy7X+WO/9WM2WCzeHTRqV6FRjm6Hq5vB8p0Oq265kl0Nnmnw6 1zrw7hRpboeSXHadauhQYy/zqw9PcMgmmZ6hy+W0aUSCU2eafKpv67mOZpZrVqj1G8rMbJdo Hc9mpbrtSopzqKrJF/RlawNl5riKhGgt16yhXD+HTRrhdcrXaehUoy/kLziMtKFePzPC3f55 Y+1K9zhU1o9JcXoTzvbeb7DPM5dL/YZyexAJfa1vJM5HyS67kl12ldR19NpmJMXZleK262Rd x6DPdhbu4yopzq76ts7Lsn0Mt+1bN8kWl6C33l4X0u+tWL5ME8YXBH7+wXsevfb0MnNPdq7P cunI2XZt6OOCz2y5cPMZ/Z/Npjdnmzt1tjl8DVh1s6/PIFYZ4km0pcPocxCvmeWaFWr9hjIz 2yVax7NZ4T5G/cwcV5EQreWaNZTr5zN6nsFoqBjq9TMj3O1ffVtn2C+Sw9ne+w32eSZU0arf UG4PIqGv9Y3E+ai2pbPPsXt1rZ2qC8MN6f4I93EVrfW4EpgKO7/f36A/HGhQX2HTbDngcsDx DAAAcHkzFXaO1pi7e2G2HHA54HgGAAC4vEV/SiEAAAAAiADCDgAAAABLIuwAAAAAsCTCDgAA AABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAA sCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABL IuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTC DgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwA AAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAA AABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAA sCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABL IuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTC DgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwA AAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAA AABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAA sCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABL IuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTC DgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwA AAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAA AABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAA sCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABL IuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTC DgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwA AAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAA AABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAA sCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABL IuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTC DgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwA AAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAAAABLIuwAAAAAsCTCDgAA AABLIuwAAAAAsCRnb28sX758MOsBAAAA4Ar29ttvh/0zebIDAAAAwJIIOwAAAAAsibADAAAA wJIIOwAAAAAsqdcJCoCL2Ww2ud1u+Xw+tXgEVHcAABeySURBVLa2Rrs6UWW325WamipJqq2t VUdHR5+/w/aLrISEBLlcrsDPPp9PNTU1/S6HK0dsbKw6OjrU2dkZ7aogAi7n/Ut7BQxcWMLO 1KlTVVNTo5KSkqDXp0+froqKCpWXl0eknFWMHDlSo0aN6vG9AwcOqKGhodvr+fn58nq92rlz Z6SrF+DxePT9739fhw4d0muvvTZoyx2KEhMT9dhjj0mSfvWrX5k6Jtl+A2O323X99dfr9OnT Onz4cLf3r7vuOk2bNk1ut1t2u101NTV65pln+l0uWlwulyZPnqwvvvhCdXV1pn9vwoQJyszM 1Geffabm5uYI1nBoyM3Nlcvl0sGDB4NeD3X7OZ1Ofe9739PZs2f13HPPRaq6IUtISFBhYWG3 11tbW7Vnz54o1OjyNFT3r9nzvtn2aurUqYqNjZXNZlNTU5NOnTqlqqqqiK6DX1xcnKZMmaKi oiI1NTUNyjKBUIQl7MydO1eHDh3qFk5uueUWbdmyJXAhGO5yVpGfn6+5c+eqtra223tlZWVB YWfcuHGaO3euRo4cqcbGxkEJOw6HQz6fT01NTTIMQ42NjZK6TiI+n0+GYUS8DuF06623qqCg QKtXr1Z1dXXEl2e17RcteXl5mj9/vmpqanoMOxs2bNCGDRskSUuXLtXYsWN7/Byz5aIlISFB S5YsUU1Njemwk5KSottvv11Op1P79u2zfNhJTk7W17/+da1du7bbe6FuP5/Pp5KSEp09ezYS Ve23mJgYZWVlyev1Kjc3V+fOndOpU6dUWVk5oM+dPXu2kpOT9c4774SpptFhdj2G6v41e943 217NnTtXcXFxamhokMfjUXx8vIqLi7V27doeb5iGU2trq8aNG6cxY8bojTfeiOiygP6gG9sQ 0d7e3ufd5ezsbN1zzz3auXOnjh8/rqlTpw5K3ebPn6/x48fr2LFj8vl8yszM1L333qvc3Fw9 //zzOn369KDUI1yys7MVHx8vh8MRls/rK6xYbftFS2FhoUpLS5WVlaXhw4df8qLPbHeVy7Fb S08WL16sEydODLngFinz5s1TRUWFDh06NODPMgxDr776ahhqFV41NTV68803JUk/+MEPtHPn Tn344YcD/twRI0aEre2LJrPrMVT3r2TuvH+hvtqrPXv26N1335XUdZ677bbbtHLlSj333HMR b+vWr1+vRx99VHl5eTp27FhElwWEyhJhx+FwaPHixSopKbH04/2TJ0/qZz/7mRoaGjR79uxB W259fb1qa2s1YcIEOZ1OZWVlqaqqSsePH1dMTExQ2YkTJ+qaa65RSkqKOjo6VFdXp2PHjmnn zp1qaWkJlHO73Zo9e7by8vLk8XjU1NSk8vJybdq0SfX19ZKkO++8M9BXuaqqShs3btSCBQuU l5en9vZ2rV27VlVVVcrIyNC0adM0atQoeb1etbS0qKKiQlu3bg08uYmJidHkyZOVnZ2ttLQ0 SV1fnNvW1iZJ2r59u/bv3x9S/fxcLpe+9rWvKSsrS01NTdq1a5e2b9/er+2HntlsNo0fP14f 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 /uwP//k6MTGRsIMhpc+ws2jRIl199dVBr61evdr0hZrZmabCXe5iZtcj3OXM6ujo0K9+9aug 14bSLF1lZWUqKyuT1PVovKfQsWXLlkCXwokTJ2rixImqrq7WW2+9pdLS0kC5hIQESQr5SdyF Xc0uNG3aNC1evFixsbGSusKP/4TRnwvAUOt34Ww6/ruUFzOz/dAz/1isKVOmqKCgQFLXzYHC wkJt2rQpyrWLniVLlmjv3r1Bf1tXApfLNagza3V0dOiFF17QokWL9OCDD6qsrEwfffRRj5Mj 9DTtrn92rEi6uAeA/ylKqO2f3W5XQkJCoP2+mNfr7fV3z5w50+PrTqdTCxcu1JQpUyR1bQ// ue3C+nm9XtXX18vn84VU54HweDyy2+09hue6urpu6xuu7ezX3t4e8dnL4uPjA7MzhrK+/dkf /q60vXUtNCta12uUG1rlwqnPsLNr1y4dP3486LWLp0psb2+X2+0O/mCnU7GxsUEXf+EuFwoz 6xGJcmZ1dnZe9rNy+bt9bdmyRTNmzNA111yjtLQ0feMb39DPf/7zwHgj/x2li/dxX3ra906n U8uWLZPD4dDGjRu1bds2tbW16fbbb9ekSZP6tR6h1s/MF4qi/6666iqdO3dOe/fuDbxWWVmp 6dOnKyUl5Yr8gr3hw4crNzdXXq9XDz30kKTzFxh33323KisrBzyAf6hqb2/vdjc80urr6/W7 3/1Oqampmj17tu6++25t3bq12xi+nuoVFxcX8QHs4RofYRiGOjs79cEHH2jz5s0h/W5vF8UL FixQQUGBXnrppcANn4yMDD366KPdft9/w2qw+Lsl93RxHhcX1+2cfrmNQ/FPiLN7925Joa1v f/aH//gfaBfTaF2vUW5olQunPsNOZWVln2nr7NmzQX1CJQV+vvBuT7jLhcLMekSi3JUkPz9f p06dUl1dnTZu3Ki9e/fqr//6r+V0OpWZmRkIO5WVlcrMzNTkyZP16aefBu7S5ubm6uTJkyHd SUpJSQlMP1pUVKS2tja5XC5lZ2f3WP7C7x8ZPnx4jwEznPXDwBUWFqqoqCho2l2Hw6FJkybp qquu0pYtW6JYu+ior6/Xn/70p6DXkpOTlZaWpkOHDl32N04upb6+Xunp6VFZ9tmzZ7Vu3TpJ XROyXBx2MjIy5HQ6g26YpKSkaN++fYNe1974fL5eZ4E0DENlZWUaO3ZsyGGnN7m5udq3b18g 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 ZRH12roAAAAASUVORK5CYII= --------------NRa7Qrb608tUY0duGKRawJDS--
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 15:55:10 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 11:55:10 2024 Received: from localhost ([127.0.0.1]:37914 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1smEpC-0003uP-3x for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 11:55:10 -0400 Received: from eggs.gnu.org ([209.51.188.92]:56300) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1smEXu-0002f6-1o for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 11:37:18 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1smE7t-0001e5-9O; Thu, 05 Sep 2024 11:10:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=m6hk0XsXCEn3h313oY9TK0HV9QtSOseY/mNKP0+0FKQ=; b=Y7pgVzebbUL0 5JJXx6LJqlC76B+6daX5Me2SaLlOEd9zeungUBDSsrhpUIZDN37d5XASN36x6Qt9TTXc9X9Dk6uEY cPlIBpZoJ6cSA7b6onwo30KZ0Q0hCEWoo8z/PYXPmWsOzVlxO1Vv2gnTIMn9JAzV7Z5vVaM8uVpkU jBL1d/xnjntwk7p6ww4bDLFOnD5aDmTQPFuybFfsQ6+QtBOOAW76beC2HI9AftC9zITXtX/z0r8ko CMUodkH8dTTbEl35dnwrG0GVWy1cQBirwDeEdaAK8nINAI7STUNUeD/ozKISMWAWlKZK/tAQH5QWm 1SeIijGFW2BFkzsO5BLhxA==; Date: Thu, 05 Sep 2024 18:10:20 +0300 Message-Id: <86seue2l2b.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: martin rudalics <rudalics@HIDDEN> In-Reply-To: <e8b03cd0-9964-49e7-a08e-1f3a8bd92828@HIDDEN> (message from martin rudalics on Thu, 5 Sep 2024 16:45:52 +0200) Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <86cyli4fxj.fsf@HIDDEN> <e8b03cd0-9964-49e7-a08e-1f3a8bd92828@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: -3.3 (---) > Date: Thu, 5 Sep 2024 16:45:52 +0200 > Cc: n142857@HIDDEN, 73022 <at> debbugs.gnu.org > From: martin rudalics <rudalics@HIDDEN> > > >> If so, then this violation might be caused by the fact that we > >> (1) did resize windows according to the new sizes but (2) did not update > >> the frame sizes accordingly. > > > > Can you elaborate on how this could be possible? I always thought we > > first allocate the frame matrices, and then the window matrices (by > > suballocating them from the frame matrices). Am I mistaken? > > But if glyph_row_slice_p (window_row, frame_row) fails, something else > must have invalidated that. I made that change here more than three > years ago and I can neither remember whether an assertion violation made > me do it or a crash nor why I did chose a term like "congruent" in the > comment. I agree with the theory that the frame matrices were reallocated whereas the window matrices weren't, or the other way around. I just don't understand how it could have happened, given the code we have. I noticed that causing this assertion to fail is not very easy. For example, if I drag the terminal emulator window one line at a time, I can never cause it, even if I get to frame sizes that are much smaller than the minimum we need for 2 windows. Somehow, I need to drag the frame so it resizes by several lines and/or columns. Not sure why. > One possibility I cannot exclude is that adjust_frame_size tries to > resize windows, that step (silently) fails in window_resize_check, the > old values stay in place but the new frame sizes are applied by > adjust_frame_size. But precisely this scenario cannot be healed by my > patch so it's unlikely that it was the cause for the problem I > experienced back then. What is supposed to happen, with the current code, when the frame is resized to less than the minimum dimensions we allow? Shouldn't we disallow/refuse such resizes? And if we don't refuse, what will happen to the windows? E.g., if the frame is not tall enough to show the menu bar, the two mode lines, the mini-window, and at least one line for each of the two windows, what should I expect to see on display? > > Moving code in adjust_frame_glyphs could affect the assertion if the > > assertion was being hit while adjust_frame_glyphs is still being > > executed. But that is not the case, so I don't understand how moving > > some code in adjust_frame_glyphs without changing it could affect the > > assertion violation. I'm probably missing something. > > I'm still too dense to understand what "Moving code" and "moving some > code" could mean in this context. If you have enough patience left, > please elaborate. Taking some code and moving it to another place in the same function can only affect what's going on in that function and the functions it calls. For example, if you had foo (); bar (); baz (); and then you move the call to baz to be before the call to bar, like this: foo (); baz (); bar (); then I can understand why bar and its subroutines are affected. But once we are done with this code, all the 3 calls have been made, and the order in which they were made can hardly matter for the code which runs after that, right? So if the crash was inside the call to bar, then I could understand how moving the call to baz before it could affect the crash. But the backtrace from the assertion violation didn't show adjust_frame_glyphs anywhere on the call-stack, so I don't understand how simply rearranging code inside adjust_frame_glyphs could change something _outside_ it.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 15:10:11 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 11:10:11 2024 Received: from localhost ([127.0.0.1]:37859 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1smE7e-0000aC-4W for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 11:10:11 -0400 Received: from eggs.gnu.org ([209.51.188.92]:50444) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1smDxU-0008EA-2b for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 10:59:40 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1smDwK-0007mo-Qs; Thu, 05 Sep 2024 10:58:28 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=LZ2MDn+b7LZd46v78LCYgGEUFCr6v7CQexPvALMnZtM=; b=k8QpW0U2XmPw qMAoTKTAGGp2mjgu1am73slNu3oMt8mPvGmgLItLrVAyp8jZRpd7IrzYSh0T+E84EhmXORDxNztU0 iszfJu8XP/FO97Gu+rrU8UAi6FeevqGogJLue5xI8g+6XX4avFy1yEeil8bY6XpuIyPzZ9kC00Oh4 IfXmEWVX2Gi7+bBxkvgKSpdAv92k7AQYeVFF4fEx85+t9vFgXOG27Y7b4A8fKbmjF4oTntNv3HrrT D3gy0fHp8fhtV7Ns2ngqlPd6kB4XY4NzVvRw4e/boveC9oFGlYcUlpfqJNc9dG6K63YkG6MBkzs/6 QJ5LwVw+1SA32X0ZtkAn/Q==; Date: Thu, 05 Sep 2024 17:58:25 +0300 Message-Id: <86tteu2lm6.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: martin rudalics <rudalics@HIDDEN> In-Reply-To: <7f8ab4d2-fc73-4364-8c6d-5219ced46434@HIDDEN> (message from martin rudalics on Thu, 5 Sep 2024 16:46:15 +0200) Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <86ed5z5z8m.fsf@HIDDEN> <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> <86bk124fw1.fsf@HIDDEN> <7f8ab4d2-fc73-4364-8c6d-5219ced46434@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: -3.3 (---) > Date: Thu, 5 Sep 2024 16:46:15 +0200 > Cc: n142857@HIDDEN, 73022 <at> debbugs.gnu.org > From: martin rudalics <rudalics@HIDDEN> > > Anyway, I pulled master again today, built with gtk3 and without-x and > both exhibit the same behavior with > > MagicWrap (tty) == true > curY (tty) == 4 > FrameRows (tty) == 5 > > in cmcheckmagic after shrinking the TTY window with the mouse to less > than two lines, slowly re-expanding it, at the time the split windows > would have to be redisplayed because the frame apparently became large > enough again. Please describe the recipe in more detail, starting from "emacs -Q -nw".
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 14:55:13 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 10:55:13 2024 Received: from localhost ([127.0.0.1]:37829 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1smDtA-0007sb-D7 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 10:55:12 -0400 Received: from mout.gmx.net ([212.227.15.19]:45553) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1smDqi-0007lm-94 for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 10:52:41 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1725547889; x=1726152689; i=rudalics@HIDDEN; bh=Mfil1wN4izGCG8ano/vBq5mfvFjj3gWzUbh8ZswiM94=; 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=fy47RApIpFDG+AxJCZ7NHVXD7WNxStgiFuuIBm3N/DXDDkM6yEs/HZCDJ/ltxxO9 GmMhHtUOPSPQA5cHFznwA3MZSQUEWLU51o+w23ZiLoHNAr1fdXknaLYe8FcXKhUIH D0Xoa7PEwkWXcCsiLvafopbVON1qntcsu9QNz04LM5XB6nyszfbYDy9SNW7S32iyI DcbIzypdSEJFe+rMu0nG7ok33mWXe3o7FeTuVXLHdTpnD8W4CgbstpBXLzvW01spD qKQJfM72Z4t6GmNBJtxJhXTmLWCWjIpYhfgXmtCjRv/9HEkmRuXU9YhrvEjCUoqIP aBP4woErg5OSZgrFYw== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.159]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MDhhN-1swQcH2UiN-003xwW; Thu, 05 Sep 2024 16:46:18 +0200 Message-ID: <7f8ab4d2-fc73-4364-8c6d-5219ced46434@HIDDEN> Date: Thu, 5 Sep 2024 16:46:15 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Eli Zaretskii <eliz@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <86ed5z5z8m.fsf@HIDDEN> <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> <86bk124fw1.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86bk124fw1.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:ETCgHor65iQrWWosXqFJGtMQ48rFyxQEQb1NTxv9Z/YTzfotdJH w96VeL87WAQyMhYM1bzb4C6YjfuqGYKA1qOPbc95mjch+HTpNQmiRtX07RZtZ3TagLW3xQ1 CJSlkD/MLhWTsKFwx27pIQgMVfK+QIaNFNTvT/BmDfT9RAYVTER4Dfz17O1O9LuzutCupx4 uZZ7Js8V6M/dRbJ9De8QQ== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:I2a475kPkuc=;boKS5UTbHoUyYjWIU0DQCgpj879 Thkoq2l6OxDZjCxV6EgXTB4IrWPcP/VVT8JC6M57GkfLc7zp9UHcSsYPnAEVqbMEoTlVu5oJ6 6P0JEydMg5UpFABhwjVKyL9y3j8ymW8IW3oGkq5QaPECb0EgdVPyZSqQjv3lptftWhGmsLMj7 MWYzpbqqHw7BRQG9KKSNVDpz6BxkccOUoRWHvR4sGJ06FEDS2d4KC+CYr1ChzyxElgnlKJuHz kkkkg3XClTbo9P1CDuWSzVH+siYaklESPj6sz0uhIbOiumdPi9QWUmoSCQbW1fDLdSxzFnJRU b0pWKO6qWOPtd/XWl5GvcedH3wpM3qQU/DHfilbQihgd7nSmYb/4FWktfh6gSaeSG5+6JNvEA aaVLBlLs65UZsJ16ghuwUbOIH0J80008LfR2khOA3TjxbuJ/b6GgnLPM4TY9VmNoRVR51tD5e cW0IwvAtYHT8IigNNEBUc/yJMl6moq9CgqvOwg/rUZzI8gevQcmcC+qS9PO9Yt3jxNp9wkUTM cV7FOXDr6xfjrw90+octGUdSPDe8FmqySe/uX5oO2lJF1n/FokusDC2Ymv3FRtzLVzJLuYopi pv2vDnhBbXG7CLZCpTs5LJJajM1DSPE8WSODw6MUwLUzwnRPh+lh1x83+aUR5lDtTfK83I0Ik xD8mrejJ+1EyIUY7YX9UXynvvB+U/7Z0mdIVttwjpuMz5kjzxBxUKNffQgDBIlVWAnWXlnH17 dgaTsKNfOFdpuklOf2BUFMuOw80fVWfeGCNoo7n3pqubq48B2eFVA06tqnWlp5XvgjGNPRBNk fiBJ9rV/xeaANTpBe5ii4ALg== 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: > Are you running the latest codebase? The assertions in cmcheckmagic > are supposed to be fixed there. I suppose you mean the changes related to Bug#71289. They should be here with the last one as commit 6fbb699bee2f54d65fbe6074735d42bbc0868c2c Author: Eli Zaretskii Date: Wed Jun 5 19:32:17 2024 +0300 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 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.159 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 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.15.19 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_MSPIKE_WL Mailspike good senders X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: > Are you running the latest codebase? The assertions in cmcheckmagic > are supposed to be fixed there. I suppose you mean the changes related to Bug#71289. They should be here with the last one as commit 6fbb699bee2f54d65fbe6074735d42bbc0868c2c Author: Eli Zaretskii Date: Wed Jun 5 19:32:17 2024 +0300 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 [212.95.5.159 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) 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.15.19 listed in wl.mailspike.net] 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager > Are you running the latest codebase? The assertions in cmcheckmagic > are supposed to be fixed there. I suppose you mean the changes related to Bug#71289. They should be here with the last one as commit 6fbb699bee2f54d65fbe6074735d42bbc0868c2c Author: Eli Zaretskii <eliz@HIDDEN> Date: Wed Jun 5 19:32:17 2024 +0300 ; Fix last change. Anyway, I pulled master again today, built with gtk3 and without-x and both exhibit the same behavior with MagicWrap (tty) == true curY (tty) == 4 FrameRows (tty) == 5 in cmcheckmagic after shrinking the TTY window with the mouse to less than two lines, slowly re-expanding it, at the time the split windows would have to be redisplayed because the frame apparently became large enough again. martin
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 14:47:08 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 10:47:08 2024 Received: from localhost ([127.0.0.1]:37811 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1smDlL-0007M7-R3 for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 10:47:08 -0400 Received: from mout.gmx.net ([212.227.15.18]:50713) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1smDlI-0007LW-Ri for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 10:47:05 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1725547553; x=1726152353; i=rudalics@HIDDEN; bh=GabLMqOA+45m88Xa4yH4PnwSTcqg7HgukKsmuYX905o=; 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=dMAr7tHs9VSV0pTNysq9WtTb8P0VZbU9QDWuL/uCOHcCqTPP5hwUO8hhTgJAAHi7 nXkO8MD5wu0nGImbO1i/lsJiJEOPFWxoG9wrJ9dKP9HgQjCGRQtu+lYOeKPXa6PkW 1ViEFxi0oP0Ld7chkqKFjWcCA8lQucVvE622LHm2d45cNlv/2eZzCxNeK115PByyY DIYcmv5Nkb0KdE6tqLVtmoVv6zR8mMglqcWCRbsK3R3BmHrncv4ZUceYMzWHq5SM+ fyhyKmVTLYHTU/lzIpwWOyjxp8sSzWde1Qd1mLjwc892jaChlUEBfQjmRGrfwPO4r grMf4DIUImBVsQm61g== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.159]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1Md6Qr-1sDAF01PD1-00qjCR; Thu, 05 Sep 2024 16:45:53 +0200 Message-ID: <e8b03cd0-9964-49e7-a08e-1f3a8bd92828@HIDDEN> Date: Thu, 5 Sep 2024 16:45:52 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Eli Zaretskii <eliz@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> <86cyli4fxj.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86cyli4fxj.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:XeLC3cNRMda3sZQFuLtO//bABoCChuYC7imZtqkfcQPdEOzvJ10 7cz50nW9yO03SC2s13GwC8ex32RwFQc29r/TFOG4dAjRTGrdiTlytLKFJo8L9hIcBbqf2mz lUEd6CuHiCqwC7+0gVqdt2l9beZ/1m0Jcz1KvnD8h+sIK3XGMm8kfBJNxZ0AQQVjUsmWUoM oLGyV7V1yss9SIfkUERMw== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:AxfJiG7RWmQ=;2hQCGbH9dp/Jx+WOFlOf1lWSVQd bcvurSBtOOSg9IcA39md6zk+b8EImJ0IwMaYgvBtcsIfjmu9KI5bgmJVlOGzu7taOQvOb7bus w+ykVpjmOBgjdpN4niHLqpzjeSr2Mm/9art+fNCX7Fw4qgu7JHoa7tjeFznXQZvXj3eoXJJwe YlPd2wzIzrS2ZAxwTmhG+CwBfnjKO1ptF0v01DoRDh4xtjgr4pV/K79A56slsHKMNJE82q6TH XfNHbWKgNA2+IUY+xlGHobM2Pi9E7vesJLQZdWZO+zxupjiWUIbWem5OjQ1DZzHE+Dm/EoA9a 6tetgMxiKsnC7nhnRPOPRUQXzQ+3vfygdYJbE7R4tdeYQIppx4L0H8hNf7rPGESN907DCjf6U ik7sPjPHBtT36dzKOzj6ehQ8aXL/3aEgkmZFs8bAMwgQTeY+3htdifW8TLwsjOuasGswtVsbP l5gi9LIr4wjPDw6e8XpmlC6O91r3/qmUtk+U8IOxqWV5hG6XHH4pFSeheqvRZHB7XHOXDQ39O iHlf6bVZZm/uosb3oZo58fkBDgYwjpboCYZAJ9WrPJvM0WfkihBZiaJZKEn3lHTswybpsV/xz rKMkgPiiRIo5oyesXUq7VgQwbGmR2qPsx82iLcuRenvB32L3CNUyKn044cgR8SKTPU0LbymOf lRvC9BGIxNPk3QDtzKPbam4hh8F7YMoJVGAAb9oVEZV0cjoopPmiG1kQoY6QffOJbH4OV2r93 XfvvJ1/FbHJp9OE8gD5hKh8wrv8/lDc7A5cpvjWHrwWeotXSnBxXYw/W/tpx959DV+Xl/OYif VI3CRCEq47uJumboGJLcJehw== 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: >> If so, then this violation might be caused by the fact that we >> (1) did resize windows according to the new sizes but (2) did not update >> the frame sizes accordingly. > > Can you elaborate on [...] 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.159 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_H3 RBL: Good reputation (+3) [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_MSPIKE_WL Mailspike good senders X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: >> If so, then this violation might be caused by the fact that we >> (1) did resize windows according to the new sizes but (2) did not update >> the frame sizes accordingly. > > Can you elaborate on [...] Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.15.18 listed in wl.mailspike.net] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.159 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 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) 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager >> If so, then this violation might be caused by the fact that we >> (1) did resize windows according to the new sizes but (2) did not update >> the frame sizes accordingly. > > Can you elaborate on how this could be possible? I always thought we > first allocate the frame matrices, and then the window matrices (by > suballocating them from the frame matrices). Am I mistaken? But if glyph_row_slice_p (window_row, frame_row) fails, something else must have invalidated that. I made that change here more than three years ago and I can neither remember whether an assertion violation made me do it or a crash nor why I did chose a term like "congruent" in the comment. One possibility I cannot exclude is that adjust_frame_size tries to resize windows, that step (silently) fails in window_resize_check, the old values stay in place but the new frame sizes are applied by adjust_frame_size. But precisely this scenario cannot be healed by my patch so it's unlikely that it was the cause for the problem I experienced back then. > Moving code in adjust_frame_glyphs could affect the assertion if the > assertion was being hit while adjust_frame_glyphs is still being > executed. But that is not the case, so I don't understand how moving > some code in adjust_frame_glyphs without changing it could affect the > assertion violation. I'm probably missing something. I'm still too dense to understand what "Moving code" and "moving some code" could mean in this context. If you have enough patience left, please elaborate. Thanks, martin
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 10:01:05 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 06:01:05 2024 Received: from localhost ([127.0.0.1]:36221 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sm9IW-0001yA-Vw for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 06:01:05 -0400 Received: from eggs.gnu.org ([209.51.188.92]:52300) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1sm9IV-0001wn-Pk for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 06:01:04 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1sm8e1-0007TA-6j; Thu, 05 Sep 2024 05:19:13 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=sijIYzj5p1Zc1O2RWmMLPhjZf9QTLAjwYfS/yWxDCX8=; b=psjGln5idDsQ NEOXgXjj0/6lnqN2THrLCKj6gxLVUdPbQRvZ/RIT+LAgAQ8lT93yI65vQNkxaYv8E2HdQEq5d76em ocE+H3guGX+GNVeahmjyNvlR4p4HPqTmqOv+EjLwPOH3xFBWKztcxzVEV6vuj+PycE+DsT8OkxVly jLwTJSbvWKrMZo6v2NFf2kaeA75bsmroMydcMmZCTwmqqRSYZFkbO+U36own9+9p/BmiwIPSCDziD ntFAkKXCGk7sMtae8VrjeyIch8vwG5Teu8U/lC3iVZbjoDukkTWNGWDoUTG+YH5b7qj5u47UvzgbT IpGrkCfwWQ6Eepbb8u+hgg==; Date: Thu, 05 Sep 2024 12:19:10 +0300 Message-Id: <86bk124fw1.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: martin rudalics <rudalics@HIDDEN> In-Reply-To: <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> (message from martin rudalics on Thu, 5 Sep 2024 10:18:52 +0200) Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <86ed5z5z8m.fsf@HIDDEN> <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: -3.3 (---) > Date: Thu, 5 Sep 2024 10:18:52 +0200 > Cc: n142857@HIDDEN, 73022 <at> debbugs.gnu.org > From: martin rudalics <rudalics@HIDDEN> > > > In any case, I can cause the assertion violation even after making the > > change you suggested above. > > Following the OP's recipe I now get > > #0 terminate_due_to_signal (sig=6, backtrace_limit=40) at ../../src/emacs.c:432 > #1 0x000000000061b51b in emacs_abort () at ../../src/sysdep.c:2391 > #2 0x0000000000541fc2 in cmcheckmagic (tty=0x1ebe0d0) at ../../src/cm.c:122 > #3 0x0000000000546564 in tty_write_glyphs (f=0x1e7bb30, string=0x1e9afe0, len=80) at ../../src/term.c:819 > #4 0x00000000005508c9 in write_glyphs (f=0x1e7bb30, string=0x1e9a0e0, len=80) at ../../src/terminal.c:164 Are you running the latest codebase? The assertions in cmcheckmagic are supposed to be fixed there.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 10:01:03 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 06:01:03 2024 Received: from localhost ([127.0.0.1]:36215 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sm9IV-0001xj-2o for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 06:01:03 -0400 Received: from eggs.gnu.org ([209.51.188.92]:52300) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1sm9IS-0001wn-Ii for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 06:01:01 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1sm8d9-0007Oc-Rc; Thu, 05 Sep 2024 05:18:19 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=v++w+GEh3gvOOerkTi6yteQCAu3tCQ+ilojKw6YY5mo=; b=pXq3WxxNEJX3 9a0l0M0JLu9ClYOu5hjcRZxcmKzMrgcJxXhT3j/Rds4rMQLG3+Zsgs2zR1JOzeqb6cQEpda702Z+X 0ef88QveTQj3SNc8kfKuwcFMrcj8ubRy/KlkYVwqQVwUSI75ifw9eYcZzPe8r5RZaa8trP6NG0qNW q75v+SjxLe00bZu5VM1dHzgFj3EXciE8iBVyUJhJXaZYLPIIy0kwJ4TICh+EAH0WwUTWysJBgFH0d kNhkAQvuNdJJjEpnqHydK021SoZZrwHNt0BAhF5rgJF9UY7xFeO8eXn6hoBnKREJgDyX6DRkQoZl8 WUggYaraQ5lQPsI8MfQmfQ==; Date: Thu, 05 Sep 2024 12:18:16 +0300 Message-Id: <86cyli4fxj.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: martin rudalics <rudalics@HIDDEN> In-Reply-To: <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> (message from martin rudalics on Thu, 5 Sep 2024 10:18:35 +0200) Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: -3.3 (---) > Date: Thu, 5 Sep 2024 10:18:35 +0200 > Cc: n142857@HIDDEN, 73022 <at> debbugs.gnu.org > From: martin rudalics <rudalics@HIDDEN> > > > Thanks, but could you tell how that change could have affected this > > assertion violation? > > I attach the patch now, sorry for not doing it earlier. You didn't attach it, but I think I understood what you wanted to change, and did that by hand. > IIUC we are talking about this assertion > > eassert (frame_size_change_delayed (XFRAME (w->frame)) > || glyph_row_slice_p (window_row, frame_row)); > > Right? Yes. > If so, then this violation might be caused by the fact that we > (1) did resize windows according to the new sizes but (2) did not update > the frame sizes accordingly. Can you elaborate on how this could be possible? I always thought we first allocate the frame matrices, and then the window matrices (by suballocating them from the frame matrices). Am I mistaken? > > AFAICT, adjust_frame_glyphs is not in the > > backtrace, so how could moving code inside of it affect what happens > > here? > > I don't understand what you mean here. Moving code in adjust_frame_glyphs could affect the assertion if the assertion was being hit while adjust_frame_glyphs is still being executed. But that is not the case, so I don't understand how moving some code in adjust_frame_glyphs without changing it could affect the assertion violation. I'm probably missing something.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 08:32:56 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 04:32:56 2024 Received: from localhost ([127.0.0.1]:36121 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sm7vE-0003eO-CP for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 04:32:56 -0400 Received: from mout.gmx.net ([212.227.15.19]:37733) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sm7vB-0003e8-Ub for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 04:32:54 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1725525102; x=1726129902; i=rudalics@HIDDEN; bh=71xIGgYHZ+dmJf+8/jlXaI0/YYvgQIASF+HbSTjPZyg=; 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=TJUO9Zy6byZRx/eswgh7WECXvshgmzvgqWTOcSZpj1Ir2rM2n8nx07xzua+VUQWb sFW1u8O1MPgisYufGTinN0X17I44B9Jf8Aqu9j24gfrV9v3mltZJDg+gq7LZ28uS0 9XrcHS5dqHNy9xZN+kLKm1g6+78Vn2zWTJb7LsgxX7E5/XQU4YRkOmf38eqxZFtxx 5/HEKpFJXDAWPavVw1T5vwcwUR2u9m4pWDt2rUkL1PFSBtJuL3q1bkSh79+Jg75Ow Obu62OTU3bEuYwc+2/9B57SrJgWb3YS6+AwXRb1GDeNl+du/Oi0K9lHb72rqQSvJJ gC51lMieJKRcdcQLrA== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.159]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MQe5k-1sRjGz39YE-00TATM; Thu, 05 Sep 2024 10:18:56 +0200 Message-ID: <eb786dbc-1582-43d1-afbe-cd6e97649a99@HIDDEN> Date: Thu, 5 Sep 2024 10:18:52 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Eli Zaretskii <eliz@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> <86ed5z5z8m.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86ed5z5z8m.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:J70Lxe7hUGHyPk/VUKr0bCYjVJscG6viEftq5jpVN2B2DBFaFuY twQRtxgpWL3z9L7bu1Au/EHdNqid7394/Kwo62BJzhnc/afQ/a+JfTMNxVSXrt+zVD+2yQ7 VjLh6KgFjlvc2V76YQYkRU9lUYOYdVgvOyd0cKd8oNBFnfdr5f7YxP7uKNlDRcJDU3LlZF9 w2DZUCKYRAUHsZZJZlkdA== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:MNLZ6vhVvXA=;C5K/T7QRNkCsaU51fgDowBCqt8q SYAwT8RDjkYEO/4l1eU3m3zoREDnHz8VN6wfOR+uhMnVnOyJxGs4ogoSTmmOCK86vs4aIzWe3 doBCUgPKX9TFa6gBge//HyRAvI7s9jLCn+BJ2P+2/HQ6dYjAC9Ss1onxcl7gKrQwOjywvSXZg fe8JhbgYsv/UlM7r6xc2jMiILvB0bcoGuXegxU264BaLSWAUbjISeicwB6s2c7QtPRdpr6hI/ BCcNGY2gFuurjnQqiwl1zGl4Lc7bMHkZcn0Gu2cXPDXzMv7Y/SKfPE7aCFNtM/FoePeXAUzwc HoACS2AfDGNNuMZrGEal++vCDwXFjlH13CZ1pOKrndlubjMkHdnAdai9ZcLkvXXy5SyW64ERh LEOi3GXvb/HYxxmEek/CiX14Hhs4CUn/5nZgGjPZyS76h1bnPoZU8DjK1IMdWGTI86t79o3WW ydMhMPeWvbpNXjqBsHB1cXIcv+D8Q1d15fm962ffVRf0Qy4XF9zh53Lmm5suKfyNREbZiwbPM S1oOfMV+XoPsm2y6MOtygOk7eJlkbIQcnxiqLlJpsZoW+wyXzsKEGxiGDeJjDo78tP35rkWWr OV/b/UMtvG7gCmF6bXYSYxYgFkFhC2dpE56c5wcgyviOChyNxTnoF2MKEiE2fQMnSZof48v3h F5ESkDOmrRVjoN6waWoPzXaM7MQAilIyv76Z15oTOb25JQfBTciGXUOWgQEF9DdKFkoDylgyy wIy1u4AvcF2SXP7Nkjak3c7hTRAgFRA+wgMg1cWm8hocy/zFPyZBjWPyd1eaplx5hksZMaxkV LZtu+XvX7kHHMMyZn39c0HIw== 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: > In any case, I can cause the assertion violation even after making the > change you suggested above. Following the OP's recipe I now get #0 terminate_due_to_signal (sig=6, backtrace_limit=40) at ../../src/emacs.c:432 #1 0x000000000061b51b in emacs_abort () at ../../src/sysdep.c:2391 #2 0x0000000000541fc2 in cmcheckmagic (tty=0x1ebe0d0) [...] 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.159 listed in zen.spamhaus.org] 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.15.19 listed in wl.mailspike.net] -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_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_MSPIKE_WL Mailspike good senders X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: > In any case, I can cause the assertion violation even after making the > change you suggested above. Following the OP's recipe I now get #0 terminate_due_to_signal (sig=6, backtrace_limit=40) at ../../src/emacs.c:432 #1 0x000000000061b51b in emacs_abort () at ../../src/sysdep.c:2391 #2 0x0000000000541fc2 in cmcheckmagic (tty=0x1ebe0d0) [...] Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.15.19 listed in wl.mailspike.net] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [212.95.5.159 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 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_MSPIKE_WL Mailspike good senders -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager > In any case, I can cause the assertion violation even after making the > change you suggested above. Following the OP's recipe I now get #0 terminate_due_to_signal (sig=6, backtrace_limit=40) at ../../src/emacs.c:432 #1 0x000000000061b51b in emacs_abort () at ../../src/sysdep.c:2391 #2 0x0000000000541fc2 in cmcheckmagic (tty=0x1ebe0d0) at ../../src/cm.c:122 #3 0x0000000000546564 in tty_write_glyphs (f=0x1e7bb30, string=0x1e9afe0, len=80) at ../../src/term.c:819 #4 0x00000000005508c9 in write_glyphs (f=0x1e7bb30, string=0x1e9a0e0, len=80) at ../../src/terminal.c:164 #5 0x000000000042a6d7 in update_frame_line (f=0x1e7bb30, vpos=4, updating_menu_p=false) at ../../src/dispnew.c:5326 #6 0x00000000004298c5 in update_frame_1 (f=0x1e7bb30, force_p=true, inhibit_id_p=false, set_cursor_p=true, updating_menu_p=false) at ../../src/dispnew.c:5008 #7 0x000000000042514e in update_frame (f=0x1e7bb30, force_p=true, inhibit_hairy_id_p=false) at ../../src/dispnew.c:3346 #8 0x000000000047f556 in redisplay_internal () at ../../src/xdisp.c:17566 #9 0x00000000004800c7 in redisplay_preserve_echo_area (from_where=11) at ../../src/xdisp.c:17849 #10 0x0000000000740b5a in wait_reading_process_output (time_limit=30, nsecs=0, read_kbd=-1, do_display=true, wait_for_cell=XIL(0), wait_proc=0x0, just_wait_proc=0) at ../../src/process.c:5583 #11 0x000000000042df55 in sit_for (timeout=make_fixnum(30), reading=true, display_option=1) at ../../src/dispnew.c:6335 #12 0x00000000005f1523 in read_char (commandflag=1, map=XIL(0x7f59e8999aa3), prev_event=XIL(0), used_mouse_menu=0x7ffe2d75980f, end_time=0x0) at ../../src/keyboard.c:2926 #13 0x0000000000604743 in read_key_sequence (keybuf=0x7ffe2d7599c0, prompt=XIL(0), dont_downcase_last=false, can_return_switch_frame=true, fix_current_buffer=true, prevent_redisplay=false, disable_text_conversion_p=false) at ../../src/keyboard.c:10747 #14 0x00000000005ecddb in command_loop_1 () at ../../src/keyboard.c:1424 #15 0x00000000006cb57b in internal_condition_case (bfun=0x5ec9ac <command_loop_1>, handlers=XIL(0x90), hfun=0x5ebe2e <cmd_error>) at ../../src/eval.c:1598 #16 0x00000000005ec573 in command_loop_2 (handlers=XIL(0x90)) at ../../src/keyboard.c:1163 #17 0x00000000006ca9d1 in internal_catch (tag=XIL(0x12360), func=0x5ec549 <command_loop_2>, arg=XIL(0x90)) at ../../src/eval.c:1277 #18 0x00000000005ec505 in command_loop () at ../../src/keyboard.c:1141 #19 0x00000000005eb8d0 in recursive_edit_1 () at ../../src/keyboard.c:749 #20 0x00000000005ebafc in Frecursive_edit () at ../../src/keyboard.c:832 #21 0x00000000005e7382 in main (argc=3, argv=0x7ffe2d759ff8) at ../../src/emacs.c:2624 Lisp Backtrace: "redisplay_internal (C function)" (0x0) so the original assertion violation is gone here. martin
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 5 Sep 2024 08:20:00 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu Sep 05 04:19:59 2024 Received: from localhost ([127.0.0.1]:36079 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sm7ih-0002YB-CU for submit <at> debbugs.gnu.org; Thu, 05 Sep 2024 04:19:59 -0400 Received: from mout.gmx.net ([212.227.15.15]:47205) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1sm7ie-0002Xd-UN for 73022 <at> debbugs.gnu.org; Thu, 05 Sep 2024 04:19:58 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1725524318; x=1726129118; i=rudalics@HIDDEN; bh=BL09vN1+zVwqCOG6yMdGi09fGyBfrgr3+pbBNfbvrgU=; 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=l1nI198I7y5IWrWVzP8NWDDvhsBeYdR9/E7hdnAVrNrTyQPhH0alTc2eeVrRkznf 12bXc4J0rWzhLQUuva1YpoBCOBmebtWy9v4/JaEc/hjn9LELiekwBVDTesl6VxHCu GXdulZWbprZ/QLh7kfk1H0r9VU2XPCR1hm8DpiaArxW9pepHOf71C6op2IaD3xuKb bRdaO2Jx6qEaBIHoQocb8oZP2aPn/Dzt0mqJ/EdBi3XS0ar0G2vTTW7p12WW6/NRM YbmJN3OUmDR7ZvUxBy/DtDFydHb6SL+B8txbMrTxbIq7Jtefo88pP185N+1frk5OE bsTPqMAbDhi1wX9rSg== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([212.95.5.159]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MQ5vW-1sQ4ZJ3B9E-00XIaT; Thu, 05 Sep 2024 10:18:38 +0200 Message-ID: <60579ab6-db81-4f6e-b281-0cee03dc3b82@HIDDEN> Date: Thu, 5 Sep 2024 10:18:35 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Eli Zaretskii <eliz@HIDDEN> References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <86le07624j.fsf@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:VT8kD72NCt/Tf8iIjIQYQAns2X/auimBRqhjAP11+ISyGNlKrag tuOrFWW7NudRffZRbafKKUKiKzznBaUpn+wtRHvrpZZlbCe8Zc+WBfDAjVJulOmUg3pVYBX Vh+1Mtfe8w7v/TC/2jbipeSHxgYvuytpYHcKS0fKYH1OOte6kpcs3X5Wad1vKUxsF7J8NZQ eeRZLi1s1AEXl3E4jJgDg== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:j14/2Z33oDU=;pCZ160HpNwSj96QeLeyxsAHQqJB +R3Xwp7JTbhTDYRI6vvesVtuZiw+ye5OeI2xKjvJbFmWMNtHfDK+iPiGUBICveflTCCbMZbnD wAXLKK3+d2HKkzy9zNdkIvYGHpR+BFifqD2qD28IUMbMQZLPOKMexXs6xzP82pd309vWwh7MY LXfuigrNa2sfdjrWPxb71SCcfiy3hKeFa8FYJGhALFFUeaw4aPy8GgxX++zvhFEo7a20eSFu3 N6Lh6Q7BDGXRHXH/1/NQoAYv/Mkke9+4Ll0R2uhyHz6Jg3+lwxsuh0UO9IvPLGAKHfCsiY4hI Cj8RVZzRA84zZbUtx2vqN3kwsYGRIGo5GqDctfOAatiXutNURwMPdqPfgR6t5Yoii/i1WMdss ST0gZdHkX5hK0/ADUYuwAZhQ1zU1DeoRnl5pNkvEpH2v8L6oe5mw7XhvIINom+VrC7GhjshMA wtUDF5SliwaKkdgvhEv/UBYaWQx89PDKluoGxuU27quzQDwv429jtZVfA8SRg+uxPQT16FqaT 5e6o8Omqt7JSDOf9oqCIECyq5AHmq0CzD3qs8UaM0JToBGVokLyQyIQ//d9k1toTLvSxkA6hK g5Zx/AQGji8Jf2NK61aGbncTIBMCX0Z+De++uqYoXyZ+g47CE5AeI7jseFock8ffZuHnl2cKP tVADlxEEfgT5lThc5/4IVZRSMXXUvO0KdIy2XDPZe6ooKrC36gAPYOFbJKYqToz3bTxMkw3tM y41AnS6Shc3OMyw6bdoO1sZQX4gCZDwdZ/ZZfzdCHfSjjxTatr27g5GVSWYLMqHt2LOXO5qn1 6O1ZbhVjfkpBknLXu9s4Oltg== 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: > Thanks, but could you tell how that change could have affected this > assertion violation? I attach the patch now, sorry for not doing it earlier. IIUC we are talking about this assertion 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 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_MSPIKE_H3 RBL: Good reputation (+3) [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.159 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_WL Mailspike good senders X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: > Thanks, but could you tell how that change could have affected this > assertion violation? I attach the patch now, sorry for not doing it earlier. IIUC we are talking about this assertion Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [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.159 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 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_MSPIKE_WL Mailspike good senders -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager > Thanks, but could you tell how that change could have affected this > assertion violation? I attach the patch now, sorry for not doing it earlier. IIUC we are talking about this assertion eassert (frame_size_change_delayed (XFRAME (w->frame)) || glyph_row_slice_p (window_row, frame_row)); Right? If so, then this violation might be caused by the fact that we (1) did resize windows according to the new sizes but (2) did not update the frame sizes accordingly. Which seems to match one observation that the assertion gets violated when we increase the terminal height after making it very small and not before. > AFAICT, adjust_frame_glyphs is not in the > backtrace, so how could moving code inside of it affect what happens > here? I don't understand what you mean here. martin
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 4 Sep 2024 13:25:07 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 04 09:25:07 2024 Received: from localhost ([127.0.0.1]:33868 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1slq0Q-0001FN-Mt for submit <at> debbugs.gnu.org; Wed, 04 Sep 2024 09:25:07 -0400 Received: from eggs.gnu.org ([209.51.188.92]:35352) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1slq0O-0001E0-Ru for 73022 <at> debbugs.gnu.org; Wed, 04 Sep 2024 09:25:05 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1slpzH-0007Ew-Gr; Wed, 04 Sep 2024 09:23:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=VFeDbwn56k8ymaYreNQsOX8BQp1akwqz3kfRW0V77Tg=; b=lIZvW0jO4zK6 b+665iqYaq/MS4DQNwypFvthY1tPWJWtGTZ4kiaz+SaUNqFADMJhPyxhn683ppyNF1cBL31oz5RU4 +GhmVKzvJ5XD/Jh9MsdrWCEQXNdNClIug6CFBmuGyp/mGGlTMYpTWQCFl53QBd5YJh9Lbb7iK8UiU dIB+GdWCKfEUf8Jny7aCVn2BtsujpI8KAY7Z+iCb9GEiqQPJEp0lAinSJtWKEG7xhto+Rh8a6Ek97 VlmJ/Yq6KsipKVnkNhB00QUOoybqrzxQCJahzLLs3OjDB28T0QUVLjk29HYzSP1uMx5AWmFFKjtqS Ud70uZZYO3oI65Ca6yqdAg==; Date: Wed, 04 Sep 2024 16:23:37 +0300 Message-Id: <86ed5z5z8m.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: rudalics@HIDDEN In-Reply-To: <86le07624j.fsf@HIDDEN> (message from Eli Zaretskii on Wed, 04 Sep 2024 15:21:16 +0300) Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> <86le07624j.fsf@HIDDEN> X-Spam-Score: 1.3 (+) 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: > Cc: n142857@HIDDEN, 73022 <at> debbugs.gnu.org > Date: Wed, 04 Sep 2024 15:21:16 +0300 > From: Eli Zaretskii <eliz@HIDDEN> > > > Date: Wed, 4 Sep 2024 09:28:47 +0200 > > From: martin rudalics via "Bu [...] Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [209.51.188.92 listed in zen.spamhaus.org] -0.0 SPF_PASS SPF: sender matches SPF record -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, medium trust [209.51.188.92 listed in list.dnswl.org] X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: 0.3 (/) > Cc: n142857@HIDDEN, 73022 <at> debbugs.gnu.org > Date: Wed, 04 Sep 2024 15:21:16 +0300 > From: Eli Zaretskii <eliz@HIDDEN> > > > Date: Wed, 4 Sep 2024 09:28:47 +0200 > > From: martin rudalics via "Bug reports for GNU Emacs, > > the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> > > > > > To reproduce: > > > 1. Open emacs -Q > > > 2. Press C-x 2 to split the frame (top/bottom) > > > 3. Make the terminal very small (I slowly resize the X window that's > > > running urxvt, to the minimum size, 1 row and 2 columns in my case). > > > This shrinking process alone can produce the crash when the window is > > > around 5 lines high > > > 4. It always crashes in my case. If it doesn't, make the terminal > > > larger again, and repeat the resizing for some seconds until it > > > crashes > > > > > > Note that the C-x 2 is required. The problem doesn't happen with a > > > left/right split (C-x 3). But it happens after a C-x 3 C-x 2. > > > > Kindly have a look at the fix I proposed here: > > > > https://lists.gnu.org/archive/html/emacs-devel/2024-09/msg00054.html > > Thanks, but could you tell how that change could have affected this > assertion violation? AFAICT, adjust_frame_glyphs is not in the > backtrace, so how could moving code inside of it affect what happens > here? In any case, I can cause the assertion violation even after making the change you suggested above.
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 4 Sep 2024 12:22:40 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 04 08:22:40 2024 Received: from localhost ([127.0.0.1]:33771 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1slp1z-0007x7-Ph for submit <at> debbugs.gnu.org; Wed, 04 Sep 2024 08:22:40 -0400 Received: from eggs.gnu.org ([209.51.188.92]:56528) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1slp1x-0007wt-95 for 73022 <at> debbugs.gnu.org; Wed, 04 Sep 2024 08:22:38 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1slp0q-0003xD-2B; Wed, 04 Sep 2024 08:21:28 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=E5fMnV9yB7POTpFo2eBe9fiZPJ0aFaeGy4hJd5EhVSI=; b=rTgoPJdqM0jI b6mTYO2+ZRWhaCJcMWQtBrB7XW4Uxtx7jQHRxR7EItnZcCUmn+TFlT52SFsyW8Oqva28ghLa+la80 T+xrP427EhQZ6INvK7m8n5PgS0qgz5ZfsInDduJQuZP507vvMxXe5fFFZWWj07nPdnASWM0oq/MFl wylCnO3jl9ogp4rVCwb3S3wirN7jIEnZtQsftPT63v/OB7GnFjC4lrsKLn/pHTQWh0dj4ogofk0FO Dg4P5YCQk3kU++84Brjh5j7HE3ZBsaVe5NJeeLBs9s0TiG52FlHdYWE6C+cXcEaoCe0DJ2aOzr09A egpuxwimR3h6aHNQfmlOCw==; Date: Wed, 04 Sep 2024 15:21:16 +0300 Message-Id: <86le07624j.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: martin rudalics <rudalics@HIDDEN> In-Reply-To: <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> (bug-gnu-emacs@HIDDEN) Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> X-Spam-Score: 1.3 (+) 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: > Date: Wed, 4 Sep 2024 09:28:47 +0200 > From: martin rudalics via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> > > > To reproduce: > > 1. Open emacs -Q [...] Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [209.51.188.92 listed in zen.spamhaus.org] -0.0 SPF_PASS SPF: sender matches SPF record -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -2.3 RCVD_IN_DNSWL_MED RBL: Sender listed at https://www.dnswl.org/, medium trust [209.51.188.92 listed in list.dnswl.org] X-Debbugs-Envelope-To: 73022 Cc: n142857@HIDDEN, 73022 <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: 0.3 (/) > Date: Wed, 4 Sep 2024 09:28:47 +0200 > From: martin rudalics via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" <bug-gnu-emacs@HIDDEN> > > > To reproduce: > > 1. Open emacs -Q > > 2. Press C-x 2 to split the frame (top/bottom) > > 3. Make the terminal very small (I slowly resize the X window that's > > running urxvt, to the minimum size, 1 row and 2 columns in my case). > > This shrinking process alone can produce the crash when the window is > > around 5 lines high > > 4. It always crashes in my case. If it doesn't, make the terminal > > larger again, and repeat the resizing for some seconds until it > > crashes > > > > Note that the C-x 2 is required. The problem doesn't happen with a > > left/right split (C-x 3). But it happens after a C-x 3 C-x 2. > > Kindly have a look at the fix I proposed here: > > https://lists.gnu.org/archive/html/emacs-devel/2024-09/msg00054.html Thanks, but could you tell how that change could have affected this assertion violation? AFAICT, adjust_frame_glyphs is not in the backtrace, so how could moving code inside of it affect what happens here?
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 4 Sep 2024 07:30:00 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 04 03:30:00 2024 Received: from localhost ([127.0.0.1]:33258 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1slkSl-0008CF-UG for submit <at> debbugs.gnu.org; Wed, 04 Sep 2024 03:30:00 -0400 Received: from mout.gmx.net ([212.227.15.18]:45667) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <rudalics@HIDDEN>) id 1slkSk-0008C1-MP for 73022 <at> debbugs.gnu.org; Wed, 04 Sep 2024 03:29:59 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.at; s=s31663417; t=1725434929; x=1726039729; i=rudalics@HIDDEN; bh=iRRzg77XK3TMgit7r1Fnc3N0krUMYyb7NH+a7HBYHHs=; h=X-UI-Sender-Class:Message-ID:Date:MIME-Version:Subject:To: 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=FNC3THuGMWWS3ZKb0GRC0/gTuTgrosf+Vwm92XPqtYAUVybsXNcxF3en+ncmvIm9 TBbxG7CNb8esZzBNyiYHaFYYzxyYUOXRZOQ2Siy0mQI3m0hhp4faNpaKUSESy07Zy v0CMmKLyCifKnBZQ8Chhdtmpv3KrW2267DO1IYwUh8xjh5ZEcs/8nP3s87BKoCOM+ sRTyqrIqmOtbyMsgH/0rwNVTLqdLjw4+vVDcdcTpFlNB1oPy3IkMu/x8h5B+eMGeU FC7KibbderoYCYCKioCG24WzPhr4dBB8PMhyN/Ao3qx9cglr2kH1ZRF/i2aTPbmo6 k8ZNYdLfQQj96hBH/g== X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Received: from [192.168.31.113] ([213.142.96.184]) by mail.gmx.net (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MOA3P-1sNu493H4r-00Rnvj; Wed, 04 Sep 2024 09:28:48 +0200 Message-ID: <ac1e5816-ea35-49bd-9462-af5ce55c23f8@HIDDEN> Date: Wed, 4 Sep 2024 09:28:47 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#73022: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: Daniel Clemente <n142857@HIDDEN>, 73022 <at> debbugs.gnu.org References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> Content-Language: en-US From: martin rudalics <rudalics@HIDDEN> In-Reply-To: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:jLJE0aDrLYdowoa0FcmAEwNyCUfrPffaZqW39y0h572GkJyFwmo poMEmCHTmuLxL23PUWL9nc/k/dQRHWqiSBIukgl5UlIsPKl5XiT45H4t0TseDrKCZQELGMn v16Vt+cO4lp5heyAf6J3FUb/1rnYi7CShTMWRZ3Wz8fG3n4RT7V16dbeOGHZvl2hOZlWtjJ 4gUMEscUfS8lnxF8mbtuw== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:tunRt/efAts=;XRwqhiiZ4GarMcS8N+WIQRT45KX 2D6L2jr2Q9EWrMWBiL/W6la56RRmKqUxabQ7Hd2ukoOHC+HImhch9sStXRuNNBGXMFNDxeQGd UeAzzzhFOrJfUWRQmuUXj8kbt/Q2nPhVllpHDBfBMGKBGqxs42ptgBfDOJNJrhUrCzn01S/3Q O3cDysXGPomJyfN+H9uX19VMEjkONHMdLNANQS0nk/Ehjny3jO/oIum4B6tAXgTKmys6R0WGu YVqts93LacPlV0BuVULtyNaHp5zvydQPskCPUZAjUnSps/af4uGiqL7jo74SPH9pVDK/WrtKq 7z7V6litsqySywCf7ta39M+PcLsCsudQXeQJApkeL450qgFhU0w0KHMIkYLbQIsLIPQB9Nzka LYE6VTvWSer6Rnc8P+RWTFINA4rvlNErRUdomV3X8CZC+2mhhTNOX5Uc2iG/E5uzGTCgl1rWQ DC0lest5MjPdTP4n0C2CDWg6A9MieANNgN9YrzQuIUyGC/SqMAx0k4azgO1cY4fFp4WzhHPfZ pcC8L5gOiL5hGnl/Zk0qe2XjKzLzr1UnzMTcgB+flgI1kFHC3KPr6GcLwp4qPmsJXuxTn5UBA q4txO3khfty3e2mO6GbMqZDLMQrIwzPpV2iDDOtbzgrGDn6IWdG3U9j+xevktH7M4erF2XWv1 XCrIo8MsXMD+dHUP9TalJ6+KCBAFcdXu8B70iS5xsuGwUlZc0gCdpbbM8Tb9SvtL5DTuxpz/P r6hwQ7YAK7i4yLFY8Op3NQkk3r2ane16OkoeQEMYRspIdpIU/roOUpG3joRNm7XWuJ2NevbBJ 3+vqSr54h0BGxJhN6fhd3yk4dwwwZNspkSAR+hrJ+KAQWR1SeGo5myWtX8FtKasuHF 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: Sorry, my last mail went at the wrong address. Reposting. > In particular, I found a case in which an assert fails because the > window row glyph memory is not contained in the frame row glyph > memory. > > It happens in a recent build (99a03ddb2d4) built w [...] 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 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (rudalics[at]gmx.at) -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 [213.142.96.184 listed in zen.spamhaus.org] 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.15.18 listed in wl.mailspike.net] 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Debbugs-Envelope-To: 73022 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: Sorry, my last mail went at the wrong address. Reposting. > In particular, I found a case in which an assert fails because the > window row glyph memory is not contained in the frame row glyph > memory. > > It happens in a recent build (99a03ddb2d4) built w [...] Content analysis details: (1.9 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [212.227.15.18 listed in wl.mailspike.net] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [213.142.96.184 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 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) 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager Sorry, my last mail went at the wrong address. Reposting. > In particular, I found a case in which an assert fails because the > window row glyph memory is not contained in the frame row glyph > memory. > > It happens in a recent build (99a03ddb2d4) built without X support. > I'm running it in a urxvt terminal but it happens in xterm too. It > crashes both with and without glyph debug. This is not related to > garbage collection like bug 71289. > > To reproduce: > 1. Open emacs -Q > 2. Press C-x 2 to split the frame (top/bottom) > 3. Make the terminal very small (I slowly resize the X window that's > running urxvt, to the minimum size, 1 row and 2 columns in my case). > This shrinking process alone can produce the crash when the window is > around 5 lines high > 4. It always crashes in my case. If it doesn't, make the terminal > larger again, and repeat the resizing for some seconds until it > crashes > > Note that the C-x 2 is required. The problem doesn't happen with a > left/right split (C-x 3). But it happens after a C-x 3 C-x 2. Kindly have a look at the fix I proposed here: https://lists.gnu.org/archive/html/emacs-devel/2024-09/msg00054.html If necessary, I can send you a patch. Thanks, martin
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at 73022) by debbugs.gnu.org; 4 Sep 2024 06:27:46 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 04 02:27:45 2024 Received: from localhost ([127.0.0.1]:33168 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sljUX-0006VR-N4 for submit <at> debbugs.gnu.org; Wed, 04 Sep 2024 02:27:45 -0400 Received: from mail-ua1-f47.google.com ([209.85.222.47]:47171) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <n142857@HIDDEN>) id 1sljUW-0006VF-Ga for 73022 <at> debbugs.gnu.org; Wed, 04 Sep 2024 02:27:44 -0400 Received: by mail-ua1-f47.google.com with SMTP id a1e0cc1a2514c-846c36009d5so919864241.2 for <73022 <at> debbugs.gnu.org>; Tue, 03 Sep 2024 23:26:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1725431136; x=1726035936; darn=debbugs.gnu.org; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=OPDlZqiGwqWnA6oB7F1D3FkShMQT1EwT4F/nbWwJK/I=; b=UXPnAJmvPu+it7oqHpOGpC1IAb24sib8BxBtoOPSUwp29XG6RSJOnJaBFmg9Of2Y/8 KlMf2c0mrnuqT6dz1gXe0r3GMut69AoUEt2aVn79gSU2xdUxnPiRxfPyW6VUKweYQRQa nYcb5cJ2TOL9z8JAjXGVEk2JRxsX0g3YyBbn1pFljzSka+9TT6OsTQYmyNBmsh4ZnOPd fOGER9C61Fac0xcMMJEuZVQ33NdfgXezHqANgI5HTEc1i8MaZ3gHANta7J67yEmjc/+m DDEphxCyYd6cl5zmie5shoF0Jku48/Z9p/Z1H9xApAQgNmJaDaE3DfVEAVFejPgwQO6p cd9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725431136; x=1726035936; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OPDlZqiGwqWnA6oB7F1D3FkShMQT1EwT4F/nbWwJK/I=; b=fmz9Q90rBi9FBismnS0c97oDWWtr7aL8OsCOF1OecZ/B/DcrVjIw0NHvj2sbJxIkD1 9lKqDvUKszmIJivRMj0B5hppkbgQVfMiEaot2W1hYxxGcBqZgAQZwawP9uMxlm5DtiE3 +P8q3Brlr8QBqub5A2Lt6enntkXFetQ5VAO0052U+mnkA9NKfUxJ9ulen/rwkU3hy063 SIYKiKS6qz8OL59Fk8g4NAqRGveMFA1zroLAmusoa2rq55J8mcJiKkgTz+kWvZ73U/IN 8Ssu4hwLB8pnpSweD5e20qDHkFFoss/n4imrIsYKCSjPgySg3/FjM6gSOgLrYCYzU14T 32lg== X-Gm-Message-State: AOJu0YxPG+8X95oxYVPufQeJcb+xTMacb1s2Qn34IRi4gey1GBcejy9v q8ECBg5f2JUwrvVL4ehe/PPbzDdW3J/nu7dAOkdVwscIy/DVawqNrQSCgQb8WENmW/9QvTPKqb1 kBRlalXJogQuAcnOlUC9HE9Uk+Igs3bBp0eFydw== X-Google-Smtp-Source: AGHT+IH5BtJWfGO0y4c05unMkWLBNQH5qcbxxod75jFJyvkdCeJKfNZVH+UH05W8NKdwpkgVKYDt74hICbmgPlB2FU0= X-Received: by 2002:a05:6122:883:b0:4fc:e2bf:f5e2 with SMTP id 71dfb90a1353d-500de1937d7mr5261858e0c.7.1725431135728; Tue, 03 Sep 2024 23:25:35 -0700 (PDT) MIME-Version: 1.0 References: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> <handler.73022.B.172543028723315.ack <at> debbugs.gnu.org> In-Reply-To: <handler.73022.B.172543028723315.ack <at> debbugs.gnu.org> From: Daniel Clemente <n142857@HIDDEN> Date: Wed, 4 Sep 2024 06:25:09 +0000 Message-ID: <CAJKAhPCd92H8RyHBA9dMzqpRAvY=OeNwZ+cL+znMDT7_jtLqDg@HIDDEN> Subject: Re: bug#73022: Acknowledgement (31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size) To: 73022 <at> debbugs.gnu.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.2 (/) X-Debbugs-Envelope-To: 73022 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.8 (/) > Configured using: > [=E2=80=A6] > --without-x 'CFLAGS=3D-g3 -O3'' I sent another build's information by mistake. The backtraces are actually from a -O0 build, with this information: In GNU Emacs 31.0.50 (build 3, x86_64-pc-linux-gnu) of 2024-09-01 built on sonn Repository revision: 99a03ddb2d43d67577814b96e40ec069739b6421 Repository branch: master System Description: Devuan GNU/Linux 5 (daedalus) Configured using: 'configure --prefix=3D/opt/dc/emacs-dev/ --with-tiff=3Dno --without-tiff --without-libsystemd --without-dbus --with-mailutils --without-modules --with-native-compilation --with-x-toolkit=3Dno --without-imagemagick --without-xft --without-harfbuzz --without-freetype --without-libotf --without-xwidgets --without-xpm --without-jpeg --without-gif --without-png --without-webp --without-rsvg --without-cairo --without-x --without-sound --enable-checking=3Dyes,glyphs --enable-profiling 'CFLAGS=3D-g3 -O0 ''
bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 4 Sep 2024 06:11:27 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Sep 04 02:11:27 2024 Received: from localhost ([127.0.0.1]:33154 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1sljEj-00063w-LM for submit <at> debbugs.gnu.org; Wed, 04 Sep 2024 02:11:27 -0400 Received: from lists.gnu.org ([209.51.188.17]:41780) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <n142857@HIDDEN>) id 1sljEf-00063m-My for submit <at> debbugs.gnu.org; Wed, 04 Sep 2024 02:11:23 -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 <n142857@HIDDEN>) id 1sljDd-0007pL-No for bug-gnu-emacs@HIDDEN; Wed, 04 Sep 2024 02:10:17 -0400 Received: from mail-vk1-xa30.google.com ([2607:f8b0:4864:20::a30]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <n142857@HIDDEN>) id 1sljDZ-0003l4-Do for bug-gnu-emacs@HIDDEN; Wed, 04 Sep 2024 02:10:17 -0400 Received: by mail-vk1-xa30.google.com with SMTP id 71dfb90a1353d-4feb60e525bso223809e0c.0 for <bug-gnu-emacs@HIDDEN>; Tue, 03 Sep 2024 23:10:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1725430212; x=1726035012; darn=gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=34jgNwsPoC2bOqNYxHU5cx7f0X2J2VIgWbTopHJgEJo=; b=IWvyiJ/4q89zuqXWBwH8BPdqM0UcAQQw1CSx3S217bolBkz/rcLnZ+7o7FrdhRON6l CvSha7niGga/dGCRmW7lsp6NvtlW0Fdfr1FpK1dibjOXJ2CE58mEqwk1f+TvoQzuNdiF 8IxutdPnwQDPcFfVnlID6S9Rp5iWBkXnzOiXbavIUyoKAJBsWr/K09TlZO4pw3mQ7lTt YsrR+y0ILWcoKAPxD//95BWQCXHWP2JqwKuuKhpdcvZWMFBijXeD//iKpoe+MtpF6jY+ u1Bd/bgorzJlNoyLVnvIcXzkFOgAnCli+ssMpKiuE6W3HYQi/opW3IT4Ev1qPmTGSJEC U3mA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725430212; x=1726035012; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=34jgNwsPoC2bOqNYxHU5cx7f0X2J2VIgWbTopHJgEJo=; b=dsB1Q0cjFew9ikt5kkHdGCdUwo5OdOEKSQT05m+4OPGlo1Xi9A2Sou/reQ0STPADyP CK/qPiCpBSMrocrGLipJ2KYT4yj87uZovMFIPBs2Y0OywZOUO5eUAk3rTdq3b2sL9kp+ hLXgcjeFu16sCE3dsIwRLg1vDIxIFRTR6r08IfW4N49Is2zWDX67gRcix/UN1AuhzCnd NXV2qnFhaVtFTn9grnIHqsAxJOT7VXf/fiIW/NjeeOSfLGwx06Zw85EEWzprsmVWQ132 Sj52iG5KyjnONuKL8o0Hev8ZKhr9FTXM5KujAYG++4JWCiYwgBo5K1QutKqyl2ZLj5xI DB2A== X-Gm-Message-State: AOJu0Yw+lztKNnTTCDJC++YLRRRXzN+OVlcHfT+IAvL4TSJ2hHspAo4u fnP/Nl7E+7iTtdwHKTTW6ShE3jPKIGf+vkIt62ewqLdZjbuqgmPuA1MKf2aw/qZbXKF7w/ODucL h8acfSOsEAtDIiivYsPDDqSjHSAAPXh/J1eqsxw== X-Google-Smtp-Source: AGHT+IH7nAQzaA0iEW4NodiyFDeKva+1djAXKjqLawQbpTiinW9PQlbgkH5/83dEYLwFTBZ0Ye7uzxtWezcpCRuC1eo= X-Received: by 2002:a05:6122:1827:b0:4f6:b302:5c50 with SMTP id 71dfb90a1353d-500f6251dfemr431184e0c.0.1725430211360; Tue, 03 Sep 2024 23:10:11 -0700 (PDT) MIME-Version: 1.0 From: Daniel Clemente <n142857@HIDDEN> Date: Wed, 4 Sep 2024 06:09:44 +0000 Message-ID: <CAJKAhPC8j+__DcCPskmwZ_a2wjOE5XLvt7KkcOKDPybb8QMHVw@HIDDEN> Subject: 31.0.50; Crash in build_frame_matrix_from_leaf_window after C-x 2 and reducing terminal size To: bug-gnu-emacs@HIDDEN Content-Type: text/plain; charset="UTF-8" Received-SPF: pass client-ip=2607:f8b0:4864:20::a30; envelope-from=n142857@HIDDEN; helo=mail-vk1-xa30.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 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_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.1 (-) 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.1 (--) Continuing from this comment at https://debbugs.gnu.org/cgi/bugreport.cgi?bug=71289: > That's another problem. There seems to be some disconnect, time-wise, > in reallocating frame matrices and sub-allocating window matrices from > the frame matrices, and the crash happens when the check is done > in-between those two. In particular, I found a case in which an assert fails because the window row glyph memory is not contained in the frame row glyph memory. It happens in a recent build (99a03ddb2d4) built without X support. I'm running it in a urxvt terminal but it happens in xterm too. It crashes both with and without glyph debug. This is not related to garbage collection like bug 71289. To reproduce: 1. Open emacs -Q 2. Press C-x 2 to split the frame (top/bottom) 3. Make the terminal very small (I slowly resize the X window that's running urxvt, to the minimum size, 1 row and 2 columns in my case). This shrinking process alone can produce the crash when the window is around 5 lines high 4. It always crashes in my case. If it doesn't, make the terminal larger again, and repeat the resizing for some seconds until it crashes Note that the C-x 2 is required. The problem doesn't happen with a left/right split (C-x 3). But it happens after a C-x 3 C-x 2. Manually resizing is enough to trigger the problem. But it's also possible to automate the resizing with something like this (change the first part to find the window ID): EC=$(xdotool search --name '^\gdb src/emacs') && echo $EC && while :; do for height_px in `seq 275 -25 10`; do xdotool windowsize $EC $((height_px+5)) $height_px; sleep 0.001; done; for height_px in `seq 1 25 400`; do xdotool windowsize $EC $((height_px+5)) $height_px; sleep 0.1; done; sleep 0.3 && done (gdb) bt #0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44 #1 0x00007ffff554ae8f in __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78 #2 0x00007ffff54fbfb2 in __GI_raise (sig=6) at ../sysdeps/posix/raise.c:26 #3 0x000055555568d0c2 in terminate_due_to_signal (sig=6, backtrace_limit=2147483647) at emacs.c:469 #4 0x000055555573de15 in die ( msg=0x555555856798 "frame_size_change_delayed (XFRAME (w->frame)) || glyph_row_slice_p (window_row, frame_row)", file=0x555555856231 "dispnew.c", line=2647) at alloc.c:8058 #5 0x000055555558b697 in build_frame_matrix_from_leaf_window (frame_matrix=0x5555560fed00, w=0x55555603cca8) at dispnew.c:2647 #6 0x000055555558b154 in build_frame_matrix_from_window_tree (matrix=0x5555560fed00, w=0x55555603cca8) at dispnew.c:2536 #7 0x000055555558b13f in build_frame_matrix_from_window_tree (matrix=0x5555560fed00, w=0x555556260390) at dispnew.c:2534 #8 0x000055555558b0e3 in build_frame_matrix (f=0x55555603ca88) at dispnew.c:2520 #9 0x000055555558d0e3 in update_frame (f=0x55555603ca88, force_p=true, inhibit_hairy_id_p=false) at dispnew.c:3336 #10 0x00005555555d0904 in redisplay_internal () at xdisp.c:17518 #11 0x00005555555d1244 in redisplay_preserve_echo_area (from_where=11) at xdisp.c:17801 #12 0x00005555557f5893 in wait_reading_process_output (time_limit=97, nsecs=0, read_kbd=-1, do_display=true, wait_for_cell=0x0, wait_proc=0x0, just_wait_proc=0) at process.c:5584 #13 0x00005555555951d3 in sit_for (timeout=0x186, reading=true, display_option=1) at dispnew.c:6335 This is the failing assertion in frame 5, dispnew.c: (gdb) list 2642 } 2643 2644 #ifdef GLYPH_DEBUG 2645 /* Window row window_y must be a slice of frame row 2646 frame_y. */ 2647 eassert (frame_size_change_delayed (XFRAME (w->frame)) 2648 || glyph_row_slice_p (window_row, frame_row)); 2649 2650 /* If rows are in sync, we don't have to copy glyphs because 2651 frame and window share glyphs. */ Both conditions: frame_size_change_delayed (XFRAME (w->frame) glyph_row_slice_p (window_row, frame_row) are false. I don't know which one should be true in this case. This is the part about being delayed. (gdb) p delayed_size_change $15 = false glyph_row_slice_p contains this code: struct glyph *window_glyph_start = window_row->glyphs[0]; struct glyph *frame_glyph_start = frame_row->glyphs[0]; struct glyph *frame_glyph_end = frame_row->glyphs[LAST_AREA]; return (frame_glyph_start <= window_glyph_start && window_glyph_start < frame_glyph_end); The first part of the condition is false: (gdb) p frame_row->glyphs[0] $24 = (struct glyph *) 0x7ffff0f414c0 (gdb) p window_row->glyphs[0] $25 = (struct glyph *) 0x7ffff088b430 (gdb) p frame_row->glyphs[0] <= window_row->glyphs[0] $26 = 0 (gdb) The second part is true: (gdb) p window_row->glyphs[0] $29 = (struct glyph *) 0x7ffff088b430 (gdb) p frame_row->glyphs[LAST_AREA] $30 = (struct glyph *) 0x7ffff0f41970 (gdb) p window_row->glyphs[0] < frame_row->glyphs[LAST_AREA] $31 = 1 (gdb) Since the second part is true, I'm guessing that the first part should also be true. So the error lies in frame_glyph_start <= window_glyph_start (it should be true and isn't), which means the window row glyph memory is not contained in the frame row glyph memory. I can research this further as I learn about terminal code. I report this here to separate this simple bug from bug 71289 which is about GC. Note that I'm not seeing the cmcheckmagic error mentioned in bug 71289 anymore. I may have seen it in an older build. They may still happen if the build_frame_matrix_from_leaf_window error doesn't happen first. Extra data (this is from a case in which I used the autoresizer): (gdb) p (struct frame) w->frame $14 = { header = { size = 93825003499509 }, name = XIL(0x555556240b1d), icon_name = XIL(0), title = XIL(0x55555620e445), last_mouse_device = XIL(0x7ffff4ac4307), focus_frame = XIL(0x7ffff4ac42ff), root_window = make_fixnum(22), selected_window = XIL(0), old_selected_window = make_fixnum(22), minibuffer_window = XIL(0x555556198ac5), param_alist = XIL(0x7ffff09bd523), scroll_bars = XIL(0), condemned_scroll_bars = XIL(0x555556198ac5), menu_bar_items = XIL(0x55555601341d), face_hash_table = XIL(0x55555601344d), menu_bar_vector = XIL(0x55555601347d), buffer_predicate = make_fixnum(1), buffer_list = XIL(0), buried_buffer_list = XIL(0x30), tool_bar_position = XIL(0), tab_bar_items = XIL(0x30), tool_bar_items = XIL(0), face_cache = 0x0, last_tab_bar_item = 0, menu_bar_items_used = 0, current_pool = 0x7ffff09bd4e3, desired_pool = 0x30, desired_matrix = 0x5555561fc7c4, current_matrix = 0x555556050b70, glyphs_initialized_p = false, resized_p = false, default_face_done_p = false, already_hscrolled_p = false, updated_p = false, fonts_changed = false, cursor_type_changed = false, redisplay = false, visible = 1, iconified = false, garbaged = true, wants_modeline = false, auto_raise = false, auto_lower = false, no_split = false, explicit_name = true, window_change = false, window_state_change = true, mouse_moved = false, pointer_invisible = false, frozen_window_starts = false, output_method = output_android, can_set_window_size = true, after_make_frame = false, tab_bar_redisplayed = true, tab_bar_resized = false, --Type <RET> for more, q to quit, c to continue without paging-- tool_bar_redisplayed = true, tool_bar_resized = false, inhibit_horizontal_resize = true, inhibit_vertical_resize = false, face_change = true, inhibit_clear_image_cache = false, new_size_p = true, was_invisible = false, select_mini_window_flag = true, change_stamp = 12, number_of_windows = 1, tab_bar_lines = 210, tab_bar_height = 0, n_tab_bar_rows = 1, n_tab_bar_items = 0, tool_bar_lines = 1, tool_bar_height = 22, n_tool_bar_rows = 2, n_tool_bar_items = 22, decode_mode_spec_buffer = 0x1600000002 <error: Cannot access memory at address 0x1600000002>, insert_line_cost = 0x1600000001, delete_line_cost = 0x2, insert_n_lines_cost = 0x0, delete_n_lines_cost = 0x0, text_cols = 0, text_lines = 0, text_width = 0, text_height = 0, total_cols = 0, total_lines = 0, pixel_width = 1, pixel_height = 0, new_width = -1, new_height = -1, left_pos = 0, top_pos = 0, win_gravity = 0, size_hint_flags = 0, border_width = -1, child_frame_border_width = -1, internal_border_width = 1, right_divider_width = 1, bottom_divider_width = 0, left_fringe_width = 0, right_fringe_width = 0, fringe_cols = 0, menu_bar_lines = 0, menu_bar_height = 0, column_width = 0, line_height = 0, terminal = 0x0, output_data = { tty = 0x0, x = 0x0, w32 = 0x0, ns = 0x0, pgtk = 0x0, haiku = 0x0, --Type <RET> for more, q to quit, c to continue without paging-- android = 0x0 }, font_driver_list = 0xffffffff00000000, desired_cursor = NO_CURSOR, cursor_width = 0, blink_off_cursor = FILLED_BOX_CURSOR, blink_off_cursor_width = -1, config_scroll_bar_width = -1, config_scroll_bar_cols = 1, config_scroll_bar_height = -1, config_scroll_bar_lines = -1, cost_calculation_baud_rate = 624886, alpha = {1.4128247976246783e-309, 0}, alpha_background = 3.1349799205870865e-318, gamma = 2.0000000223608367, extra_line_spacing = 1444514496, background_pixel = 0, foreground_pixel = 93825003500664 } (gdb) p *window_row $20 = { glyphs = {0x7ffff088b430, 0x7ffff088b430, 0x7ffff088b850, 0x7ffff088b850}, used = {0, 22, 0, 0}, hash = 122398255, x = 0, y = 0, pixel_width = 21, ascent = 0, height = 1, phys_ascent = 0, phys_height = 1, visible_height = 1, extra_line_spacing = 0, start = { pos = { charpos = 1, bytepos = 1 }, overlay_string_index = -1, string_pos = { charpos = -1, bytepos = -1 }, dpvec_index = -1 }, end = { pos = { charpos = 22, bytepos = 22 }, overlay_string_index = -1, string_pos = { charpos = -1, bytepos = -1 }, dpvec_index = -1 }, minpos = { charpos = 1, bytepos = 1 }, maxpos = { charpos = 22, bytepos = 22 }, overlay_arrow_bitmap = 0, left_user_fringe_bitmap = 0, right_user_fringe_bitmap = 0, left_fringe_bitmap = 0, right_fringe_bitmap = 0, left_user_fringe_face_id = 0, right_user_fringe_face_id = 0, left_fringe_face_id = 0, right_fringe_face_id = 0, left_fringe_offset = 0, right_fringe_offset = 0, fringe_bitmap_periodic_p = false, redraw_fringe_bitmaps_p = false, --Type <RET> for more, q to quit, c to continue without paging-- enabled_p = true, truncated_on_left_p = false, truncated_on_right_p = false, continued_p = true, displays_text_p = true, ends_at_zv_p = false, fill_line_p = false, indicate_empty_line_p = false, contains_overlapping_glyphs_p = false, full_width_p = false, mode_line_p = false, tab_line_p = false, overlapped_p = false, ends_in_middle_of_char_p = false, starts_in_middle_of_char_p = false, overlapping_p = false, mouse_face_p = false, ends_in_newline_from_string_p = false, exact_window_width_line_p = false, cursor_in_fringe_p = false, ends_in_ellipsis_p = false, indicate_bob_p = false, indicate_top_line_p = false, indicate_eob_p = false, indicate_bottom_line_p = false, reversed_p = false, stipple_p = false, continuation_lines_width = 0 } (gdb) p *frame_row $21 = { glyphs = {0x7ffff0f414c0, 0x7ffff0f414c0, 0x7ffff0f41970, 0x7ffff0f41970}, used = {0, 0, 0, 0}, hash = 0, x = 0, y = 0, pixel_width = 0, ascent = 0, height = 0, phys_ascent = 0, phys_height = 0, visible_height = 0, extra_line_spacing = 0, start = { pos = { charpos = 0, bytepos = 0 }, overlay_string_index = 0, string_pos = { charpos = 0, bytepos = 0 }, dpvec_index = 0 }, end = { pos = { charpos = 0, bytepos = 0 }, overlay_string_index = 0, string_pos = { charpos = 0, bytepos = 0 }, dpvec_index = 0 }, minpos = { charpos = 0, bytepos = 0 }, maxpos = { charpos = 0, bytepos = 0 }, overlay_arrow_bitmap = 0, left_user_fringe_bitmap = 0, right_user_fringe_bitmap = 0, left_fringe_bitmap = 0, right_fringe_bitmap = 0, left_user_fringe_face_id = 0, right_user_fringe_face_id = 0, left_fringe_face_id = 0, right_fringe_face_id = 0, left_fringe_offset = 0, right_fringe_offset = 0, fringe_bitmap_periodic_p = false, redraw_fringe_bitmaps_p = false, --Type <RET> for more, q to quit, c to continue without paging-- enabled_p = true, truncated_on_left_p = false, truncated_on_right_p = false, continued_p = false, displays_text_p = false, ends_at_zv_p = false, fill_line_p = false, indicate_empty_line_p = false, contains_overlapping_glyphs_p = false, full_width_p = false, mode_line_p = false, tab_line_p = false, overlapped_p = false, ends_in_middle_of_char_p = false, starts_in_middle_of_char_p = false, overlapping_p = false, mouse_face_p = false, ends_in_newline_from_string_p = false, exact_window_width_line_p = false, cursor_in_fringe_p = false, ends_in_ellipsis_p = false, indicate_bob_p = false, indicate_top_line_p = false, indicate_eob_p = false, indicate_bottom_line_p = false, reversed_p = false, stipple_p = false, continuation_lines_width = 0 } (gdb) In GNU Emacs 31.0.50 (build 3, x86_64-pc-linux-gnu) of 2024-09-01 built on sonn Repository revision: 99a03ddb2d43d67577814b96e40ec069739b6421 Repository branch: master System Description: Devuan GNU/Linux 5 (daedalus) Configured using: 'configure --prefix=/opt/dc/emacs/ --without-lcms2 --without-libsystemd --without-dbus --without-sound --with-mailutils --with-native-compilation --without-modules --with-x-toolkit=no --without-xim --without-imagemagick --without-xft --without-harfbuzz --without-libotf --without-xwidgets --without-xpm --with-tiff=no --without-tiff --without-jpeg --without-gif --without-png --without-webp --without-rsvg --without-cairo --without-x 'CFLAGS=-g3 -O3'' Configured features: GMP GNUTLS LIBSELINUX LIBXML2 NATIVE_COMP NOTIFY INOTIFY PDUMPER SECCOMP SQLITE3 THREADS XIM ZLIB Important settings: value of $LANG: en_US.UTF-8 value of $XMODIFIERS: @im=SCIM locale-coding-system: utf-8-unix Major mode: Dired by name Minor modes in effect: xterm-mouse-mode: t server-mode: t gnus-dired-mode: t savehist-mode: t recentf-mode: t hexl-follow-ascii: t helm-mode: t helm-minibuffer-history-mode: t async-bytecomp-package-mode: t jdecomp-mode: t projectile-mode: t override-global-mode: t rcirc-track-minor-mode: t yas-global-mode: t yas-minor-mode: t unpackaged/org-export-html-with-useful-ids-mode: t minibuffer-depth-indicate-mode: t global-so-long-mode: t display-time-mode: t global-hl-line-mode: t xclip-mode: t tooltip-mode: t global-eldoc-mode: t show-paren-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t minibuffer-regexp-mode: t buffer-read-only: t column-number-mode: t line-number-mode: t indent-tabs-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: /w/helm/helm-files hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-files /w/helm/helm-comint hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-comint /w/helm/helm-elisp-package hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-elisp-package /w/helm/helm-external hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-external /w/helm/helm-easymenu hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-easymenu /w/helm/helm-font hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-font /w/helm/helm-imenu hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-imenu /w/helm/helm-x-files hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-x-files /w/helm/helm-regexp hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-regexp /w/helm/helm-net hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-net /w/helm/helm-ring hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-ring /w/helm/helm-find hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-find /w/helm/helm-misc hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-misc /w/helm/helm-occur hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-occur /w/helm/helm-sys hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-sys /w/helm/helm-types hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-types /w/helm/helm-elisp hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-elisp /w/helm/helm-adaptive hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-adaptive /w/helm/helm-shell hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-shell /w/helm/helm-id-utils hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-id-utils /w/helm/helm-bookmark hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-bookmark /w/helm/helm-mode hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-mode /w/helm/helm-eshell hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-eshell /w/helm/helm-dabbrev hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-dabbrev /w/helm/helm-grep hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-grep /w/helm/helm-color hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-color /w/helm/helm-help hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-help /w/helm/helm-buffers hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-buffers /w/helm/helm-locate hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-locate /w/helm/helm-tags hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-tags /w/helm/helm-autoloads hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-autoloads /w/helm/helm-info hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-info /w/helm/helm-semantic hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-semantic /w/helm/helm-command hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-command /w/helm/helm-utils hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-utils /w/helm/helm-eval hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-eval /w/helm/helm-for-files hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-for-files /w/helm/helm-man hides /home/dc/.emacs.d/elpa/helm-20191101.641/helm-man /w/helm/helm-multi-match hides /home/dc/.emacs.d/elpa/helm-core-20191031.1931/helm-multi-match /w/helm/helm-lib hides /home/dc/.emacs.d/elpa/helm-core-20191031.1931/helm-lib /w/helm/helm-source hides /home/dc/.emacs.d/elpa/helm-core-20191031.1931/helm-source /w/helm/helm hides /home/dc/.emacs.d/elpa/helm-core-20191031.1931/helm /home/dc/.emacs.d/elpa/transient-20220717.1713/transient hides /opt/dc/emacs/share/emacs/31.0.50/lisp/transient /w/org-mode/lisp/org-fold-core hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-fold-core /w/org-mode/lisp/ob-haskell hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-haskell /w/org-mode/lisp/org-plot hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-plot /w/org-mode/lisp/ox-icalendar hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ox-icalendar /w/org-mode/lisp/org-footnote hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-footnote /w/org-mode/lisp/org-archive hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-archive /w/org-mode/lisp/ob-exp hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-exp /w/org-mode/lisp/ob-octave hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-octave /w/org-mode/lisp/oc-natbib hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/oc-natbib /w/org-mode/lisp/org-num hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-num /w/org-mode/lisp/ob-processing hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-processing /w/org-mode/lisp/org-mouse hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-mouse /w/org-mode/lisp/ob-core hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-core /w/org-mode/lisp/ob-awk hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-awk /w/org-mode/lisp/org-table hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-table /w/org-mode/lisp/org-lint hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-lint /w/org-mode/lisp/oc-basic hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/oc-basic /w/org-mode/lisp/ob-scheme hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-scheme /w/org-mode/lisp/ox-latex hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ox-latex /w/org-mode/lisp/org-loaddefs hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-loaddefs /w/org-mode/lisp/ob-table hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-table /w/org-mode/lisp/ob-shell hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-shell /w/org-mode/lisp/org hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org /w/org-mode/lisp/ol-man hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol-man /w/org-mode/lisp/ol-rmail hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol-rmail /w/org-mode/lisp/ox-man hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ox-man /w/org-mode/lisp/org-cycle hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-cycle /w/org-mode/lisp/org-datetree hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-datetree /w/org-mode/lisp/ol-mhe hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol-mhe /w/org-mode/lisp/ob-css hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-css /w/org-mode/lisp/org-fold hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-fold /w/org-mode/lisp/ob-lilypond hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-lilypond /w/org-mode/lisp/ob-comint hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-comint /w/org-mode/lisp/ob-plantuml hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-plantuml /w/org-mode/lisp/ol-bbdb hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol-bbdb /w/org-mode/lisp/ox-ascii hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ox-ascii /w/org-mode/lisp/ob-python hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-python /w/org-mode/lisp/ob-ref hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-ref /w/org-mode/lisp/ob-js hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-js /w/org-mode/lisp/ox-md hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ox-md /w/org-mode/lisp/oc hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/oc /w/org-mode/lisp/org-keys hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-keys /w/org-mode/lisp/org-feed hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-feed /w/org-mode/lisp/org-capture hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-capture /w/org-mode/lisp/org-ctags hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-ctags /w/org-mode/lisp/ob-lob hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-lob /w/org-mode/lisp/ob-forth hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-forth /w/org-mode/lisp/ob-clojure hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-clojure /w/org-mode/lisp/ob-sass hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-sass /w/org-mode/lisp/ol-eshell hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol-eshell /w/org-mode/lisp/org-timer hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-timer /w/org-mode/lisp/ob-R hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-R /w/org-mode/lisp/org-src hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-src /w/org-mode/lisp/ox-koma-letter hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ox-koma-letter /w/org-mode/lisp/ob-tangle hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-tangle /w/org-mode/lisp/ob-matlab hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-matlab /w/org-mode/lisp/org-macro hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-macro /w/org-mode/lisp/ob-makefile hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-makefile /w/org-mode/lisp/ox-texinfo hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ox-texinfo /w/org-mode/lisp/ob-org hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-org /w/org-mode/lisp/ol-docview hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol-docview /w/org-mode/lisp/org-list hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-list /w/org-mode/lisp/ob-eval hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-eval /w/org-mode/lisp/org-element hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-element /w/org-mode/lisp/ob hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob /w/org-mode/lisp/ob-sqlite hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-sqlite /w/org-mode/lisp/org-clock hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-clock /w/org-mode/lisp/org-compat hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-compat /w/org-mode/lisp/org-mobile hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-mobile /w/org-mode/lisp/ol hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol /w/org-mode/lisp/ob-groovy hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-groovy /w/org-mode/lisp/org-goto hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-goto /w/org-mode/lisp/ob-emacs-lisp hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-emacs-lisp /w/org-mode/lisp/ol-eww hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol-eww /w/org-mode/lisp/org-tempo hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-tempo /w/org-mode/lisp/oc-csl hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/oc-csl /w/org-mode/lisp/ob-ruby hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-ruby /w/org-mode/lisp/org-crypt hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-crypt /w/org-mode/lisp/ol-irc hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol-irc /w/org-mode/lisp/org-faces hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-faces /w/org-mode/lisp/ob-latex hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-latex /w/org-mode/lisp/org-colview hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-colview /w/org-mode/lisp/ol-bibtex hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol-bibtex /w/org-mode/lisp/ob-lua hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-lua /w/org-mode/lisp/org-protocol hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-protocol /w/org-mode/lisp/org-attach-git hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-attach-git /w/org-mode/lisp/ob-screen hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-screen /w/org-mode/lisp/org-agenda hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-agenda /w/org-mode/lisp/org-persist hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-persist /w/org-mode/lisp/ob-sql hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-sql /w/org-mode/lisp/ob-gnuplot hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-gnuplot /w/org-mode/lisp/ob-sed hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-sed /w/org-mode/lisp/ol-gnus hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol-gnus /w/org-mode/lisp/org-inlinetask hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-inlinetask /w/org-mode/lisp/ox-html hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ox-html /w/org-mode/lisp/oc-biblatex hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/oc-biblatex /w/org-mode/lisp/org-pcomplete hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-pcomplete /w/org-mode/lisp/ob-perl hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-perl /w/org-mode/lisp/org-version hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-version /w/org-mode/lisp/org-indent hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-indent /w/org-mode/lisp/org-refile hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-refile /w/org-mode/lisp/ob-julia hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-julia /w/org-mode/lisp/ol-info hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol-info /w/org-mode/lisp/ol-doi hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol-doi /w/org-mode/lisp/org-habit hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-habit /w/org-mode/lisp/org-entities hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-entities /w/org-mode/lisp/ox-publish hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ox-publish /w/org-mode/lisp/org-duration hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-duration /w/org-mode/lisp/org-element-ast hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-element-ast /w/org-mode/lisp/ob-ditaa hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-ditaa /w/org-mode/lisp/ob-dot hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-dot /w/org-mode/lisp/ob-C hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-C /w/org-mode/lisp/ox-org hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ox-org /w/org-mode/lisp/ox-beamer hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ox-beamer /w/org-mode/lisp/ob-fortran hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-fortran /w/org-mode/lisp/ob-maxima hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-maxima /w/org-mode/lisp/ob-eshell hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-eshell /w/org-mode/lisp/ol-w3m hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ol-w3m /w/org-mode/lisp/org-id hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-id /w/org-mode/lisp/ox-odt hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ox-odt /w/org-mode/lisp/ob-java hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-java /w/org-mode/lisp/ob-calc hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-calc /w/org-mode/lisp/org-attach hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-attach /w/org-mode/lisp/ob-ocaml hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-ocaml /w/org-mode/lisp/oc-bibtex hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/oc-bibtex /w/org-mode/lisp/ox hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ox /w/org-mode/lisp/ob-lisp hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/ob-lisp /w/org-mode/lisp/org-macs hides /opt/dc/emacs/share/emacs/31.0.50/lisp/org/org-macs /w/flim/sasl hides /opt/dc/emacs/share/emacs/31.0.50/lisp/net/sasl /home/dc/.emacs.d/elpa/hierarchy-20190425.842/hierarchy hides /opt/dc/emacs/share/emacs/31.0.50/lisp/emacs-lisp/hierarchy Features: (shadow emacsbug rng-xsd xsd-regexp rng-cmpct rng-nxml rng-valid nxml-mode nxml-outln nxml-rap view mhtml-mode js c-ts-common cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs ox-texinfo ox-odt rng-loc rng-uri rng-parse rng-match rng-dt rng-util rng-pttrn nxml-parse nxml-ns nxml-enc xmltok nxml-util ox-latex ox-icalendar ox-html table ox-ascii ox-publish ox make-mode eglot external-completion jsonrpc xref flymake python project emmet-mode css-mode sgml-mode facemenu imenu solar cal-dst holidays holiday-loaddefs mule-util cal-iso org-agenda w3m-form textsec uni-scripts idna-mapping ucs-normalize uni-confusable textsec-check w3m-symbol w3m-bookmark elmo-internal mel-q-ccl elmo-multi elmo-maildir modb-standard wl-template wl-fldmgr wl-score wl-demo wl-thread wl-action wl wl-draft wl-folder elmo-nntp elmo-net elmo-cache elmo-map elmo-dop ps-print ps-print-loaddefs lpr elmo-filter wl-summary wl-refile wl-message wl-mime mime-play filename mime-edit mime-setup mail-mime-setup semi-setup smtp sasl sasl-anonymous sasl-login sasl-plain wl-e21 wl-highlight invisible inv-23 elmo-mime mmelmo-buffer mmelmo-imap mmimap mmbuffer wl-address pldap wl-util wl-vars wl-version modb-generic elmo-flag elmo-localdir elmo elmo-signal elmo-msgdb modb modb-entity elmo-date eword-encode mime-parse elmo-util elmo-vars elmo-version misearch multi-isearch face-remap org-duration vc-hg ffap helm-git-grep smerge-mode help-fns radix-tree diff winner tramp-archive tramp-gvfs xterm-keybinder xt-mouse term/rxvt term/xterm xterm vc-mtn beancount oc-basic ol-eww eww url-queue mm-url ol-rmail ol-mhe ol-irc ol-info ol-gnus nnselect gnus-art mm-uu mml2015 mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill kinsoku url-file svg dom gnus-group gnus-undo gnus-start gnus-dbus dbus gnus-cloud nnimap nnmail mail-source utf7 nnoo gnus-spec gnus-int gnus-range message sendmail yank-media puny rfc822 mml mml-sec epa epg rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums gmm-utils mailheader gnus-win gnus nnheader gnus-util mail-utils range mm-util mail-prsvr ol-docview ol-bibtex bibtex ol-bbdb ol-w3m ol-doi org-link-doi dired-aux vc-git diff-mode track-changes vc-dispatcher server hideshow quail rot13 git-link skeleton bustrofedon dired-filetype-face dired-tar gnus-dired dired-x mime-w3m mime-view mime-conf calist semi-def mime mmgeneric eword-decode mel path-util pces pces-e20 pces-20 mime-def mcs-e20 mcs-20 mcharset std11 ccl pccl pccl-20 broken static luna alist apel-ver product w3m-lnum w3m doc-view timezone w3m-hist bookmark-w3m w3m-ems w3m-favicon w3m-image w3m-fb tab-line w3m-proc w3m-util savehist tramp-cache time-stamp tramp-sh recentf tree-widget em-term term ehelp esh-ext esh-proc esh-opt esh-io esh-arg esh-module esh-module-loaddefs esh-util zone-select jka-compr zone binview calc calc-loaddefs calc-macs hexl generic generic-x boxquote rect rainbow-delimiters rainbow-mode color magit-autorevert magit-git magit-base magit-section crm dash compat autorevert fc flashcard-sm5 flashcard keywiz gamegrid tt-mode helm-mode helm-misc helm-elisp helm-eval edebug helm-sys helm-for-files helm-bookmark helm-adaptive helm-info bookmark fringe helm-external helm-net xml helm-files image-dired image-dired-tags image-dired-external image-dired-util image-mode dired dnd dired-loaddefs exif filenotify tramp trampver tramp-integration files-x tramp-message tramp-compat shell tramp-loaddefs helm-buffers helm-occur helm-tags helm-locate helm-grep helm-regexp helm-utils helm-help helm-types helm helm-global-bindings helm-easymenu helm-core async-bytecomp helm-source helm-multi-match helm-lib async helm-autoloads diary-lib diary-loaddefs chuck-mode jdecomp arc-mode archive-mode cus-edit cus-load projectile lisp-mnt ibuf-ext edmacro kmacro use-package-bind-key bind-key use-package-core rcirc parse-time iso8601 offlineimap hexrgb yasnippet mailabbrev org-crypt org-capture org-attach org-protocol org-clock cal-move org-inlinetask org-superstar org-element org-persist xdg avl-tree generator org-test ert-x ert pp ewoc debug backtrace org-id org-refile org-element-ast inline org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-src sh-script smie treesit executable ob-comint org-pcomplete pcomplete org-list org-footnote org-faces org-entities time-date noutline outline ob-emacs-lisp ob-core ob-eval org-cycle org-table ol org-fold org-fold-core org-keys oc org-loaddefs thingatpt find-func cal-menu calendar cal-loaddefs org-version org-compat org-macs format-spec ibuf-macs ibuffer ibuffer-loaddefs mb-depth comp comp-cstr warnings comp-run comp-common rx advice mwheel easy-mmode so-long longlines grep compile text-property-search comint regexp-opt ansi-osc ansi-color ring revbufs derived disp-table hide-mode-line time image hl-line color-theme wid-edit reporter xclip finder-inf elp boxquote-autoloads calfw-autoloads calfw-gcal-autoloads calfw-ical-autoloads calfw-org-autoloads csv-mode-autoloads debbugs-autoloads emacsql-psql-autoloads emacsql-autoloads emmet-mode-autoloads feature-mode-autoloads git-link-autoloads gnuplot-autoloads google-translate-autoloads haskell-mode-autoloads cl-extra help-mode helm-sql-connect-autoloads htmlize-autoloads idle-org-agenda-autoloads jabber-autoloads fsm-autoloads jdecomp-autoloads jedi-autoloads jedi-core-autoloads jinja2-mode-autoloads json-reformat-autoloads jsonian-autoloads magit-autoloads pcase git-commit-autoloads magit-section-autoloads mingus-autoloads libmpdee-autoloads mmm-jinja2-autoloads mmm-mode-autoloads oauth2-autoloads org-superstar-autoloads persist-autoloads projectile-autoloads python-environment-autoloads rcirc-color-autoloads srv-autoloads cl terraform-mode-autoloads tmr-autoloads transient-autoloads typescript-mode-autoloads vimrc-mode-autoloads vue-html-mode-autoloads with-editor-autoloads xclip-autoloads xterm-keybinder-autoloads yasnippet-autoloads zone-nyan-autoloads info tool-bar dash-autoloads package browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs icons password-cache json subr-x map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads inotify multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 3160052 412323) (symbols 48 62684 6) (strings 32 325028 29395) (string-bytes 1 16950772) (vectors 16 304225) (vector-slots 8 4727886 155782) (floats 8 1843 114209) (intervals 56 81227 1605) (buffers 984 212))
Daniel Clemente <n142857@HIDDEN>
:bug-gnu-emacs@HIDDEN
.
Full text available.bug-gnu-emacs@HIDDEN
:bug#73022
; Package emacs
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.