GNU bug report logs -
#47832
28.0.50; define-fringe-bitmap and emacs --daemon
Previous Next
Reported by: Gregory Heytings <gregory <at> heytings.org>
Date: Fri, 16 Apr 2021 22:23:01 UTC
Severity: normal
Tags: fixed, patch
Found in version 28.0.50
Fixed in version 28.1
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
>>> 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.
This bug report was last modified 3 years and 361 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.