# HG changeset patch # User Stefan Monnier # Date 1084245465 0 # Node ID 30d4272bcc4bc30edcef647625f97d0d3411a2d6 # Parent 0224aadaa92f6ef3e6ed5b143f89712c94c97e4f (eventp): Be more discriminating with integers. diff -r 0224aadaa92f -r 30d4272bcc4b lisp/subr.el --- a/lisp/subr.el Mon May 10 22:08:58 2004 +0000 +++ b/lisp/subr.el Tue May 11 03:17:45 2004 +0000 @@ -629,7 +629,11 @@ (defsubst eventp (obj) "True if the argument is an event object." - (or (integerp obj) + (or (and (integerp obj) + ;; Filter out integers too large to be events. + ;; M is the biggest modifier. + (zerop (logand obj (lognot (1- (lsh ?\M-\^@ 1))))) + (char-valid-p (event-basic-type obj))) (and (symbolp obj) (get obj 'event-symbol-elements)) (and (consp obj)