Subject: Re: bug#56792: 29.0.50; Emacs crashes when selecting text if xfreerdp is also running
From: Po Lu <[email-masked]>
To: David Welch <[email-masked]>
Cc: [email-masked]
Date: Wed, 27 Jul 2022 21:49:02 +0800
List-Id: <debbugs-submit.debbugs.gnu.org>

David Welch <[email-masked]> writes:

> The bug doesn't seem to happen when running under Wayland. 
>
> To reproduce:-
> 1) Have xfreerdp (RDP client) running and connected to a remote system.
> 2) Run emacs on the same system as xfreerdp.
> 3) Copy some text to the kill ring.
> 4) Emacs crashes with an error.
>
> (emacs:241123): Gdk-ERROR **: 14:26:18.002: The program 'emacs' received an X Window System error. 
> This probably reflects a bug in the program.
> The error was 'BadMatch (invalid parameter attributes)'.
>   (Details: serial 2019 error_code 8 request_code 18 (core protocol) minor_code 0)
>
> The call stack with (GDK_SYNCHRONIZE=1) is 
>
> #5  0x00007ffff776ed03 in gdk_x_error (error=0x7fffffffcf80, xdisplay=0x555555f23dc0) at ../../../../../gdk/x11/gdkmain-x11.c:307 
> #6  gdk_x_error (xdisplay=0x555555f23dc0, error=0x7fffffffcf80) at ../../../../../gdk/x11/gdkmain-x11.c:269
> #7  0x00007ffff029528b in _XError (dpy=dpy@entry=0x555555f23dc0, rep=rep@entry=0x55555651c730) at ../../src/XlibInt.c:1491
> #8  0x00007ffff0291ff7 in handle_error (dpy=0x555555f23dc0, err=0x55555651c730, in_XReply=<optimised out>) at ../../src/xcb_io.c:199
> #9  0x00007ffff0292095 in handle_response (dpy=dpy@entry=0x555555f23dc0, response=0x55555651c730, in_XReply=in_XReply@entry=1) at ../../src/xcb_io.c:324
> #10 0x00007ffff029301d in _XReply (dpy=dpy@entry=0x555555f23dc0, rep=rep@entry=0x7fffffffd140, extra=extra@entry=0, discard=discard@entry=1) at
> ../../src/xcb_io.c:634
> #11 0x00007ffff028e7f1 in XSync (dpy=0x555555f23dc0, discard=discard@entry=0) at ../../src/Sync.c:44
> #12 0x00007ffff028e88f in _XSyncFunction (dpy=<optimised out>) at ../../src/Synchro.c:35 
> #13 0x00007ffff026ed53 in XChangeProperty(dpy=0x555555f23dc0, w=w@entry=14680065, property=property@entry=717, type=type@entry=356,
> format=format@entry=8, mode=mode@entry=2, data=0x555556032498 "Emacs", nelements=5)
>     at ../../src/ChProp.c:92
> #14 0x00007ffff7770282 in _gdk_x11_window_change_property (window=0x555556648a50, property=0xb2, type=0x46, format=8,
> mode=GDK_PROP_MODE_APPEND, data=0x555556032498 "Emacs", nelements=5)
>     at ../../../../../gdk/x11/gdkproperty-x11.c:556

The PGTK build does not support X11, so you should build without PGTK
enabled.  This crash is known to happen there, and will not be fixed,
since adding 300-400 lines of X specific selection code to the PGTK port
seems very irrational for a platform that it is not intended to support.

Closing, thanks.