diff --git a/mu4e/mu4e-headers.el b/mu4e/mu4e-headers.el index c279a88a..a73bce7f 100644 --- a/mu4e/mu4e-headers.el +++ b/mu4e/mu4e-headers.el @@ -708,7 +708,11 @@ after the end of the search results." ;; if we need to jump to some specific message, do so now (goto-char (point-min)) (when mu4e~headers-msgid-target - (mu4e-headers-goto-message-id mu4e~headers-msgid-target)) + (if (eq (current-buffer) (window-buffer)) + (mu4e-headers-goto-message-id mu4e~headers-msgid-target) + (let* ((pos (mu4e-headers-goto-message-id mu4e~headers-msgid-target))) + (when pos + (set-window-point (get-buffer-window) pos))))) (when (and mu4e~headers-view-target (mu4e-message-at-point 'noerror)) ;; view the message at point when there is one. (mu4e-headers-view-message))