GNU bug report logs -
#75199
30.0.93; Emacs crashes when completing with corfu
Previous Next
Full log
Message #26 received at 75199 <at> debbugs.gnu.org (full text, mbox):
Zhengyi Fu <i <at> fuzy.me> writes:
> On 2024-12-30 23:24, Eli Zaretskii wrote:
>
>> Earlier you wrote:
>>
>>> The error is probably caused by the width value of 0 passed to
>>> XCreatePixmapFromBitmapData().
>>> It seems gui_intersect_rectangles() returns true even if the resulted
>>> rectangle is empty. Is that correct behavior?
>> Can you tell how this happens? Is corfu doing something special with
>> the fringes?
>
> I noticed the following calls in corfu--popup-show before the error:
>
> * define-fringe-bitmap(corfu--bar [-241] 1 8 (top periodic))
> * define-fringe-bitmap(corfu--nil [])
I've adjusted the second call to the following, also for compatibility
with older Emacs versions.
(define-fringe-bitmap 'corfu--nil [0] 1 1)
For the future, maybe `define-fringe-bitmap' should either check its
argument carefully and disallow empty bitmaps, or empty bitmaps should
be explicitly allowed? I've not seen reports about crashes on other
builds, e.g., X11+Cairo or the NS and Carbon builds for Mac. These
builds seem to support empty fringe bitmaps.
Daniel
This bug report was last modified 149 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.