mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-29 08:31:35 -08:00
* keymap.c (get_keymap_1): Don't try to autoload OBJECT's function
unless the autoload form indicates that it's a keymap.
This commit is contained in:
parent
07d2b8de62
commit
8e4dfd5403
1 changed files with 13 additions and 6 deletions
19
src/keymap.c
19
src/keymap.c
|
|
@ -205,19 +205,26 @@ get_keymap_1 (object, error, autoload)
|
|||
if (CONSP (tem) && EQ (XCONS (tem)->car, Qkeymap))
|
||||
return tem;
|
||||
|
||||
/* Should we do an autoload? */
|
||||
/* Should we do an autoload? Autoload forms for keymaps have
|
||||
Qkeymap as their fifth element. */
|
||||
if (autoload
|
||||
&& XTYPE (object) == Lisp_Symbol
|
||||
&& CONSP (tem)
|
||||
&& EQ (XCONS (tem)->car, Qautoload))
|
||||
{
|
||||
struct gcpro gcpro1, gcpro2;
|
||||
Lisp_Object tail;
|
||||
|
||||
GCPRO2 (tem, object)
|
||||
do_autoload (tem, object);
|
||||
UNGCPRO;
|
||||
tail = Fnth (make_number (4), tem);
|
||||
if (EQ (tail, Qkeymap))
|
||||
{
|
||||
struct gcpro gcpro1, gcpro2;
|
||||
|
||||
goto autoload_retry;
|
||||
GCPRO2 (tem, object)
|
||||
do_autoload (tem, object);
|
||||
UNGCPRO;
|
||||
|
||||
goto autoload_retry;
|
||||
}
|
||||
}
|
||||
|
||||
if (error)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue