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

Package: emacs;

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 #41 received at 55970 <at> debbugs.gnu.org (full text, mbox):

From: Po Lu <luangruo <at> yahoo.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 55970 <at> debbugs.gnu.org, lumarzeli30 <at> gmail.com
Subject: Re: bug#55970: 29.0.50; Emacs crashes when dragging the scroll bar
 with "--with-pgtk" and "--without-toolkit-scroll-bars" configure flags
Date: Wed, 15 Jun 2022 21:14:16 +0800
Eli Zaretskii <eliz <at> gnu.org> writes:

> Then how come the code which aborted got executed contrary to what you
> say?

Because USE_TOOLKIT_SCROLL_BARS was not defined.  The reporter passed
`--without-toolkit-scroll-bars' to configure, which is not supported on
PGTK.

The configure script is supposed to prohibit that combination of
options, but somehow that did not happen.

> And given that it did, would it do any harm to install the fix I
> proposed?

Yes, since the events generated would also still be broken, but more
subtly.  USE_TOOLKIT_SCROLL_BARS should always be defined on window
systems other than X, since no other window system implements "native"
scroll bars.

> 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?

I don't really understand that piece of code.  It seems wrong to me,
since toolkit scroll bar events should not have modifiers at all.

But it's probably there for a reason, which I will look into.




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.