changeset 66834:871ff6d80553

(bookmark-write-file): Don't visit the destination file, just write the data to it using write-region. This is similar to revision 1.32 of saveplace.el, but with an additional change to avoid visiting the file in the first place.
author Karl Fogel <kfogel@red-bean.com>
date Sat, 12 Nov 2005 20:30:22 +0000
parents efab878cd2e1
children 96e7147004a8
files lisp/ChangeLog lisp/bookmark.el
diffstat 2 files changed, 10 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Sat Nov 12 17:17:52 2005 +0000
+++ b/lisp/ChangeLog	Sat Nov 12 20:30:22 2005 +0000
@@ -1,3 +1,10 @@
+2005-11-12  Karl Fogel  <kfogel@red-bean.com>
+
+	* bookmark.el (bookmark-write-file): Don't visit the destination
+	file, just write the data to it using write-region.  This is
+	similar to revision 1.32 of saveplace.el, but with an additional
+	change to avoid visiting the file in the first place.
+
 2005-11-12  Chong Yidong  <cyd@stupidchicken.com>
 
 	* hi-lock.el (hi-lock-mode): Set the default value of
--- a/lisp/bookmark.el	Sat Nov 12 17:17:52 2005 +0000
+++ b/lisp/bookmark.el	Sat Nov 12 20:30:22 2005 +0000
@@ -1352,12 +1352,11 @@
     (save-window-excursion
       (if (>= baud-rate 9600)
           (message "Saving bookmarks to file %s..." file))
-      (set-buffer (let ((enable-local-variables nil))
-                    (find-file-noselect file)))
+      (set-buffer (get-buffer-create " *Bookmarks*"))
       (goto-char (point-min))
+      (delete-region (point-min) (point-max))
       (let ((print-length nil)
 	    (print-level nil))
-	(delete-region (point-min) (point-max))
 	(bookmark-insert-file-format-version-stamp)
 	(pp bookmark-alist (current-buffer))
 	(let ((version-control
@@ -1368,7 +1367,7 @@
 		(t
 		 t))))
           (condition-case nil
-              (write-file file)
+              (write-region (point-min) (point-max) file)
             (file-error (message "Can't write %s" file)))
 	  (kill-buffer (current-buffer))
 	  (if (>= baud-rate 9600)