X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?p=elisp.git;a=blobdiff_plain;f=vm;fp=vm;h=eb25a97dea70e0a87f5d4300d24a721af043e994;hp=7326c1b639d9685b1c123d8699b3ad48144e2247;hb=da37931ecad6bda8a1f1dc6146c1ca805359cba6;hpb=44ee31af3c67a477c92d749c462e5ebb92d8397f diff --git a/vm b/vm index 7326c1b..eb25a97 100644 --- a/vm +++ b/vm @@ -35,15 +35,17 @@ ;; Store and restore the window configuration +(setq ff/window-configuration-before-vm nil) + (defadvice vm (before ff/store-window-configuration nil activate) - (unless (boundp 'ff/window-configuration-before-vm) + (unless ff/window-configuration-before-vm (setq ff/window-configuration-before-vm (current-window-configuration))) ) (defadvice vm-quit (after ff/restore-window-configuration nil activate) - (when (boundp 'ff/window-configuration-before-vm) + (when ff/window-configuration-before-vm (set-window-configuration ff/window-configuration-before-vm) - (makunbound 'ff/window-configuration-before-vm) + (setq ff/window-configuration-before-vm nil) ) ) @@ -657,8 +659,10 @@ an attachment") (defun ff/first-buffer-in-mode (l m) (if l - (if (eq (save-excursion - (set-buffer (car l)) major-mode) m) + (if (eq + ;; (save-excursion (set-buffer (car l)) major-mode) + (with-current-buffer (car l) major-mode) + m) (car l) (ff/first-buffer-in-mode (cdr l) m))))