diff options
| -rw-r--r-- | lisp/repeat.el | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lisp/repeat.el b/lisp/repeat.el index 523ee3ce964..d11da6aa498 100644 --- a/lisp/repeat.el +++ b/lisp/repeat.el | |||
| @@ -280,7 +280,10 @@ can be modified by the global variable `repeat-on-final-keystroke'." | |||
| 280 | (let ((indirect (indirect-function real-last-command))) | 280 | (let ((indirect (indirect-function real-last-command))) |
| 281 | (if (or (stringp indirect) | 281 | (if (or (stringp indirect) |
| 282 | (vectorp indirect)) | 282 | (vectorp indirect)) |
| 283 | (execute-kbd-macro real-last-command) | 283 | ;; Bind real-last-command so that executing the macro |
| 284 | ;; does not alter it. | ||
| 285 | (let ((real-last-command real-last-command)) | ||
| 286 | (execute-kbd-macro real-last-command)) | ||
| 284 | (call-interactively real-last-command))))) | 287 | (call-interactively real-last-command))))) |
| 285 | (when repeat-repeat-char | 288 | (when repeat-repeat-char |
| 286 | ;; A simple recursion here gets into trouble with max-lisp-eval-depth | 289 | ;; A simple recursion here gets into trouble with max-lisp-eval-depth |