From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#45898: 27.1; wedged in redisplay again Date: Sat, 25 Jun 2022 12:57:55 +0300 Message-ID: <83a6a1awv0.fsf@gnu.org> References: <46b65e3f-cf3d-a3f2-9a9a-100e58274ff6@jovi.net> <8335gf5er3.fsf@gnu.org> <87leu686z4.fsf@gnus.org> <83sfoe2k0j.fsf@gnu.org> <87zgim6qtt.fsf@gnus.org> <83mtem2dc9.fsf@gnu.org> <87y1y63qmq.fsf@gnus.org> <83h74t3k5u.fsf@gnu.org> <87tu8sx569.fsf@gnus.org> <83v8t6us8t.fsf@gnu.org> <87zgiinptk.fsf@gnus.org> <83mteiufih.fsf@gnu.org> <877d5kojbo.fsf@gnus.org> <83zgigu3e0.fsf@gnu.org> <500e4b9c69f2a90e7cf05b956178d71b@webmail.orcon.net.nz> <835yl3tnv3.fsf@gnu.org> <83iloyo0x7.fsf@gnu.org> <83mte5jukr.fsf@gnu.org> <837d57gbed.fsf@gnu.org> <83o7yicx3p.fsf@gnu.org> <0B5FE52E-BC81-4A05-86F1-91C6AFCB6F7D@gmail.com> <83r13db6hp.fsf@gnu.org> <56F03F59-40AD-48F2-92C8-9858C2423327@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="40367"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 45898@debbugs.gnu.org To: Gerd =?UTF-8?Q?M=C3=B6llmann?= Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Jun 25 11:59:16 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1o52ZP-000AML-IX for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 25 Jun 2022 11:59:15 +0200 Original-Received: from localhost ([::1]:54248 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o52ZO-0008Vp-3C for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 25 Jun 2022 05:59:14 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:50812) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o52ZC-0008Vf-Qc for bug-gnu-emacs@gnu.org; Sat, 25 Jun 2022 05:59:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:50270) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o52ZC-0005mc-J0 for bug-gnu-emacs@gnu.org; Sat, 25 Jun 2022 05:59:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1o52ZC-0007Km-EY for bug-gnu-emacs@gnu.org; Sat, 25 Jun 2022 05:59:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 25 Jun 2022 09:59:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 45898 X-GNU-PR-Package: emacs Original-Received: via spool by 45898-submit@debbugs.gnu.org id=B45898.165615108928128 (code B ref 45898); Sat, 25 Jun 2022 09:59:02 +0000 Original-Received: (at 45898) by debbugs.gnu.org; 25 Jun 2022 09:58:09 +0000 Original-Received: from localhost ([127.0.0.1]:44167 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o52YL-0007Jc-Iv for submit@debbugs.gnu.org; Sat, 25 Jun 2022 05:58:09 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:37492) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o52YG-0007J5-RG for 45898@debbugs.gnu.org; Sat, 25 Jun 2022 05:58:08 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:56608) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o52YB-0005hY-CV; Sat, 25 Jun 2022 05:57:59 -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=riZMqochTr7kyPmpXLk51PrznTzve7+SbSpzmUm8O3A=; b=jwitZVuzB5SLDFsLSFLz SQAsHUjvEM5BbJ2yV+yq8wkUxMjmvnelr8nquMcUKq/q2mer4aYAVyJLipTaZfQByYfDQrtmhx90M v0xjneXLw3i7GfxzWeN0g8zvXfgBiRQxct7GGa/AFf6YR+jk4MmIgWk/+BBjcDCkLf8l7HlofRM05 rhJV533cEZBz7s42SJisL7FqHesPrLQ3sEr0ZsyFrDITbYS60Xv/FIYg+9mLJgz2Iv3yhCUxtpbgU RLExSD/QB3AuDS4/ThtU5r28nnA+Drj8dHZYrvdQUiQ2SWnkBvHxzjYTOKCXZTnE8V5zBgNF3oKMG H8KNRFCqoKXTzg==; Original-Received: from [87.69.77.57] (port=3668 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o52YA-0003NL-S4; Sat, 25 Jun 2022 05:57:59 -0400 In-Reply-To: <56F03F59-40AD-48F2-92C8-9858C2423327@gmail.com> (message from Gerd =?UTF-8?Q?M=C3=B6llmann?= on Sat, 25 Jun 2022 11:49:42 +0200) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:235244 Archived-At: > From: Gerd Möllmann > Date: Sat, 25 Jun 2022 11:49:42 +0200 > Cc: 45898@debbugs.gnu.org > > Well... update_display_code_iteration_ticks also makes me twitch because I think of the tick/signal business not part of "display". What I have in my head is regexp -> ticks, and iterator -> ticks, where "ticks" would be replaced with some suitable name. I think regexp should also be interrupted with long lines, when we match a line that is too long. Or not? > > Or maybe "ticks" is already a good enough name? We could then simply have update_ticks and good. Or eticks to not confuse it with time ticks, if that ever happens. You mean, just update_ticks? That's too general, IMO. I'd like people to have an idea what that does when they just see the call. But I'm not good with names. > >> (BTW, the call to update the tick in regexp can lead to a GC when the error is signaled, in the same way as > >> in bug 56108 with maybe_quit. So we might need that, too.) > > > > Yes, it could cause GC, but I'm not sure what you mean by "we might > > need that". What is "that" here? > > I meant a fix for that bug. Ah, okay. That will get installed soon, I'm just waiting for Stefan to comment if he has comments. > >> /* True while some display-engine code is working on layout of some > >> window. > > > > The reason for that kludge is the urge to avoid signaling an error > > when regexp or syntax.c is called in the context that is not related > > to any display code whatsoever. Since these functions don't know > > whether they are invoked by some code in Iterator or by Lisp, they > > will count the ticks regardless, and I don't want them to signal an > > error if they happen to count too many ticks. > > You mean a case, where small numbers of ticks sum up by calling these Lisp functions often enough? Actually, I meant something even simpler: a Lisp program that calls, say, regexp search repeatedly, to accumulate enough ticks that would signal an error, thus aborting that Lisp program. > Apart from features I don't know, I don't see any fundamental problem with your approach. Great, thanks.