diff --git a/lisp/ob-tangle.el b/lisp/ob-tangle.el index b42d2567d..822842a63 100644 --- a/lisp/ob-tangle.el +++ b/lisp/ob-tangle.el @@ -187,12 +187,14 @@ 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 (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)))) + (let* ((visited (find-buffer-visiting file)) + (buffer (or visited (find-file-noselect file)))) + (prog1 + (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."