Subject: bug#54889: 29.0.50; shift keys can't function when using setxkbmap with custom_symbol in gnome

From: Po Lu <[email-masked]>
Date: Thu, 14 Apr 2022 21:18:12 +0800

[email-masked] writes:

> I am sorry, i will notice to use 'reply all' since this time.
>
> here is this time i tried:
>
> 1. after 'run' , i do not see gui window,
> i have no way to input,
> here is the result:
>
> $ gdb ./emacs -q
> Reading symbols from ./emacs...
> SIGINT is used by the debugger.
> Are you sure you want to change it? (y or n) [answered Y; input not from terminal]
> DISPLAY = :0
> TERM = rxvt-unicode-256color
> Breakpoint 1 at 0x4ac18: file emacs.c, line 412.
> Breakpoint 2 at 0x129bc0: file xterm.c, line 19625.
> (gdb) break xterm.c:17399
> Breakpoint 3 at 0x13cb23: file xterm.c, line 18393.
> (gdb) run
> Starting program: /dev/shm/e29/src/emacs
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/usr/lib/libthread_db.so.1".
> [New Thread 0x7ffff1356640 (LWP 198258)]
> [New Thread 0x7ffff0ae1640 (LWP 198259)]
> [New Thread 0x7fffebfff640 (LWP 198260)]
> [New Thread 0x7fffeb758640 (LWP 198261)]
> [New Thread 0x7fffeaf57640 (LWP 198262)]
> [New Thread 0x7fffea756640 (LWP 198263)]
>
> Thread 1 "emacs" hit Breakpoint 3, handle_one_xevent (dpyinfo=0x555555e69600, event=0x7fffffffd120, finish=<optimized out>, hold_quit=0x7fffffffd3f0) at
> xterm.c:18393
> 18393          if (dpyinfo->supports_xkb
> (gdb) p xkey.state
> No symbol "xkey" in current context.
> (gdb) p dpyinfo->hyper_mod_mask
> $1 = 1

It seems that your copy of Emacs is slightly out of date, please update
and try again.  Thanks in advance!

But this does say that hyper_mask is set to what is normally ShiftMask
on X.  What happens if you comment out this bit of code in the function
`x_find_modifier_meanings'?

	  else if (dpyinfo->xkb_desc->names->vmods[i] == dpyinfo->Xatom_Hyper)
	    dpyinfo->hyper_mod_mask |= vmodmask;

Thanks.