]> git.eshelyaron.com Git - emacs.git/commitdiff
Replace uses of `save-buffer' with `write-region'
authorDmitry Gutov <dgutov@yandex.ru>
Wed, 21 May 2014 02:14:38 +0000 (05:14 +0300)
committerDmitry Gutov <dgutov@yandex.ru>
Wed, 21 May 2014 02:14:38 +0000 (05:14 +0300)
* lisp/emacs-lisp/package.el (package--download-one-archive): Use
`write-region' instead of `save-buffer' to avoid running various
hooks.
(describe-package-1): Same.  Insert newline at the end of the
buffer if appropriate.

Fixes: debbugs:17155
lisp/ChangeLog
lisp/emacs-lisp/package.el

index 2c96eeadfb7a6b72f75435e0b34e6ed8ab51f693..6f70c04d2ab92c6376d825a2b32af40c21b0ca4f 100644 (file)
@@ -1,3 +1,11 @@
+2014-05-21  Dmitry Gutov  <dgutov@yandex.ru>
+
+       * emacs-lisp/package.el (package--download-one-archive): Use
+       `write-region' instead of `save-buffer' to avoid running various
+       hooks.  (Bug#17155)
+       (describe-package-1): Same.  Insert newline at the end of the
+       buffer if appropriate.
+
 2014-05-20  Juri Linkov  <juri@jurta.org>
 
        * avoid.el (mouse-avoidance-set-mouse-position): Don't raise frame.
index c194e1352ac05277f45a424a64d0a02c0c9fde8e..8b5c742d4cce211e8a4c93a023c21a412e07a1fd 100644 (file)
@@ -1254,10 +1254,7 @@ similar to an entry in `package-alist'.  Save the cached copy to
       ;; may fetch a URL redirect page).
       (when (listp (read (current-buffer)))
        (make-directory dir t)
-       (setq buffer-file-name (expand-file-name file dir))
-       (let ((version-control 'never)
-              (require-final-newline nil))
-         (save-buffer))))
+        (write-region nil nil (expand-file-name file dir) nil 'silent)))
     (when good-signatures
       ;; Write out good signatures into archive-contents.signed file.
       (write-region (mapconcat #'epg-signature-to-string good-signatures "\n")
@@ -1503,11 +1500,13 @@ If optional arg NO-ACTIVATE is non-nil, don't activate packages."
                      (package--with-work-buffer
                          (package-archive-base desc)
                          (format "%s-readme.txt" name)
-                       (setq buffer-file-name
-                             (expand-file-name readme package-user-dir))
-                       (let ((version-control 'never)
-                             (require-final-newline t))
-                         (save-buffer))
+                       (save-excursion
+                         (goto-char (point-max))
+                         (unless (bolp)
+                           (insert ?\n)))
+                       (write-region nil nil
+                                     (expand-file-name readme package-user-dir)
+                                     nil 'silent)
                        (setq readme-string (buffer-string))
                        t))
                 (error nil))