emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r105875: * files.el (copy-directory):


From: Michael Albinus
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r105875: * files.el (copy-directory): Set directory attributes only in case
Date: Thu, 22 Sep 2011 12:00:07 +0200
User-agent: Bazaar (2.3.1)

------------------------------------------------------------
revno: 105875
committer: Michael Albinus <address@hidden>
branch nick: trunk
timestamp: Thu 2011-09-22 12:00:07 +0200
message:
  * files.el (copy-directory): Set directory attributes only in case
  they could be retrieved from the source directory.  (Bug#9565)
modified:
  lisp/ChangeLog
  lisp/files.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2011-09-22 09:28:57 +0000
+++ b/lisp/ChangeLog    2011-09-22 10:00:07 +0000
@@ -1,3 +1,8 @@
+2011-09-22  Michael Albinus  <address@hidden>
+
+       * files.el (copy-directory): Set directory attributes only in case
+       they could be retrieved from the source directory.  (Bug#9565)
+
 2011-09-22  Dima Kogan  <address@hidden>  (tiny change)
 
        * progmodes/hideshow.el (hs-looking-at-block-start-p)

=== modified file 'lisp/files.el'
--- a/lisp/files.el     2011-09-18 15:30:10 +0000
+++ b/lisp/files.el     2011-09-22 10:00:07 +0000
@@ -4941,9 +4941,10 @@
              (copy-file file target t keep-time)))))
 
       ;; Set directory attributes.
-      (set-file-modes newname (file-modes directory))
-      (if keep-time
-         (set-file-times newname (nth 5 (file-attributes directory)))))))
+      (let ((modes (file-modes directory))
+           (times (and keep-time (nth 5 (file-attributes directory)))))
+       (if modes (set-file-modes newname modes))
+       (if times (set-file-times newname times))))))
 
 (put 'revert-buffer-function 'permanent-local t)
 (defvar revert-buffer-function nil


reply via email to

[Prev in Thread] Current Thread [Next in Thread]