Subject: bug#57364: 28.1.91; asynchronous X server error when creating a second frame on alternate DISPLAY

From: Po Lu <[email-masked]>
Date: Wed, 24 Aug 2022 09:56:35 +0800

Andrés Ramírez <[email-masked]> writes:

> 10270	  if (x_error_message)
> (gdb) bt
> #0  x_error_handler (display=0x5555567b8200, event=0x7fffffffcf00) at ../../src/xterm.c:10270
> #1  0x00007ffff7bf61ac in _XError () at /usr/lib/libX11.so.6
> #2  0x00007ffff7bf62b8 in  () at /usr/lib/libX11.so.6
> #3  0x00007ffff7bf6355 in  () at /usr/lib/libX11.so.6
> #4  0x00007ffff7bf640a in _XEventsQueued () at /usr/lib/libX11.so.6
> #5  0x00007ffff7be2c48 in XPending () at /usr/lib/libX11.so.6
> #6  0x00005555557042cf in XTread_socket (terminal=0x555556722160, hold_quit=0x7fffffffd1e0) at ../../src/xterm.c:9492
> #7  0x0000555555755cec in gobble_input () at ../../src/keyboard.c:6980
> #8  0x00005555557562e8 in handle_async_input () at ../../src/keyboard.c:7211
> #9  0x0000555555756307 in process_pending_signals () at ../../src/keyboard.c:7225
> #10 0x000055555582c7dc in maybe_quit () at ../../src/eval.c:1724
> #11 0x00005555558306b3 in Ffuncall (nargs=2, args=0x7fffffffd328) at ../../src/eval.c:2995
> #12 0x0000555555890e41 in exec_byte_code (bytestr=XIL(0x7ffff2ac40a4), vector=XIL(0x7ffff2ac3815), maxdepth=make_fixnum(17), args_template=make_fixnum(769), nargs=3, args=0x7fffffffda08) at ../../src/bytecode.c:632
> #13 0x00005555558310bd in fetch_and_exec_byte_code (fun=XIL(0x7ffff2ac2d8d), syms_left=make_fixnum(769), nargs=3, args=0x7fffffffd9f0) at ../../src/eval.c:3147
> #14 0x0000555555831584 in funcall_lambda (fun=XIL(0x7ffff2ac2d8d), nargs=3, arg_vector=0x7fffffffd9f0) at ../../src/eval.c:3228
> #15 0x000055555583087a in Ffuncall (nargs=4, args=0x7fffffffd9e8) at ../../src/eval.c:3027
> #16 0x00005555558239a3 in Ffuncall_interactively (nargs=4, args=0x7fffffffd9e8) at ../../src/callint.c:260
> #17 0x0000555555830cb4 in funcall_subr (subr=0x555555e2c340 <Sfuncall_interactively>, numargs=4, args=0x7fffffffd9e8) at ../../src/eval.c:3078
> #18 0x0000555555830826 in Ffuncall (nargs=5, args=0x7fffffffd9e0) at ../../src/eval.c:3023
> #19 0x000055555582f895 in Fapply (nargs=3, args=0x7fffffffdc20) at ../../src/eval.c:2653
> #20 0x0000555555823e46 in Fcall_interactively (function=XIL(0x2aaa9cc0eb58), record_flag=XIL(0), keys=XIL(0x55555921b71d)) at ../../src/callint.c:353
> #21 0x0000555555830e47 in funcall_subr (subr=0x555555e2c380 <Scall_interactively>, numargs=3, args=0x7fffffffddd0) at ../../src/eval.c:3103
> #22 0x0000555555830826 in Ffuncall (nargs=4, args=0x7fffffffddc8) at ../../src/eval.c:3023
> #23 0x0000555555890e41 in exec_byte_code (bytestr=XIL(0x7ffff28b4b4c), vector=XIL(0x7ffff28b47b5), maxdepth=make_fixnum(13), args_template=make_fixnum(1025), nargs=1, args=0x7fffffffe320) at ../../src/bytecode.c:632
> #24 0x00005555558310bd in fetch_and_exec_byte_code (fun=XIL(0x7ffff28b4785), syms_left=make_fixnum(1025), nargs=1, args=0x7fffffffe318) at ../../src/eval.c:3147
> #25 0x0000555555831584 in funcall_lambda (fun=XIL(0x7ffff28b4785), nargs=1, arg_vector=0x7fffffffe318) at ../../src/eval.c:3228
> #26 0x000055555583087a in Ffuncall (nargs=2, args=0x7fffffffe310) at ../../src/eval.c:3027
> #27 0x0000555555830019 in call1 (fn=XIL(0x4590), arg1=XIL(0x2aaa9cc0eb58)) at ../../src/eval.c:2883
> #28 0x0000555555745a6c in command_loop_1 () at ../../src/keyboard.c:1505
> #29 0x000055555582be77 in internal_condition_case (bfun=0x5555557451a3 <command_loop_1>, handlers=XIL(0x90), hfun=0x555555744586 <cmd_error>) at ../../src/eval.c:1450
> #30 0x0000555555744d5c in command_loop_2 (handlers=XIL(0x90)) at ../../src/keyboard.c:1133
> #31 0x000055555582b006 in internal_catch (tag=XIL(0xe850), func=0x555555744d32 <command_loop_2>, arg=XIL(0x90)) at ../../src/eval.c:1181
> #32 0x0000555555744cfe in command_loop () at ../../src/keyboard.c:1111
> #33 0x0000555555744032 in recursive_edit_1 () at ../../src/keyboard.c:720
> #34 0x0000555555744254 in Frecursive_edit () at ../../src/keyboard.c:803
> #35 0x000055555573fd00 in main (argc=5, argv=0x7fffffffe828) at ../../src/emacs.c:2358

This backtrace is not meaningful.

When an X error occurs, it is normally reported some time after the
protocol request leading to the error was made, upon the next time Xlib
synchronizes with the X server.  To get a meaningful backtrace, you must
make Xlib check for errors immediately, by running Emacs with -xrm
'Emacs.synchronous: True'.