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#57207: 29.0.50; Fontification is slow after e7b5912b23 (Improvements to long lines handling) Date: Tue, 16 Aug 2022 10:47:00 +0000 Message-ID: <325f95fd2b7c0cc80613@heytings.org> References: <87bksmx1j1.fsf@localhost> <5900f208367791fbdfe2@heytings.org> <83bksmka08.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="oXy2Hht2lr" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="36800"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 57207@debbugs.gnu.org, yantar92@gmail.com To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Aug 16 12:48:25 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 1oNu7U-0009PD-Vo for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 16 Aug 2022 12:48:25 +0200 Original-Received: from localhost ([::1]:40660 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oNu7T-0008K7-OW for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 16 Aug 2022 06:48:23 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:34152) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oNu78-0008Io-Td for bug-gnu-emacs@gnu.org; Tue, 16 Aug 2022 06:48:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:55304) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oNu78-0002qC-LJ for bug-gnu-emacs@gnu.org; Tue, 16 Aug 2022 06:48:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oNu78-0003NI-5x for bug-gnu-emacs@gnu.org; Tue, 16 Aug 2022 06:48:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Gregory Heytings Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 16 Aug 2022 10:48:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 57207 X-GNU-PR-Package: emacs Original-Received: via spool by 57207-submit@debbugs.gnu.org id=B57207.166064682412785 (code B ref 57207); Tue, 16 Aug 2022 10:48:02 +0000 Original-Received: (at 57207) by debbugs.gnu.org; 16 Aug 2022 10:47:04 +0000 Original-Received: from localhost ([127.0.0.1]:45053 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oNu6B-0003K9-Qm for submit@debbugs.gnu.org; Tue, 16 Aug 2022 06:47:04 -0400 Original-Received: from heytings.org ([95.142.160.155]:55566) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oNu69-0003Jk-QI for 57207@debbugs.gnu.org; Tue, 16 Aug 2022 06:47:02 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heytings.org; s=20220101; t=1660646820; bh=Bb52SaZysO6BvzgiHtONdcTUZnntmp8C06lAxDKF7eQ=; h=Date:From:To:cc:Subject:In-Reply-To:Message-ID:References:From; b=h7USxizKsXTgF6+dvW4gQ1GbSj9yntKsNZzZEabSdTq5fqg1zyJwgvnToXThr7k5Q f/EO6dkoXrfj8SLHXmMRk4SSUVaVVwzN2oHP1tBuGPJGGsEljLFofA+OT676gCYMA2 cHqd6idWXYRMUj/xudwAJCYhFQDiGFZ9CUCby7kFW17t1H1l9uc25Z+JpeE5WtRScN 4yeSRlW9gg5yLXOhyPyA05sal2ymQGGHUmwimOLdgPFsMHswPNaT4vGaIDUwtMXLXH KDs5s80YHfPeLUijyKLE5zTH17WZPbk/ax8/MAdGumevxYH1KMU+uMwEu4qEaHmhSS l7P+Quo0gcJ0w== In-Reply-To: <83bksmka08.fsf@gnu.org> 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:239890 Archived-At: --oXy2Hht2lr Content-Type: text/plain; charset=us-ascii; format=flowed > > Gregory, I suspect that the problem could be in the loop in > redisplay_window, where we look for long lines. Changing visibility in > Org changes text properties, and that causes MODIFF to be incremented. > I actually can cause something similar without Org at all, just by > scrolling fast through xdisp.c. You can put a breakpoint inside the > 'if' that guards the re-evaluation of the long-lines in > redisplay_window, and scroll with C-v through xdisp.c immediately after > visiting it -- I hit the breakpoint from time to time, although there > are no changes to the buffer except faces placed by fontifications. > > jit-lock runs under with-silent-modifications, but that only adjusts > SAVE_MODIFF to create an illusion of unchanged buffer, it doesn't affect > UNCHANGED_MODIFIED. > Indeed, that's problematic: modify_text_properties calls modiff_incr (&MODIFF, 1). I think the safest change would be to use CHARS_MODIFF instead of MODIFF, see attached. Ihor, can you please test that patch and tell us if it solves your problem? --oXy2Hht2lr Content-Type: text/x-diff; name=use_chars_modiff.patch Content-Transfer-Encoding: base64 Content-ID: <325f95fd2b8536a8bdbb@heytings.org> Content-Disposition: attachment; filename=use_chars_modiff.patch ZGlmZiAtLWdpdCBhL3NyYy9idWZmZXIuaCBiL3NyYy9idWZmZXIuaA0KaW5k ZXggNDdiNGJkZjc0OS4uNzdmOWVhMjBhZiAxMDA2NDQNCi0tLSBhL3NyYy9i dWZmZXIuaA0KKysrIGIvc3JjL2J1ZmZlci5oDQpAQCAtMTQ5LDEyICsxNDks MTggQEAgI2RlZmluZSBCVUZfT1ZFUkxBWV9VTkNIQU5HRURfTU9ESUZJRUQo YnVmKSBcDQogI2RlZmluZSBCVUZfQkVHX1VOQ0hBTkdFRChidWYpICgoYnVm KS0+dGV4dC0+YmVnX3VuY2hhbmdlZCkNCiAjZGVmaW5lIEJVRl9FTkRfVU5D SEFOR0VEKGJ1ZikgKChidWYpLT50ZXh0LT5lbmRfdW5jaGFuZ2VkKQ0KIA0K KyNkZWZpbmUgQlVGX0NIQVJTX1VOQ0hBTkdFRF9NT0RJRklFRChidWYpIFwN CisgICgoYnVmKS0+dGV4dC0+Y2hhcnNfdW5jaGFuZ2VkX21vZGlmaWVkKQ0K Kw0KICNkZWZpbmUgVU5DSEFOR0VEX01PRElGSUVEIFwNCiAgIEJVRl9VTkNI QU5HRURfTU9ESUZJRUQgKGN1cnJlbnRfYnVmZmVyKQ0KICNkZWZpbmUgT1ZF UkxBWV9VTkNIQU5HRURfTU9ESUZJRUQgXA0KICAgQlVGX09WRVJMQVlfVU5D SEFOR0VEX01PRElGSUVEIChjdXJyZW50X2J1ZmZlcikNCiAjZGVmaW5lIEJF R19VTkNIQU5HRUQgQlVGX0JFR19VTkNIQU5HRUQgKGN1cnJlbnRfYnVmZmVy KQ0KICNkZWZpbmUgRU5EX1VOQ0hBTkdFRCBCVUZfRU5EX1VOQ0hBTkdFRCAo Y3VycmVudF9idWZmZXIpDQorDQorI2RlZmluZSBDSEFSU19VTkNIQU5HRURf TU9ESUZJRUQgXA0KKyAgQlVGX0NIQVJTX1VOQ0hBTkdFRF9NT0RJRklFRCAo Y3VycmVudF9idWZmZXIpDQogDA0KIC8qIEZ1bmN0aW9ucyB0byBzZXQgUFQg aW4gdGhlIGN1cnJlbnQgYnVmZmVyLCBvciBhbm90aGVyIGJ1ZmZlci4gICov DQogDQpAQCAtMjY4LDYgKzI3NCw5IEBAICNkZWZpbmUgRkVUQ0hfQllURShu KSAqKEJZVEVfUE9TX0FERFIgKChuKSkpDQogICAgICAgIGVuZF91bmNoYW5n ZWQgY29udGFpbiBubyB1c2VmdWwgaW5mb3JtYXRpb24uICAqLw0KICAgICBt b2RpZmZfY291bnQgb3ZlcmxheV91bmNoYW5nZWRfbW9kaWZpZWQ7DQogDQor ICAgIC8qIENIQVJTX01PRElGRiBhcyBvZiBsYXN0IHJlZGlzcGxheSB0aGF0 IGZpbmlzaGVkLiAgKi8NCisgICAgbW9kaWZmX2NvdW50IGNoYXJzX3VuY2hh bmdlZF9tb2RpZmllZDsNCisNCiAgICAgLyogUHJvcGVydGllcyBvZiB0aGlz IGJ1ZmZlcidzIHRleHQuICAqLw0KICAgICBJTlRFUlZBTCBpbnRlcnZhbHM7 DQogDQpkaWZmIC0tZ2l0IGEvc3JjL3hkaXNwLmMgYi9zcmMveGRpc3AuYw0K aW5kZXggMDI0OGU4ZTUzZi4uYzkyMjMxYWJjZiAxMDA2NDQNCi0tLSBhL3Ny Yy94ZGlzcC5jDQorKysgYi9zcmMveGRpc3AuYw0KQEAgLTE3MzIzLDYgKzE3 MzIzLDcgQEAgbWFya193aW5kb3dfZGlzcGxheV9hY2N1cmF0ZV8xIChzdHJ1 Y3Qgd2luZG93ICp3LCBib29sIGFjY3VyYXRlX3ApDQogDQogICAgICAgQlVG X1VOQ0hBTkdFRF9NT0RJRklFRCAoYikgPSBCVUZfTU9ESUZGIChiKTsNCiAg ICAgICBCVUZfT1ZFUkxBWV9VTkNIQU5HRURfTU9ESUZJRUQgKGIpID0gQlVG X09WRVJMQVlfTU9ESUZGIChiKTsNCisgICAgICBCVUZfQ0hBUlNfVU5DSEFO R0VEX01PRElGSUVEIChiKSA9IEJVRl9DSEFSU19NT0RJRkYgKGIpOw0KICAg ICAgIEJVRl9CRUdfVU5DSEFOR0VEIChiKSA9IEJVRl9HUFQgKGIpIC0gQlVG X0JFRyAoYik7DQogICAgICAgQlVGX0VORF9VTkNIQU5HRUQgKGIpID0gQlVG X1ogKGIpIC0gQlVGX0dQVCAoYik7DQogDQpAQCAtMTk1ODUsNyArMTk1ODYs NyBAQCByZWRpc3BsYXlfd2luZG93IChMaXNwX09iamVjdCB3aW5kb3csIGJv b2wganVzdF90aGlzX29uZV9wKQ0KICAgLyogQ2hlY2sgd2hldGhlciB0aGUg YnVmZmVyIHRvIGJlIGRpc3BsYXllZCBjb250YWlucyBsb25nIGxpbmVzLiAg Ki8NCiAgIGlmICghTklMUCAoVmxvbmdfbGluZV90aHJlc2hvbGQpDQogICAg ICAgJiYgIWN1cnJlbnRfYnVmZmVyLT5sb25nX2xpbmVfb3B0aW1pemF0aW9u c19wDQotICAgICAgJiYgTU9ESUZGIC0gVU5DSEFOR0VEX01PRElGSUVEID4g OCkNCisgICAgICAmJiBDSEFSU19NT0RJRkYgLSBDSEFSU19VTkNIQU5HRURf TU9ESUZJRUQgPiA4KQ0KICAgICB7DQogICAgICAgcHRyZGlmZl90IGN1ciwg bmV4dCwgZm91bmQsIG1heCA9IDAsIHRocmVzaG9sZDsNCiAgICAgICB0aHJl c2hvbGQgPSBYRklYTlVNIChWbG9uZ19saW5lX3RocmVzaG9sZCk7DQo= --oXy2Hht2lr--