# HG changeset patch # User Karl Heuer # Date 877025624 0 # Node ID 9561d65fd9c31a80728b68bcbeca9e19beaf3b66 # Parent 1f8e6121713dedc5c36349d3ac9cedd87f72d047 (Fwhere_is_internal): some minor mode bindings weren't being found. diff -r 1f8e6121713d -r 9561d65fd9c3 src/keymap.c --- a/src/keymap.c Thu Oct 16 18:12:06 1997 +0000 +++ b/src/keymap.c Thu Oct 16 18:13:44 1997 +0000 @@ -1883,22 +1883,28 @@ { Lisp_Object maps; Lisp_Object found, sequences; + Lisp_Object keymap1; int keymap_specified = !NILP (keymap); struct gcpro gcpro1, gcpro2, gcpro3, gcpro4, gcpro5; /* 1 means ignore all menu bindings entirely. */ int nomenus = !NILP (firstonly) && !EQ (firstonly, Qnon_ascii); + /* Find keymaps accessible from `keymap' or the current + context. But don't muck with the value of `keymap', + because `where_is_internal_1' uses it to check for + shadowed bindings. */ + keymap1 = keymap; if (! keymap_specified) { #ifdef USE_TEXT_PROPERTIES - keymap = get_local_map (PT, current_buffer); + keymap1 = get_local_map (PT, current_buffer); #else - keymap = current_buffer->keymap; + keymap1 = current_buffer->keymap; #endif } - - if (!NILP (keymap)) - maps = nconc2 (Faccessible_keymaps (get_keymap (keymap), Qnil), + + if (!NILP (keymap1)) + maps = nconc2 (Faccessible_keymaps (get_keymap (keymap1), Qnil), Faccessible_keymaps (get_keymap (current_global_map), Qnil)); else