فهرست منبع

org-persist-write: Do not try to write cache when killing indirect buffer

Ihor Radchenko 3 سال پیش
والد
کامیت
5abd149cf1
1فایلهای تغییر یافته به همراه10 افزوده شده و 10 حذف شده
  1. 10 10
      lisp/org-persist.el

+ 10 - 10
lisp/org-persist.el

@@ -207,16 +207,16 @@ When BUFFER is `all', unregister VAR in all buffers."
 
 (defun org-persist-write-all (&optional buffer)
   "Save all the persistent data."
-  (dolist (index org-persist--index)
-    (when (or (not (plist-get index :path))
-              (and (get-file-buffer (plist-get index :path))
-                   (or (not buffer)
-                       (equal (buffer-file-name (or (buffer-base-buffer buffer)
-                                                    buffer))
-                              (plist-get index :path)))))
-      (org-persist-write (plist-get index :variable)
-              (when (plist-get index :path)
-                (get-file-buffer (plist-get index :path)))))))
+  (unless (and buffer (not (buffer-file-name buffer)))
+    (dolist (index org-persist--index)
+      (when (or (not (plist-get index :path))
+                (and (get-file-buffer (plist-get index :path))
+                     (or (not buffer)
+                         (equal (buffer-file-name buffer)
+                                (plist-get index :path)))))
+        (org-persist-write (plist-get index :variable)
+                (when (plist-get index :path)
+                  (get-file-buffer (plist-get index :path))))))))
 
 (defun org-persist-write-all-buffer ()
   "Call `org-persist-write-all' in current buffer."