From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#39133: 28.0.50; Emacs slowdown on special char Date: Fri, 24 Jan 2020 17:52:12 +0200 Message-ID: <83muacrgwj.fsf@gnu.org> References: <83lfqa5aa2.fsf@gnu.org> <83r2004rqn.fsf@gnu.org> <8336c5rw5t.fsf@gnu.org> <83y2txq8fw.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="13757"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 39133@debbugs.gnu.org, lg.zevlg@gmail.com To: Robert Pluim Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Jan 24 16:53:12 2020 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 1iv1Gh-0003WM-PT for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 24 Jan 2020 16:53:11 +0100 Original-Received: from localhost ([::1]:43910 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iv1Gg-0003p2-Ri for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 24 Jan 2020 10:53:10 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:58857) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iv1GZ-0003oT-FZ for bug-gnu-emacs@gnu.org; Fri, 24 Jan 2020 10:53:04 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iv1GY-0004BZ-Ci for bug-gnu-emacs@gnu.org; Fri, 24 Jan 2020 10:53:03 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:48688) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iv1GY-0004Av-8J for bug-gnu-emacs@gnu.org; Fri, 24 Jan 2020 10:53:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1iv1GY-0000Jk-72 for bug-gnu-emacs@gnu.org; Fri, 24 Jan 2020 10:53:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 24 Jan 2020 15:53:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 39133 X-GNU-PR-Package: emacs Original-Received: via spool by 39133-submit@debbugs.gnu.org id=B39133.15798811581189 (code B ref 39133); Fri, 24 Jan 2020 15:53:02 +0000 Original-Received: (at 39133) by debbugs.gnu.org; 24 Jan 2020 15:52:38 +0000 Original-Received: from localhost ([127.0.0.1]:54661 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iv1GA-0000J7-0d for submit@debbugs.gnu.org; Fri, 24 Jan 2020 10:52:38 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:49632) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iv1G7-0000It-UR for 39133@debbugs.gnu.org; Fri, 24 Jan 2020 10:52:36 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:34726) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1iv1G1-0002yK-Iu; Fri, 24 Jan 2020 10:52:29 -0500 Original-Received: from [176.228.60.248] (port=3309 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1iv1G1-00010f-1J; Fri, 24 Jan 2020 10:52:29 -0500 In-reply-to: (message from Robert Pluim on Fri, 24 Jan 2020 16:41:40 +0100) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 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:175232 Archived-At: > From: Robert Pluim > Cc: 39133@debbugs.gnu.org, lg.zevlg@gmail.com, > mituharu@math.s.chiba-u.ac.jp, handa@gnu.org > Date: Fri, 24 Jan 2020 16:41:40 +0100 > > >>>>> On Fri, 24 Jan 2020 14:50:10 +0100, Robert Pluim said: > Robert> Yes, I worked that out. A simple crash, for once :-) > > >From 667f47abecc13e8a47181f338e727d95e57a6354 Mon Sep 17 00:00:00 2001 > From: Robert Pluim > Date: Fri, 24 Jan 2020 14:11:44 +0100 > Subject: [PATCH] Don't attempt to cache glyph metrics for FONT_INVALID_CODE > > This was causing massive slowdown in redisplay when eg #xfe0f > (VARIATION SELECTOR-16) was present, as the cache ended up very large, > unused, and being recreated on every call to font_fill_lglyph_metrics > (Bug#39133). > > * src/composite.c (fill_gstring_body): Hoist FONT_OBJECT_P check out > of loop. Calculate glyph code and check for FONT_INVALID_CODE before > calling font_fill_lglyph_metrics. Pass glyph code to it. > > * src/font.c (font_fill_lglyph_metrics): Add code parameter, move > glyph code calculation up the call stack into fill_gstring_body. > > * src/font.h: Adjust font_fill_lglyph_metrics prototype. Thanks.