diff options
| -rw-r--r-- | lisp/server.el | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/lisp/server.el b/lisp/server.el index f03c802bb77..690f51034f2 100644 --- a/lisp/server.el +++ b/lisp/server.el | |||
| @@ -414,6 +414,16 @@ PROC is the server process. Format of STRING is \"PATH PATH PATH... \\n\"." | |||
| 414 | (run-with-timer 0 nil (lexical-let ((proc proc)) | 414 | (run-with-timer 0 nil (lexical-let ((proc proc)) |
| 415 | (lambda () (server-process-filter proc "")))) | 415 | (lambda () (server-process-filter proc "")))) |
| 416 | (top-level)) | 416 | (top-level)) |
| 417 | (condition-case nil | ||
| 418 | ;; If we're running isearch, we must abort it to allow Emacs to | ||
| 419 | ;; display the buffer and switch to it. | ||
| 420 | (mapc #'(lambda (buffer) | ||
| 421 | (with-current-buffer buffer | ||
| 422 | (when (bound-and-true-p isearch-mode) | ||
| 423 | (isearch-cancel)))) | ||
| 424 | (buffer-list)) | ||
| 425 | ;; Signaled by isearch-cancel | ||
| 426 | (quit (message nil))) | ||
| 417 | ;; If the input is multiple lines, | 427 | ;; If the input is multiple lines, |
| 418 | ;; process each line individually. | 428 | ;; process each line individually. |
| 419 | (while (string-match "\n" string) | 429 | (while (string-match "\n" string) |