]> code.delx.au - gnu-emacs/blobdiff - src/keymap.c
*** empty log message ***
[gnu-emacs] / src / keymap.c
index 97884223d8d35deea4bc322ccecb4b9d6bc4cd2e..64f849f784536d8f1f3e7b9f0d21b5c7d798db4f 100644 (file)
@@ -412,7 +412,8 @@ PARENT should be nil or another keymap.  */)
        {
          Lisp_Object indices[3];
 
-         map_char_table (fix_submap_inheritance, Qnil, XCAR (list),
+         map_char_table (fix_submap_inheritance, Qnil,
+                         XCAR (list), XCAR (list),
                          keymap, 0, indices);
        }
     }
@@ -667,7 +668,8 @@ map_keymap_char_table_item (args, key, val)
 }
 
 /* Call FUN for every binding in MAP.
-   FUN is called with 4 arguments: FUN (KEY, BINDING, ARGS, DATA).  */
+   FUN is called with 4 arguments: FUN (KEY, BINDING, ARGS, DATA).
+   AUTOLOAD if non-zero means that we can autoload keymaps if necessary.  */
 void
 map_keymap (map, fun, args, data, autoload)
      map_keymap_function_t fun;
@@ -704,7 +706,7 @@ map_keymap (map, fun, args, data, autoload)
       else if (CHAR_TABLE_P (binding))
        {
          Lisp_Object indices[3];
-         map_char_table (map_keymap_char_table_item, Qnil, binding,
+         map_char_table (map_keymap_char_table_item, Qnil, binding, binding,
                          Fcons (make_save_value (fun, 0),
                                 Fcons (make_save_value (data, 0),
                                        args)),
@@ -1039,7 +1041,7 @@ is not copied.  */)
        {
          Lisp_Object indices[3];
          elt = Fcopy_sequence (elt);
-         map_char_table (copy_keymap_1, Qnil, elt, elt, 0, indices);
+         map_char_table (copy_keymap_1, Qnil, elt, elt, elt, 0, indices);
        }
       else if (VECTORP (elt))
        {
@@ -1913,7 +1915,7 @@ then the value includes only maps for prefixes that start with PREFIX.  */)
            {
              Lisp_Object indices[3];
 
-             map_char_table (accessible_keymaps_char_table, Qnil,
+             map_char_table (accessible_keymaps_char_table, Qnil, elt,
                              elt, Fcons (Fcons (maps, make_number (is_metized)),
                                          Fcons (tail, thisseq)),
                              0, indices);
@@ -2430,7 +2432,7 @@ where_is_internal (definition, keymaps, firstonly, noindirect, no_remap)
                            Fcons (Fcons (this, last),
                                   Fcons (make_number (nomenus),
                                          make_number (last_is_meta))));
-             map_char_table (where_is_internal_2, Qnil, elt, args,
+             map_char_table (where_is_internal_2, Qnil, elt, elt, args,
                              0, indices);
              sequences = XCDR (XCAR (args));
            }