GNU bug report logs -
#55970
29.0.50; Emacs crashes when dragging the scroll bar with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
Previous Next
Reported by: समीर सिंह Sameer Singh <lumarzeli30 <at> gmail.com>
Date: Tue, 14 Jun 2022 14:09:02 UTC
Severity: normal
Tags: fixed
Found in version 29.0.50
Fixed in version 29.1
Done: Robert Pluim <rpluim <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
It does not crash now!
Thank you.
On Wed, Jun 15, 2022 at 12:00 AM Eli Zaretskii <eliz <at> gnu.org> wrote:
> > From: समीर सिंह Sameer Singh <lumarzeli30 <at> gmail.com>
> > Date: Tue, 14 Jun 2022 23:18:42 +0530
> > Cc: 55970 <at> debbugs.gnu.org
> >
> > Thread 1 "emacs" hit Breakpoint 1, terminate_due_to_signal (sig=6,
> backtrace_limit=40) at emacs.c:420
> > 420 {
> > (gdb) frame 2
> > #2 0x000055555571ba26 in make_lispy_event (event=0x555555e25300
> <kbd_buffer+256>) at
> > keyboard.c:6140
> > 6140 emacs_abort ();
> > (gdb) p *event
> > $1 = {
> > kind = SCROLL_BAR_CLICK_EVENT,
> > part = scroll_bar_handle,
> > code = 0,
> > modifiers = 0,
> > x = make_fixnum(17531),
> > y = make_fixnum(1244637),
> > timestamp = 0,
> > frame_or_window = XIL(0x5555560794a5),
> > arg = XIL(0),
> > device = XIL(0x30)
> > }
>
> Thanks. I think the problem is here:
>
> static void
> pgtk_send_scroll_bar_event (Lisp_Object window, enum scroll_bar_part
> part,
> int portion, int whole, bool horizontal)
> {
> union buffered_input_event inev;
>
> EVENT_INIT (inev.ie);
>
> inev.ie.kind = (horizontal
> ? HORIZONTAL_SCROLL_BAR_CLICK_EVENT
> : SCROLL_BAR_CLICK_EVENT);
> inev.ie.frame_or_window = window;
> inev.ie.arg = Qnil;
> inev.ie.timestamp = 0;
> inev.ie.code = 0;
> inev.ie.part = part;
> inev.ie.x = make_fixnum (portion);
> inev.ie.y = make_fixnum (whole);
> inev.ie.modifiers = 0;
>
> evq_enqueue (&inev);
> }
>
> This sets the modifiers to zero, which causes the abort. Instead, I
> suggest to do this:
>
> inev.ie.modifiers =
> part == scroll_bar_end_scroll ? up_modifier : down_modifier;
>
> Can you try this?
>
[Message part 2 (text/html, inline)]
This bug report was last modified 3 years and 33 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.