From 08e26e8bfa6ea900b9f213506ec1d053f7e629f4 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Tue, 19 Sep 2006 10:19:34 +0000 Subject: [PATCH] Include alloca.h if available. (Fkey_binding): Only use AREF after checking it's a vector. Remove unused var `window'. --- src/ChangeLog | 6 ++++++ src/keymap.c | 20 +++++++++----------- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 17258fff1b8..cb76b786499 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2006-09-19 Stefan Monnier + + * keymap.c: Include alloca.h if available. + (Fkey_binding): Only use AREF after checking it's a vector. + Remove unused var `window'. + 2006-09-19 YAMAMOTO Mitsuharu * emacs.c (shut_down_emacs) [!subprocesses]: Don't set diff --git a/src/keymap.c b/src/keymap.c index 45bcba9a5fc..a6cccfabcbb 100644 --- a/src/keymap.c +++ b/src/keymap.c @@ -23,6 +23,9 @@ Boston, MA 02110-1301, USA. */ #include #include +#if HAVE_ALLOCA_H +# include +#endif #include "lisp.h" #include "commands.h" #include "buffer.h" @@ -1595,15 +1598,12 @@ specified buffer position instead of point are used. GCPRO2 (key, position); - if (NILP (position)) + if (NILP (position) && VECTORP (key)) { - Lisp_Object event; - /* mouse events may have a symbolic prefix indicating the - scrollbar or mode line */ - if (SYMBOLP (AREF (key, 0)) && ASIZE (key) > 1) - event = AREF (key, 1); - else - event = AREF (key, 0); + Lisp_Object event + /* mouse events may have a symbolic prefix indicating the + scrollbar or mode line */ + = AREF (key, SYMBOLP (AREF (key, 0)) && ASIZE (key) > 1 ? 1 : 0); /* We are not interested in locations without event data */ @@ -1672,9 +1672,7 @@ specified buffer position instead of point are used. if (CONSP (position)) { - Lisp_Object string, window; - - window = POSN_WINDOW (position); + Lisp_Object string; /* For a mouse click, get the local text-property keymap of the place clicked on, rather than point. */ -- 2.11.4.GIT