From 59da320b307f5a6e74ad6ddc6554c09448caf431 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Tue, 26 May 2015 17:06:53 +0200 Subject: [PATCH] org-src: Fix auto-save feature * lisp/org-src.el (org-src-mode): Do not stop auto save feature when current buffer is no longer an edit buffer. Reported-by: Andreas Leha --- lisp/org-src.el | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/lisp/org-src.el b/lisp/org-src.el index 3c1546a51..44097a35b 100644 --- a/lisp/org-src.el +++ b/lisp/org-src.el @@ -577,14 +577,16 @@ See also `org-src-mode-hook'." (run-with-idle-timer org-edit-src-auto-save-idle-delay t (lambda () - (let (edit-flag) - (dolist (b (buffer-list)) - (when (org-src-edit-buffer-p) - (unless edit-flag (setq edit-flag t)) - (when (buffer-modified-p) (org-edit-src-save)))) - (unless edit-flag - (cancel-timer org-src--auto-save-timer) - (setq org-src--auto-save-timer nil)))))))) + (save-excursion + (let (edit-flag) + (dolist (b (buffer-list)) + (with-current-buffer b + (when (org-src-edit-buffer-p) + (unless edit-flag (setq edit-flag t)) + (when (buffer-modified-p) (org-edit-src-save))))) + (unless edit-flag + (cancel-timer org-src--auto-save-timer) + (setq org-src--auto-save-timer nil))))))))) (defun org-src-mode-configure-edit-buffer () (when (org-bound-and-true-p org-src--from-org-mode) -- 2.11.4.GIT