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
Message #38 received at 55970 <at> debbugs.gnu.org (full text, mbox):
> From: Po Lu <luangruo <at> yahoo.com>
> Cc: 55970 <at> debbugs.gnu.org, lumarzeli30 <at> gmail.com
> Date: Wed, 15 Jun 2022 11:29:23 +0800
>
> Eli Zaretskii <eliz <at> gnu.org> writes:
>
> > OK, but please explain how come the code in pgtk_send_scroll_bar_event
> > leaves the modifiers unset, and that is still OK, notwithstanding the
> > code in keyboard.c that expects either up or down modifier for any
> > mouse click event? Isn't that a bug regardless?
>
> The mouse click code that expects an up or down modifier is only used
> for scroll bar events when USE_TOOLKIT_SCROLL_BARS isn't defined. The
> code actually used with toolkit scroll bars starts at line 6359 of
> keyboard.c.
Then how come the code which aborted got executed contrary to what you
say? And given that it did, would it do any harm to install the fix I
proposed?
More importantly, does it really make sense to "fix" events in
keyboard.c, rather than generate them correctly in low-level
toolkit-specific code to begin with? I mean this part:
/* Always treat scroll bar events as clicks. */
event->modifiers |= click_modifier;
event->modifiers &= ~up_modifier;
Why do we override the modifiers of the event, and why in keyboard.c
of all places? Can we do this cleaner, or at least in
toolkit-specific code?
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.