From b875690bc0801358d23918b8cf0f710797ae8f13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Abd=C3=B3=20Roig-Maranges?= Date: Thu, 6 Dec 2012 20:38:25 +0100 Subject: [PATCH] Change mode before setting local variables in mu4e-view Otherwise, the mode-change messes up with local bindings. In paricular, this caused mu4e~view-msg contain the wrong path after a flag change. --- mu4e/mu4e-view.el | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/mu4e/mu4e-view.el b/mu4e/mu4e-view.el index 3519722b..11963b48 100644 --- a/mu4e/mu4e-view.el +++ b/mu4e/mu4e-view.el @@ -228,19 +228,19 @@ marking if it still had that." (if embedded (local-set-key "q" 'kill-buffer-and-window) - (setq mu4e~view-buffer buf)) + (setq mu4e~view-buffer buf))) + + (unless (eq major-mode 'mu4e-view-mode) + (mu4e-view-mode)) (setq ;; buffer local - mu4e~view-msg msg - mu4e~view-headers-buffer headersbuf)) + mu4e~view-msg msg + mu4e~view-headers-buffer headersbuf) - (unless (or refresh embedded) + (unless (or refresh embedded) ;; no use in trying to set flags again, or when it's an embedded ;; message - (mu4e~view-mark-as-read-maybe)) - - ;; and switch! - (mu4e-view-mode)))) + (mu4e~view-mark-as-read-maybe))))) (defun mu4e~view-construct-header (field val &optional dont-propertize-val)