branch: externals/org commit 2b7ea20346329e00caffb999e5bc797014071432 Merge: d45bd62 aabcf9e Author: Nicolas Goaziou <m...@nicolasgoaziou.fr> Commit: Nicolas Goaziou <m...@nicolasgoaziou.fr>
Merge branch 'bugfix' --- lisp/ob-tangle.el | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/lisp/ob-tangle.el b/lisp/ob-tangle.el index 0a35dc5..b42d256 100644 --- a/lisp/ob-tangle.el +++ b/lisp/ob-tangle.el @@ -187,15 +187,12 @@ source code blocks by languages matching a regular expression. Return a list whose CAR is the tangled file name." (interactive "fFile to tangle: \nP") - (let ((visited-p (find-buffer-visiting (expand-file-name file))) - to-be-removed) - (prog1 - (save-window-excursion - (find-file file) - (setq to-be-removed (current-buffer)) - (mapcar #'expand-file-name (org-babel-tangle nil target-file lang-re))) - (unless visited-p - (kill-buffer to-be-removed))))) + (let ((visited (find-buffer-visiting file)) + (buffer (or visited (find-file-noselect file)))) + (with-current-buffer buffer + (org-with-wide-buffer + (mapcar #'expand-file-name (org-babel-tangle nil target-file lang-re)))) + (unless visited (kill-buffer buffer)))) (defun org-babel-tangle-publish (_ filename pub-dir) "Tangle FILENAME and place the results in PUB-DIR."