diff options
| author | Stefan Monnier | 2009-09-11 05:10:15 +0000 |
|---|---|---|
| committer | Stefan Monnier | 2009-09-11 05:10:15 +0000 |
| commit | 9d8893324678838706c4b27eb18aa285101dd414 (patch) | |
| tree | 840eb0183c753cef6aad9981bb9010ff3583acfa /src/keymap.c | |
| parent | b6fe8102944938c1cac297243fa2f04dd274f673 (diff) | |
| download | emacs-9d8893324678838706c4b27eb18aa285101dd414.tar.gz emacs-9d8893324678838706c4b27eb18aa285101dd414.zip | |
(where_is_internal): Don't erroneously return nil right after
filling the cache.
(where_is_internal_1): Fix up typo.
Diffstat (limited to 'src/keymap.c')
| -rw-r--r-- | src/keymap.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/keymap.c b/src/keymap.c index 561b3453967..bcbeda72c8c 100644 --- a/src/keymap.c +++ b/src/keymap.c | |||
| @@ -2765,12 +2765,16 @@ where_is_internal (Lisp_Object definition, Lisp_Object keymaps, | |||
| 2765 | } | 2765 | } |
| 2766 | 2766 | ||
| 2767 | if (nomenus && !noindirect) | 2767 | if (nomenus && !noindirect) |
| 2768 | /* Remember for which keymaps this cache was built. | 2768 | { /* Remember for which keymaps this cache was built. |
| 2769 | We do it here (late) because we want to keep where_is_cache_keymaps | 2769 | We do it here (late) because we want to keep where_is_cache_keymaps |
| 2770 | set to t while the cache isn't fully filled. */ | 2770 | set to t while the cache isn't fully filled. */ |
| 2771 | where_is_cache_keymaps = keymaps; | 2771 | where_is_cache_keymaps = keymaps; |
| 2772 | 2772 | /* During cache-filling, data.sequences is not filled by | |
| 2773 | return data.sequences; | 2773 | where_is_internal_1. */ |
| 2774 | return Fgethash (definition, where_is_cache, Qnil); | ||
| 2775 | } | ||
| 2776 | else | ||
| 2777 | return data.sequences; | ||
| 2774 | } | 2778 | } |
| 2775 | 2779 | ||
| 2776 | static Lisp_Object Vwhere_is_preferred_modifier; | 2780 | static Lisp_Object Vwhere_is_preferred_modifier; |
| @@ -2973,7 +2977,7 @@ where_is_internal_1 (key, binding, args, data) | |||
| 2973 | Lisp_Object sequence; | 2977 | Lisp_Object sequence; |
| 2974 | 2978 | ||
| 2975 | /* Search through indirections unless that's not wanted. */ | 2979 | /* Search through indirections unless that's not wanted. */ |
| 2976 | if (noindirect) | 2980 | if (!noindirect) |
| 2977 | binding = get_keyelt (binding, 0); | 2981 | binding = get_keyelt (binding, 0); |
| 2978 | 2982 | ||
| 2979 | /* End this iteration if this element does not match | 2983 | /* End this iteration if this element does not match |