* lisp/subr.el (sit-for): Don't run input-methods.
authorStefan Monnier <monnier@iro.umontreal.ca>
Thu, 29 May 2014 16:38:01 +0000 (12:38 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Thu, 29 May 2014 16:38:01 +0000 (12:38 -0400)
Fixes: debbugs:15614

lisp/ChangeLog
lisp/subr.el

index 7cdd43b..962b954 100644 (file)
@@ -1,3 +1,7 @@
+2014-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * subr.el (sit-for): Don't run input-methods (bug#15614).
+
 2014-05-28  Glenn Morris  <rgm@gnu.org>
 
        * cus-start.el: Fix some :version numbers.
index 48cb33f..0a95ceb 100644 (file)
@@ -2168,7 +2168,12 @@ floating point support."
     ;; FIXME: we should not read-event here at all, because it's much too
     ;; difficult to reliably "undo" a read-event by pushing it onto
     ;; unread-command-events.
-    (let ((read (read-event nil t seconds)))
+    ;; For bug#14782, we need read-event to do the keyboard-coding-system
+    ;; decoding (hence non-nil as second arg under POSIX ttys).
+    ;; For bug#15614, we need read-event not to inherit-input-method.
+    ;; So we temporarily suspend input-method-function.
+    (let ((read (let ((input-method-function nil))
+                  (read-event nil t seconds))))
       (or (null read)
          (progn
            ;; If last command was a prefix arg, e.g. C-u, push this event onto