[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: recentf: update menu failed
From: |
Stefan Monnier |
Subject: |
Re: recentf: update menu failed |
Date: |
Tue, 29 Apr 2003 19:10:36 -0400 |
>
> Since the recent (ahem) changes to recentf.el, I get this message
> many times when using VM:
>
> recentf update menu failed: Malformed menu in easy-menu: (undefined)
>
> The error comes from easy-menu-get-map, called from
> easy-menu-add-item, called from easy-menu-change, called from
> recentf-update-menu.
>
> In the easy-menu-get-map call, MAP is nil, and PATH is ("files").
>
> Inside easy-menu-get-map:
> In the let* initialization, key is set to [menu-bar files].
>
> The VM mode menu map is defined (vm-menu.el) to contain entries such
> as this:
>
> ;; block the global menubar entries in the map so that VM
> ;; can take over the menubar if necessary.
> (tools . undefined)
> (files . undefined)
>
> [What VM does is to completely take over the menu-bar with
> VM-specific menu entries that replace the standard Emacs ones].
>
> The net result is that a lookup-key for [menu-bar files] returns
> 'undefined, causing easy-menu-get-map to throw an error because it's
> not a keymap.
Can you try the patch below and tell us if it helps ?
Stefan
--- easymenu.el.~1.60.~ Tue Apr 15 18:46:06 2003
+++ easymenu.el Tue Apr 29 19:09:12 2003
@@ -600,12 +600,12 @@
;; Prefer a map that already contains the to-be-modified entry.
(when to-modify
(dolist (map maps)
- (when (and map (not (integerp map))
+ (when (and (keymapp map)
(easy-menu-get-map-look-for-name to-modify map))
(throw 'found map))))
;; Use the first valid map.
(dolist (map maps)
- (when (and map (not (integerp map)))
+ (when (keymapp map)
(throw 'found map)))
;; Otherwise, make one up.
;; Hardcoding current-local-map is lame, but it's difficult