aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChong Yidong2006-09-11 13:03:40 +0000
committerChong Yidong2006-09-11 13:03:40 +0000
commit91197db4cb05edc4ba9789a1c2339d23b37ee973 (patch)
tree2d14abedfc58b9f18cf2a50873bba73dc983edbb /src
parente027c6e48d4c199a70366a951b3c771e16f6a486 (diff)
downloademacs-91197db4cb05edc4ba9789a1c2339d23b37ee973.tar.gz
emacs-91197db4cb05edc4ba9789a1c2339d23b37ee973.zip
* keymap.c (Fkey_binding): Use string position for string objects.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog4
-rw-r--r--src/keymap.c17
2 files changed, 14 insertions, 7 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index f406681ec68..fea9f668224 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,7 @@
12006-09-11 Chong Yidong <cyd@stupidchicken.com>
2
3 * keymap.c (Fkey_binding): Use string position for string objects.
4
12006-09-11 Kim F. Storm <storm@cua.dk> 52006-09-11 Kim F. Storm <storm@cua.dk>
2 6
3 * keymap.c (Fkey_binding): Fix last change. 7 * keymap.c (Fkey_binding): Fix last change.
diff --git a/src/keymap.c b/src/keymap.c
index c249c6de406..8b99231a91d 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -1587,13 +1587,16 @@ is non-nil, `key-binding' returns the unmapped command. */)
1587 && XINT (Flength (pos)) == 10 1587 && XINT (Flength (pos)) == 10
1588 && INTEGERP (XCAR (XCDR (pos)))) 1588 && INTEGERP (XCAR (XCDR (pos))))
1589 { 1589 {
1590 Lisp_Object map, obj; 1590 Lisp_Object map, object;
1591 obj = Fnth (make_number(4), pos); 1591
1592 map = Fget_char_property (XCAR (XCDR (pos)), 1592 object = Fnth (make_number(4), pos);
1593 Qkeymap, 1593
1594 NILP (obj) ? 1594 if (CONSP (object))
1595 Fwindow_buffer (XCAR (pos)) 1595 map = Fget_char_property (XCDR (object), Qkeymap, XCAR (object));
1596 : XCAR (obj)); 1596 else
1597 map = Fget_char_property (XCAR (XCDR (pos)), Qkeymap,
1598 Fwindow_buffer (XCAR (pos)));
1599
1597 if (!NILP (Fkeymapp (map))) 1600 if (!NILP (Fkeymapp (map)))
1598 { 1601 {
1599 value = Flookup_key (map, key, accept_default); 1602 value = Flookup_key (map, key, accept_default);