Subject: Re: bug#37623: 27.0.50; describe-key fails in tab-bar-mode

From: Juri Linkov <[email-masked]>
Date: Mon, 07 Oct 2019 23:34:48 +0300

> It appears as though describe-key fails when the mouse is pressed on a
> non-currently-active tab in the tab-bar:
>
> emacs -Q
> M-x tab-bar-mode
> C-x b RET
> C-h k (then click the mouse button on a non-currently-active tab):
>
> run-hook-with-args: Wrong type argument: symbolp, #[0 "ÁÀ!" [(tab
> (name . "*scratch*") (time . 1570198894) (wc . #<window-configuration>)
> (ws ((min-height . 4) (min-width . 10) (min-height-ignore . 2)
> (min-width-ignore . 6) (min-height-safe . 1) (min-width-safe . 2)
> (min-pixel-height . 68) (min-pixel-width . 80) (min-pixel-height-ignore
> . 34) (min-pixel-width-ignore . 48) ...) leaf (pixel-width . 1600)
> (pixel-height . 714) (total-width . 200) (total-height . 42)
> (normal-height . 1.0) (normal-width . 1.0) (buffer "*scratch*" (selected
> . t) (hscroll . 0) (fringes 8 8 nil nil) (margins nil) (scroll-bars nil
> 2 t nil 0 t nil) (vscroll . 0) (dedicated) (point . 146) ...)))
> tab-bar-select-tab] 2 nil nil]Cannot find image file
> ‘/build/source/etc/images/tabs/close.xpm’

>From what I see, you clicked the mouse button on the tab close button, right?

Then I can reproduce the same problem, and it seems the bug is in
Help mode that can't handle lambda as a function, it supports only
function symbols.  A complete backtrace:

Debugger entered--Lisp error: (wrong-type-argument symbolp (lambda nil (interactive) (tab-bar-close-tab 1)))
  help-fns--globalized-minor-mode((lambda nil (interactive) (tab-bar-close-tab 1)))
  run-hook-with-args(help-fns--globalized-minor-mode (lambda nil (interactive) (tab-bar-close-tab 1)))
  describe-function-1((lambda nil (interactive) (tab-bar-close-tab 1)))
  describe-key((([(tab-bar) C-current-tab] . [(tab-bar) C-current-tab])))
  funcall-interactively(describe-key (([(tab-bar) C-current-tab] . [(tab-bar) C-current-tab])))
  call-interactively(describe-key nil nil)
  command-execute(describe-key)