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#47832: 28.0.50; define-fringe-bitmap and emacs --daemon Date: Sat, 17 Apr 2021 11:32:25 +0000 Message-ID: <1869622e16c60dc2ce0d@heytings.org> References: <7dee3f4235cf450a3254@heytings.org> <83mttxwgm8.fsf@gnu.org> <1869622e16688e6aedec@heytings.org> <83h7k5w54l.fsf@gnu.org> <83fszpw40t.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="14450"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 47832@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Apr 17 13:33:15 2021 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 1lXjCM-0003cd-CD for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 17 Apr 2021 13:33:14 +0200 Original-Received: from localhost ([::1]:38698 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lXjCL-0000Md-FL for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 17 Apr 2021 07:33:13 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:39852) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lXjCB-0000MB-4A for bug-gnu-emacs@gnu.org; Sat, 17 Apr 2021 07:33:03 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:59071) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lXjCA-0005P5-TU for bug-gnu-emacs@gnu.org; Sat, 17 Apr 2021 07:33:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lXjCA-0005Fa-RL for bug-gnu-emacs@gnu.org; Sat, 17 Apr 2021 07:33: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: Sat, 17 Apr 2021 11:33:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 47832 X-GNU-PR-Package: emacs Original-Received: via spool by 47832-submit@debbugs.gnu.org id=B47832.161865914820129 (code B ref 47832); Sat, 17 Apr 2021 11:33:02 +0000 Original-Received: (at 47832) by debbugs.gnu.org; 17 Apr 2021 11:32:28 +0000 Original-Received: from localhost ([127.0.0.1]:42383 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lXjBc-0005Eb-04 for submit@debbugs.gnu.org; Sat, 17 Apr 2021 07:32:28 -0400 Original-Received: from heytings.org ([95.142.160.155]:41558) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lXjBa-0005EQ-CQ for 47832@debbugs.gnu.org; Sat, 17 Apr 2021 07:32:26 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heytings.org; s=20210101; t=1618659145; bh=n2/AMfGoOxFSZ0cV5INz0T3ywyFMBCgHBUaRhLuJFdM=; h=Date:From:To:cc:Subject:In-Reply-To:Message-ID:References:From; b=Fb06fU/lWCsGfiyc3uMY7nwIVw8ctF6ZLeoM2wVLTJ6/vit73rz+KVM13S1gXxMX4 VQGgf5CWfhIq4eIPfdimGEPzso0c+KEDIxz7ITnWv3/XQ2QpzaeyhJ4Zyx4LJzvjvB WTYImPsLp5EUSIUoG1WCr2z41BtVSt9cLKVhbQrKxOGRvQcFIqvexfCZ71s2X3HmYm 1UiT1Y5jhOLdWCeONMjROVeOJC4eVDdc8tMXVE2itPi+6EIptbb72OPhuNuNmY3wLC w3wg7FvCWIox/wXMbSUMP414DAFXYlx3PKGZo0pdACDFzy1KwRH67Q+OXf8lFQ57dn RWqazSLIwJ+gA== In-Reply-To: <83fszpw40t.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:204188 Archived-At: >>> Got it! :-) The commit I identified is indeed the culprit. With >>> USE_CAIRO, gui_init_fringe() is called in x_initialize(); without >>> USE_CAIRO it isn't. And gui_init_fringe() had a bug, which should now >>> be fixed on Windows, too. Patch attached. >> >> Thanks, but is this really all that needs to be done? How will >> gui_init_fringe be called in the non-Cairo builds? And what about NS? > > Answering myself: they don't need to call gui_init_fringe. > Indeed. > > Since gui_init_fringe returns immediately if the frame interface doesn't > provide a method for fringe initialization, I think we should call > gui_init_fringe unconditionally on X. > > And in any case, the patch for gui_init_fringe is sub-optimal: it > unnecessarily loops over the standard bitmaps that were superseded. It > is better to leave the first loop go over the standard bitmaps, whether > superseded or not, and the second loop go over non-standard bitmaps > only. > It is not sub-optimal, rif->define_fringe_bitmap will only be called for those standard bitmaps that were superseded. For the non-superseded ones, fringe_bitmaps[bt] is NULL.