From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Ergus Newsgroups: gmane.emacs.bugs Subject: bug#36858: 27.0.50; display bugs with display-fill-column-indicator-mode Date: Thu, 8 Aug 2019 09:17:58 +0200 Message-ID: <20190808071758.csjonc4flbh44muj@Ergus> References: <83wofwexkr.fsf@gnu.org> <20190805152747.4vyzejqoiy33l4ou@Ergus> <83tvatavmh.fsf@gnu.org> <20190807162033.hpphf2pbfo4p6vam@Ergus> <83h86taq4v.fsf@gnu.org> <20190807170654.b6wsccs3b2acduff@Ergus> <83ef1wc2ae.fsf@gnu.org> <20190807194621.6ankodv7hclbvmdz@Ergus> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="229408"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: NeoMutt/20180716 Cc: 36858@debbugs.gnu.org, rotim.davor@gmail.com To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Aug 08 09:19:12 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1hvchb-000xUd-AI for geb-bug-gnu-emacs@m.gmane.org; Thu, 08 Aug 2019 09:19:11 +0200 Original-Received: from localhost ([::1]:47316 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hvcha-0000IS-4M for geb-bug-gnu-emacs@m.gmane.org; Thu, 08 Aug 2019 03:19:10 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:54000) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hvchU-0000ED-IB for bug-gnu-emacs@gnu.org; Thu, 08 Aug 2019 03:19:05 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hvchS-0005F1-If for bug-gnu-emacs@gnu.org; Thu, 08 Aug 2019 03:19:04 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:59267) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hvchS-0005El-EQ for bug-gnu-emacs@gnu.org; Thu, 08 Aug 2019 03:19:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hvchS-000692-7R for bug-gnu-emacs@gnu.org; Thu, 08 Aug 2019 03:19:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Ergus Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 08 Aug 2019 07:19:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 36858 X-GNU-PR-Package: emacs Original-Received: via spool by 36858-submit@debbugs.gnu.org id=B36858.156524869323516 (code B ref 36858); Thu, 08 Aug 2019 07:19:02 +0000 Original-Received: (at 36858) by debbugs.gnu.org; 8 Aug 2019 07:18:13 +0000 Original-Received: from localhost ([127.0.0.1]:39855 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hvcge-00067D-TX for submit@debbugs.gnu.org; Thu, 08 Aug 2019 03:18:13 -0400 Original-Received: from sonic310-57.consmr.mail.ir2.yahoo.com ([77.238.177.30]:33026) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hvcgc-00066o-BC for 36858@debbugs.gnu.org; Thu, 08 Aug 2019 03:18:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aol.com; s=a2048; t=1565248683; bh=I8M+e7FAMWPcc0y02ifuB9mV+XvrfYNXsWw6duvKA+A=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From:Subject; b=S2fiKjJkE0zYeUkPvMp6Dj6Mf+zYYXEirCYPdo3OouvZ5vcbQtNaTOW6yEeJdaej3eXtM+Sequ7Gr7jaZ7/gGgL+8YSQtH8x482bODnJKh+4TILu4LGwuXbEoI8lR59cfmFg+1+ytVncBHXpKrpC+tJ3z2pKQ6vR0ECTBD/Zy08YHUZQO47d++fNQ2OcEYEz+3R1a8qO0bzJ6r2LlfpHAPZfe8eRyHyMfLFNBMgR7fGl32DYIw2VFS+rbbQ1AWt0rH5lHDx+AopaMXztCgEy5oKLstdworHV3CVzIFquOCbiiDvwdJ+YHZqPTk6c8b+NQTZR7ZICagZOCUkU0HLtFQ== X-YMail-OSG: SVxxAz0VM1lnLQboVQTHBHq2l3.OnkVEo_CkrvP5aTG.epMC_uiYkZMXiA.niFw MFqXQwIrntOSr8lu.jvtakyQeZyJn5sQBOrsr5zZNdAQYJ6mIGhHfqSFi5cSAWpGmNqFLqhUudZT y8ulVAjxc89l3qN5JGdoQJbTat4zDmg5G1dnI1R6gtQWLM5xiP3z8A04CYG21kIivJurfifz6jib .sdRD5.ZqP3piaY1cpmIzz9Wr1TltO55bKChEGAnzYBMskr9z7G9nDyBJ53Cte778JScCXrcDNFD .o2PIdFaUubXqVxSL4fNbSnHcUSofLYjESYb94UTMKT8L9Z_wclFeYxzjydWe8zfukWjdpM_XvsT JTJoN2kfker565HGtou2PoRWJ5PDevMTahwOyrmpN8DMQHaYSzD5z6Tn9lj72t8LPNhm6VQIX9Oa P1iYVm3I6NKb8tEKZ_1J_v8Wqk_eSC7d7z3VEAO4Oa7DNg09LiaRNsOkT4mrV8sdf6ZSyTIEm_ap 0XAWhhc7WISE1nVD07xlv9THvHQU4C..0DxRsjTItN3m0BVsGftHrGwOyA7zMbpw39jSvWAT4GgM mHuU8ylU79IsydRUgc5GYMnPYrSU61KziP3Yf8fJrNtKqmlLgFP88fdqyyLfqciNLb3KabYJH4hK VmHNnsJGRTOL6HVn8k5knll9JEU7HWBHSKeQwLR1gs4c9RANUuJoWDf_TqbGjCdKoTWqrnlVaywA xOfiKzRfgckzHlpajzz0lIVh37zPpKV78_lGdPKTBclleaHz2duxRWcIjK98CQvuckLS8NdqXJtz leoZ1uK1sH3ZcGRbR7gycEifHwOakGR.ey6A3U7jCf Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic310.consmr.mail.ir2.yahoo.com with HTTP; Thu, 8 Aug 2019 07:18:03 +0000 Original-Received: by smtp423.mail.ir2.yahoo.com (Oath Hermes SMTP Server) with ESMTPA ID ba79fe6a91ffac790b5c26883e41dbe7; Thu, 08 Aug 2019 07:18:00 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20190807194621.6ankodv7hclbvmdz@Ergus> 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.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:164748 Archived-At: On Wed, Aug 07, 2019 at 09:46:21PM +0200, Ergus wrote: >On Wed, Aug 07, 2019 at 08:29:13PM +0300, Eli Zaretskii wrote: >>>This issue is already fixed with the other condition I mentioned: >>> >>>IT_CHARPOS (*it) < ZV >>> >>>But ends_at_zv_p this also need to be fixed because there are some tests >>>inside extend_face_to_end_of_line that compare with ends_at_zv_p. In the >>>worst case we need to remove these comparisons. >> >>Not sure I understand why the comparisons need to be removed. Can you >>elaborate? >> > >>>But ideally the flag must be set before right? >> >>In a buffer showing only buffer text (no after-strings at EOB), all >>the glyph rows starting from the one showing EOB have their >>ends_at_zv_p flag set. > >Hi: > >In my tests inside extend_face_to_end_of_line the flag ends_at_zv_p is >always false. And for the last line (where it is supposed to be true) >the function extend_face_to_end_of_line is not called at all. So >actually all the code like: > > if (it->glyph_row->ends_at_zv_p) > it->face_id = default_face->id; > else > it->face_id = face->id; > >does nothing now. > >We should fix this in order to create an indicator also for the last >line. > >I think that the problem is in the condition: > >if (!get_next_display_element (it)) inside display_line that filters the >call to extend_face_to_end_of_line with: > >if (row->reversed_p > || lookup_basic_face (it->w, it->f, DEFAULT_FACE_ID) != > DEFAULT_FACE_ID) > extend_face_to_end_of_line (it); > >And needs to be extended probably with with: > >|| (!row_text_area_empty (row)) Hi Eli: Sorry for bothering so much. After tying this solution I proposed yesterday to add the indicator also for the latest line (call extend_face_to_end_of_line for a no empty line without \n too) I get it working perfectly fine only in the tui interface. In gui it just doesn't work. But it seems that the issue is not due to the condition: if (!get_next_display_element (it)); because when I add a test glyph unconditionally there; it is not printed in the screen, but when I add a message to stdout it is. For sure I am missing something here, but what? Is it possible that some optimization in the gui glue code stops printing glyphs OR that some later code hides the extra glyphs?