Subject: Re: bug#4471: menu-bar menu is undefined

From: Stefan Monnier <[email-masked]>
Date: Thu, 17 Sep 2009 23:02:50 -0400

> Some menu-bar's menus fail to open in non-toolkit X builds.
> For instance, when I click on the "Buffer-Menu" menu-bar's item,
> it signals the error:

>   <menu-bar> <Buffer-menu-mode> <nil> is undefined

> However, with the following patch it displays the menu correctly:

> Index: lisp/buff-menu.el
> ===================================================================
> RCS file: /sources/emacs/emacs/lisp/buff-menu.el,v
> retrieving revision 1.125
> diff -u -r1.125 buff-menu.el
> --- lisp/buff-menu.el	15 Jan 2009 16:46:09 -0000	1.125
> +++ lisp/buff-menu.el	17 Sep 2009 21:15:37 -0000
> @@ -119,7 +119,7 @@
 
>  (defvar Buffer-menu-mode-map
>    (let ((map (make-keymap))
> -	(menu-map (make-sparse-keymap)))
> +	(menu-map (make-sparse-keymap "Buffer-Menu")))
>      (suppress-keymap map t)
>      (define-key map "v" 'Buffer-menu-select)
>      (define-key map "2" 'Buffer-menu-2-window)

IIUC this is a correct way to fix it, indeed.
OTOH it would be better to make the non-toolkit code accept the same
keymaps as accepted by the toolkit code.

        Stefan