From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Gregory Heytings Newsgroups: gmane.emacs.bugs Subject: bug#56848: CC Mode fontification bug Date: Sun, 31 Jul 2022 00:16:37 +0000 Message-ID: <8c7321f2f31d5790f916@heytings.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="mFyqIKSFBq" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="32293"; mail-complaints-to="usenet@ciao.gmane.io" To: 56848@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Jul 31 02:17:10 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 1oHwdq-0008Ao-DV for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 31 Jul 2022 02:17:10 +0200 Original-Received: from localhost ([::1]:52998 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oHwdo-0003aS-MW for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 30 Jul 2022 20:17:08 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:36038) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oHwdi-0003a5-BD for bug-gnu-emacs@gnu.org; Sat, 30 Jul 2022 20:17:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:46208) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oHwdi-0008Pv-2N for bug-gnu-emacs@gnu.org; Sat, 30 Jul 2022 20:17:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oHwdh-000109-Oi for bug-gnu-emacs@gnu.org; Sat, 30 Jul 2022 20:17:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Gregory Heytings Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 31 Jul 2022 00:17:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 56848 X-GNU-PR-Package: emacs X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.16592266053817 (code B ref -1); Sun, 31 Jul 2022 00:17:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 31 Jul 2022 00:16:45 +0000 Original-Received: from localhost ([127.0.0.1]:35957 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oHwdQ-0000zV-Kx for submit@debbugs.gnu.org; Sat, 30 Jul 2022 20:16:44 -0400 Original-Received: from lists.gnu.org ([209.51.188.17]:40306) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oHwdO-0000zM-1H for submit@debbugs.gnu.org; Sat, 30 Jul 2022 20:16:42 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:36026) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oHwdN-0003YU-R7 for bug-gnu-emacs@gnu.org; Sat, 30 Jul 2022 20:16:41 -0400 Original-Received: from heytings.org ([95.142.160.155]:58036) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oHwdM-0008PE-3s for bug-gnu-emacs@gnu.org; Sat, 30 Jul 2022 20:16:41 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heytings.org; s=20220101; t=1659226598; bh=Bwu3d8nGknr2Ck/r6sjoHwAZ6T1dmkOj834O8yaNa8Q=; h=Date:From:To:Subject:Message-ID:From; b=cs1B7AOv5sNpKVuhjNSxrbSbUHq8B72sMCbOAy1BCWHSKpyzUmFNBLhCO3oqDhN+X cOslSCVVRTxB+R7kSPjEeVxcRyUOK4/ENih0ZOhA/JYCasiosy0d9/11sga11zK5Ne zCpbjvM+Oh8WGuiRb2HPkvsU7FW3FPftdeBVR/AlXebTA3WgiFDl1Av0nnItCyN38/ 0HxhD8/XTyxPhcf/NfDys/aV0/BJiXmcwx5/05LKHWem4slXosq62p8KETsPeZXe28 zs2Ro75zx3xQ4ZGWBpw7dpDlc2ZcDDFxs/JGMbxdCpHfCE2nFAOdV4NEMOFZhrHcDX ubSymfapHlp2g== Received-SPF: pass client-ip=95.142.160.155; envelope-from=gregory@heytings.org; helo=heytings.org X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 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, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action 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:238312 Archived-At: --mFyqIKSFBq Content-Type: text/plain; format=flowed; charset=us-ascii Recipe: emacs -Q C-x C-f src/xdisp.c RET M-g c 28 RET ;; take note of the word there: "window" M-: (get-char-property 28 'fontified) RET ;; observe that this returns t M-g g 800 RET C-v M-: (get-char-property 28 'fontified) RET ;; observe that this returns nil, because "struct window" is now visible This is a BUG. When font locking has put a fontified property and one of the font-lock-*-faces on characters in the buffer, a mode should not undo that unless it has a very good reason to do so. Otherwise scrolling again through an already fontified buffer calls fontification functions again without reason. Patch attached. With the patch, scrolling again through an already fontified buffer is ~25% faster. --mFyqIKSFBq Content-Type: text/x-diff; name=Be-conservative-with-occurrences-of-newly-found-types.patch Content-Transfer-Encoding: base64 Content-ID: <8c7321f2f35a1ff97a0a@heytings.org> Content-Disposition: attachment; filename=Be-conservative-with-occurrences-of-newly-found-types.patch RnJvbSA0ZjAxN2U3Mjg1MGExOWZhNmJmYmEzMzY2MzY1MmI4YzYzOGJiODI1 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQ0KRnJvbTogR3JlZ29yeSBIZXl0 aW5ncyA8Z3JlZ29yeUBoZXl0aW5ncy5vcmc+DQpEYXRlOiBTdW4sIDMxIEp1 bCAyMDIyIDAwOjA0OjA3ICswMDAwDQpTdWJqZWN0OiBbUEFUQ0hdIEJlIGNv bnNlcnZhdGl2ZSB3aXRoIG9jY3VycmVuY2VzIG9mIG5ld2x5IGZvdW5kIHR5 cGVzLg0KDQoqIGxpc3AvcHJvZ21vZGVzL2NjLWZvbnRzLmVsIChjLWZvbnRp ZnktbmV3LWZvdW5kLXR5cGUpOiBSZW1vdmUgdGhlDQpmb250aWZpZWQgcHJv cGVydHkgb24gb2NjdXJyZW5jZXMgb2YgbmV3bHkgZm91bmQgdHlwZXMgb25s eSB3aGVuDQp0aGV5IGRvIG5vdCB5ZXQgaGF2ZSBhIGZhY2UgcHJvcGVydHku DQotLS0NCiBsaXNwL3Byb2dtb2Rlcy9jYy1mb250cy5lbCB8IDIxICsrKysr KysrKysrLS0tLS0tLS0tLQ0KIDEgZmlsZSBjaGFuZ2VkLCAxMSBpbnNlcnRp b25zKCspLCAxMCBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL2xpc3Av cHJvZ21vZGVzL2NjLWZvbnRzLmVsIGIvbGlzcC9wcm9nbW9kZXMvY2MtZm9u dHMuZWwNCmluZGV4IDYyNTAxMGIwNGIuLjc1OTM2NTc0YTEgMTAwNjQ0DQot LS0gYS9saXNwL3Byb2dtb2Rlcy9jYy1mb250cy5lbA0KKysrIGIvbGlzcC9w cm9nbW9kZXMvY2MtZm9udHMuZWwNCkBAIC0yMjg0LDE2ICsyMjg0LDE3IEBA IGMtZm9udGlmeS1uZXctZm91bmQtdHlwZQ0KIAkgICh3aWRlbikNCiAJICAo Z290by1jaGFyIChwb2ludC1taW4pKQ0KIAkgICh3aGlsZSAocmUtc2VhcmNo LWZvcndhcmQgdGFyZ2V0LXJlIG5pbCB0KQ0KLQkgICAgKHB1dC10ZXh0LXBy b3BlcnR5IChtYXRjaC1iZWdpbm5pbmcgMCkgKG1hdGNoLWVuZCAwKQ0KLQkJ CSAgICAgICAnZm9udGlmaWVkIG5pbCkNCi0JICAgIChkb2xpc3QgKHdpbi1i b3VuZGFyeSB3aW5kb3ctYm91bmRhcmllcykNCi0JICAgICAgKHdoZW4gKGFu ZCAoPCAobWF0Y2gtYmVnaW5uaW5nIDApIChjZHIgd2luLWJvdW5kYXJ5KSkN Ci0JCQkgKD4gKG1hdGNoLWVuZCAwKSAoY2FyIHdpbi1ib3VuZGFyeSkpDQot CQkJIChub3QgYy1yZS1yZWRpc3BsYXktdGltZXIpKQ0KLQkJKHNldHEgYy1y ZS1yZWRpc3BsYXktdGltZXINCi0JCSAgICAgIChydW4td2l0aC10aW1lciAw IG5pbCAjJ2MtZm9yY2UtcmVkaXNwbGF5DQotCQkJCSAgICAgIChjdXJyZW50 LWJ1ZmZlcikNCi0JCQkJICAgICAgKG1hdGNoLWJlZ2lubmluZyAwKSAobWF0 Y2gtZW5kIDApKSkpKSkpKSkpKQ0KKwkgICAgKHVubGVzcyAoZ2V0LWNoYXIt cHJvcGVydHkgKG1hdGNoLWJlZ2lubmluZyAwKSAnZmFjZSkNCisJICAgICAg KHB1dC10ZXh0LXByb3BlcnR5IChtYXRjaC1iZWdpbm5pbmcgMCkgKG1hdGNo LWVuZCAwKQ0KKwkJCQkgJ2ZvbnRpZmllZCBuaWwpDQorCSAgICAgIChkb2xp c3QgKHdpbi1ib3VuZGFyeSB3aW5kb3ctYm91bmRhcmllcykNCisJCSh3aGVu IChhbmQgKDwgKG1hdGNoLWJlZ2lubmluZyAwKSAoY2RyIHdpbi1ib3VuZGFy eSkpDQorCQkJICAgKD4gKG1hdGNoLWVuZCAwKSAoY2FyIHdpbi1ib3VuZGFy eSkpDQorCQkJICAgKG5vdCBjLXJlLXJlZGlzcGxheS10aW1lcikpDQorCQkg IChzZXRxIGMtcmUtcmVkaXNwbGF5LXRpbWVyDQorCQkJKHJ1bi13aXRoLXRp bWVyIDAgbmlsICMnYy1mb3JjZS1yZWRpc3BsYXkNCisJCQkJCShjdXJyZW50 LWJ1ZmZlcikNCisJCQkJCShtYXRjaC1iZWdpbm5pbmcgMCkgKG1hdGNoLWVu ZCAwKSkpKSkpKSkpKSkpDQogDQogDA0KIDs7OyBDLg0KLS0gDQoyLjM1LjEN Cg0K --mFyqIKSFBq--