GNU bug report logs - #56869
29.0.50; segfault, "assertion 'GDK_IS_DEVICE (device)' failed"

Previous Next

Package: emacs;

Reported by: Joe Corneli <joseph.corneli <at> hyperreal.enterprises>

Date: Mon, 1 Aug 2022 13:09:02 UTC

Severity: normal

Tags: moreinfo

Found in version 29.0.50

Done: Stefan Kangas <stefankangas <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


Message #84 received at control <at> debbugs.gnu.org (full text, mbox):

From: Po Lu <luangruo <at> yahoo.com>
To: Joe Corneli <joseph.corneli <at> hyperreal.enterprises>
Cc: 56869 <at> debbugs.gnu.org
Subject: Re: bug#56869: 29.0.50; segfault, "assertion 'GDK_IS_DEVICE
 (device)' failed"
Date: Sun, 21 Aug 2022 18:56:49 +0800
tags 56869 wontfix
thanks

Joe Corneli <joseph.corneli <at> hyperreal.enterprises> writes:

> OK, here’s the info:
>
> (gdb) p xev->sourceid
> $1 = 12
>
> $ xinput list
> ⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
> ⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
> ⎜   ↳ MSFT0001:01 06CB:CD64 Mouse             	id=11	[slave  pointer  (2)]
> ⎜   ↳ MSFT0001:01 06CB:CD64 Touchpad          	id=12	[slave  pointer  (2)]
> ⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
>     ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
>     ↳ Power Button                            	id=6	[slave  keyboard (3)]
>     ↳ Video Bus                               	id=7	[slave  keyboard (3)]
>     ↳ Power Button                            	id=8	[slave  keyboard (3)]
>     ↳ Sleep Button                            	id=9	[slave  keyboard (3)]
>     ↳ Intel HID events                        	id=13	[slave  keyboard (3)]
>     ↳ AT Translated Set 2 keyboard            	id=14	[slave  keyboard (3)]
>     ↳ Chicony USB2.0 Camera: Chicony          	id=10	[slave  keyboard (3)]
>
>
> ... and another possible clue, which is that I’m running Touchpad
> Indicator, https://github.com/atareao/Touchpad-Indicator
>
> and I have it set up to disable the trackpad _while typing_.  Perhaps
> the way it enables and disables the trackpad is currently interacting
> with Emacs in a glitchy way.

Right, I think I know what this is now.  GTK fails to read information
about the trackpad due to it being disabled between the
XI_HierarchyChange event being sent and and it being handled.  GTK then
segfaults trying to access a field in a device it doesn't know about.

This only shows up in Emacs, because most other GTK programs do not make
people rapidly alternate between trackpad and keyboard use.

I suggest using a build of Emacs without GTK.  If you have to use GTK,
turn off '--with-xinput2', but as a result several features will no
longer work.

Thanks.

BTW, the quality of the GDK X11 backend has lately dropped to a very low
level.  I'm going to push for the Emacs build to default to the Motif or
no-toolkit build instead.




This bug report was last modified 1 year and 264 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.