]> git.eshelyaron.com Git - emacs.git/commitdiff
(command_loop_1): Allow direct output for insert
authorRichard M. Stallman <rms@gnu.org>
Mon, 30 May 1994 12:55:41 +0000 (12:55 +0000)
committerRichard M. Stallman <rms@gnu.org>
Mon, 30 May 1994 12:55:41 +0000 (12:55 +0000)
if have display table but it says nothing for this char code.
Don't allow it if char code has a glyph with a face code.

src/keyboard.c

index 3619dc0abf6cbb63a0686cef5975d2e633bf9cd7..844e17467d1cea9ba1e9aa71c1fcb50a34a93533 100644 (file)
@@ -1162,12 +1162,15 @@ command_loop_1 ()
                          Lisp_Object obj;
 
                          obj = DISP_CHAR_VECTOR (dp, lose);
-                         if (XTYPE (obj) == Lisp_Vector
-                             && XVECTOR (obj)->size == 1
-                             && (XTYPE (obj = XVECTOR (obj)->contents[0])
-                                 == Lisp_Int))
-                           no_redisplay =
-                             direct_output_for_insert (XINT (obj));
+                         if (NILP (obj)
+                             || (XTYPE (obj) == Lisp_Vector
+                                 && XVECTOR (obj)->size == 1
+                                 && (XTYPE (obj = XVECTOR (obj)->contents[0])
+                                     == Lisp_Int)
+                                 /* Insist face not specified in glyph.  */
+                                 && (XINT (obj) & ((-1) << 8)) == 0))
+                           no_redisplay
+                             = direct_output_for_insert (XINT (obj));
                        }
                      else
                        {