aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/doc.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/doc.c b/src/doc.c
index f306caed36a..0d1ab394647 100644
--- a/src/doc.c
+++ b/src/doc.c
@@ -882,6 +882,9 @@ thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ int
882 { 882 {
883 struct buffer *oldbuf; 883 struct buffer *oldbuf;
884 int start_idx; 884 int start_idx;
885 /* This is for computing the SHADOWS arg for describe_map_tree. */
886 Lisp_Object active_maps = Fcurrent_active_maps (Qnil);
887 Lisp_Object earlier_maps;
885 888
886 changed = 1; 889 changed = 1;
887 strp += 2; /* skip \{ or \< */ 890 strp += 2; /* skip \{ or \< */
@@ -932,7 +935,13 @@ thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ int
932 else if (start[-1] == '<') 935 else if (start[-1] == '<')
933 keymap = tem; 936 keymap = tem;
934 else 937 else
935 describe_map_tree (tem, 1, Qnil, Qnil, (char *)0, 1, 0, 0); 938 {
939 /* Get the list of active keymaps that precede this one.
940 If this one's not active, get nil. */
941 earlier_maps = Fcdr (Fmemq (tem, Freverse (active_maps)));
942 describe_map_tree (tem, 1, Fnreverse (earlier_maps),
943 Qnil, (char *)0, 1, 0, 0, 1);
944 }
936 tem = Fbuffer_string (); 945 tem = Fbuffer_string ();
937 Ferase_buffer (); 946 Ferase_buffer ();
938 set_buffer_internal (oldbuf); 947 set_buffer_internal (oldbuf);