summaryrefslogtreecommitdiff
path: root/src/alloc.c
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1993-06-07 05:30:07 +0000
committerRichard M. Stallman <rms@gnu.org>1993-06-07 05:30:07 +0000
commitfa8de72584b5b12e603e5fcb1e8b3bf4a1483ffd (patch)
treee76b9dbe70619076ffe4f4c7f8f8fb38f0aeeada /src/alloc.c
parentc12c6fa6becd3b977366f3e246741c509c744d5a (diff)
downloademacs-fa8de72584b5b12e603e5fcb1e8b3bf4a1483ffd.tar.gz
(make_event_array): Ignore bits above CHAR_META.
Diffstat (limited to 'src/alloc.c')
-rw-r--r--src/alloc.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/alloc.c b/src/alloc.c
index a6f554ad086..e78db2af9a6 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -958,9 +958,10 @@ make_event_array (nargs, args)
for (i = 0; i < nargs; i++)
/* The things that fit in a string
- are characters that are in 0...127 after discarding the meta bit. */
+ are characters that are in 0...127,
+ after discarding the meta bit and all the bits above it. */
if (XTYPE (args[i]) != Lisp_Int
- || (XUINT (args[i]) & ~CHAR_META) >= 0200)
+ || (XUINT (args[i]) & ~(-CHAR_META)) >= 0200)
return Fvector (nargs, args);
/* Since the loop exited, we know that all the things in it are