From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Monnier via "Bug reports for GNU Emacs, the Swiss army knife of text editors" Newsgroups: gmane.emacs.bugs Subject: bug#64596: 30.0.50; On FIXME: in src/buffer.c:1481 (force-mode-line-update) Date: Sun, 16 Jul 2023 10:26:10 -0400 Message-ID: References: <877cr4nez9.fsf@localhost> <83lefj4okb.fsf@gnu.org> <83fs5r3tqv.fsf@gnu.org> <834jm6fppc.fsf@gnu.org> <87a5vyidy6.fsf@localhost> <83sf9qe2ip.fsf@gnu.org> <83a5vxejz6.fsf@gnu.org> <87ttu4gnpt.fsf@localhost> <83351o9m6h.fsf@gnu.org> <87ilakgmjo.fsf@localhost> Reply-To: Stefan Monnier Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="34547"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: Eli Zaretskii , 64596@debbugs.gnu.org To: Ihor Radchenko Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Jul 16 16:27:16 2023 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 1qL2iS-0008iE-J2 for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 16 Jul 2023 16:27:16 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qL2iF-00023a-MX; Sun, 16 Jul 2023 10:27:03 -0400 Original-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 ) id 1qL2iE-00023M-EL for bug-gnu-emacs@gnu.org; Sun, 16 Jul 2023 10:27:02 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qL2iE-0006Ah-5Y for bug-gnu-emacs@gnu.org; Sun, 16 Jul 2023 10:27:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qL2iD-0005Sq-O2 for bug-gnu-emacs@gnu.org; Sun, 16 Jul 2023 10:27:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 16 Jul 2023 14:27:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 64596 X-GNU-PR-Package: emacs Original-Received: via spool by 64596-submit@debbugs.gnu.org id=B64596.168951758520918 (code B ref 64596); Sun, 16 Jul 2023 14:27:01 +0000 Original-Received: (at 64596) by debbugs.gnu.org; 16 Jul 2023 14:26:25 +0000 Original-Received: from localhost ([127.0.0.1]:48366 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qL2hc-0005RK-PB for submit@debbugs.gnu.org; Sun, 16 Jul 2023 10:26:25 -0400 Original-Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:10350) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qL2ha-0005Qy-LN for 64596@debbugs.gnu.org; Sun, 16 Jul 2023 10:26:23 -0400 Original-Received: from pmg1.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 09DB11000C4; Sun, 16 Jul 2023 10:26:17 -0400 (EDT) Original-Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 14E42100097; Sun, 16 Jul 2023 10:26:16 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1689517576; bh=x7QlzWnSuJyoL9mTQKol6LAvX8C3G5epleB0ubRv3O0=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=N+P+UX9OuqFFXc/neZ05LylixTo3USuchVYxphCXAnC+9QmI+y6kuMi4QarRaOucj Dy6FIsPyXS2RtkCgPRkHKwNwinZFY0Sj6stK1pA9g3bIsR5rKROWh+7UtPhXEdpKfG KgbAcWw36cmCy6Wn7pCk78SkZOIWrRQMtmKoZcwp+L55YAcswapqX2HQKbrLx07A2N 5BL63ZJoMGWkKXZt33rAN2LOwPfIgplrL7cesqfyoGfPZxbVrpMOVhIw9phn/NVRZ6 Ro/fq1gfrF2QfsV4iadxyiwP6nTFoEmvnwPLBYAeKh1YR9NU0PlrB7/zdGiKuz0vC8 UEJmz2JwCsPvQ== Original-Received: from pastel (unknown [108.175.226.218]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id DD63612030C; Sun, 16 Jul 2023 10:26:15 -0400 (EDT) In-Reply-To: <87ilakgmjo.fsf@localhost> (Ihor Radchenko's message of "Sun, 16 Jul 2023 10:47:55 +0000") 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-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:265342 Archived-At: >>> I agree about must_be_updated_p. I had exactly same though that it is >>> redundant with redisplay flag when reading the code. >> Look closer, please. The name of the flag might suggest what you say, >> but its usage suggests otherwise. > Do I understand correctly that prevent_display_optimizations_p in > buffer, must_be_updated_p in window, and garbaged in frames all serve > the same purpose of forcing the redisplay? My understanding of the redisplay code is that it's split into 3 part: 1- decide which windows may need to be updated. 2- update the glyph matrix of a window. 3- update the glass by comparing the old glyph matrix and the new one. [ The point between 1 and 2 is made visible to ELisp via `pre-redisplay-function`. ] The `redisplay` bits belong to step (1). The `prevent_display_optimizations_p` OTOH belong to step 2, AFAIU. BTW, I wish those 3 steps were exposed to ELisp, so the top-level of redisplay could be moved to ELisp. This would allow for example `follow-mode` to pick a more appropriate order in which to process the windows at step 2. > Then, why not use uniform naming scheme and have the buffer/window/frame > flags names as maybe_redisplay and must_redisplay instead of different > flag name for different object type? For that someone first needs to have a clear idea of what these things do and how they relate to each other :-) Stefan