X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/142e26a72e9b8bbbec23c6bf7234e9f2544b5f89..b336bfcdf39f1e4d35bff4a7bd01d3b4bca8f516:/lisp/shadowfile.el diff --git a/lisp/shadowfile.el b/lisp/shadowfile.el index 29eb04e7c3..4250e459f0 100644 --- a/lisp/shadowfile.el +++ b/lisp/shadowfile.el @@ -1,7 +1,7 @@ ;;; shadowfile.el --- automatic file copying ;; Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004, -;; 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +;; 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. ;; Author: Boris Goldowsky ;; Keywords: comm files @@ -88,14 +88,14 @@ :group 'files) (defcustom shadow-noquery nil - "*If t, always copy shadow files without asking. + "If t, always copy shadow files without asking. If nil \(the default), always ask. If not nil and not t, ask only if there is no buffer currently visiting the file." :type '(choice (const t) (const nil) (other :tag "Ask if no buffer" maybe)) :group 'shadow) (defcustom shadow-inhibit-message nil - "*If non-nil, do not display a message when a file needs copying." + "If non-nil, do not display a message when a file needs copying." :type 'boolean :group 'shadow) @@ -510,7 +510,7 @@ Pending copies are stored in variable `shadow-files-to-copy', and in call it manually." (interactive "P") (if (not shadow-files-to-copy) - (if (interactive-p) + (if (called-interactively-p 'interactive) (message "No files need to be shadowed.")) (save-excursion (map-y-or-n-p (function @@ -573,13 +573,11 @@ site." (to (shadow-expand-cluster-in-file-name (cdr s)))) (when buffer (set-buffer buffer) - (save-restriction - (widen) - (condition-case i - (progn - (write-region (point-min) (point-max) to) - (shadow-remove-from-todo s)) - (error (message "Shadow %s not updated!" (cdr s)))))))) + (condition-case i + (progn + (write-region nil nil to) + (shadow-remove-from-todo s)) + (error (message "Shadow %s not updated!" (cdr s))))))) (defun shadow-shadows-of (file) "Return copy operations needed to update FILE. @@ -709,8 +707,7 @@ With non-nil argument also saves the buffer." (defun shadow-save-todo-file () (if (and shadow-todo-buffer (buffer-modified-p shadow-todo-buffer)) - (save-excursion - (set-buffer shadow-todo-buffer) + (with-current-buffer shadow-todo-buffer (condition-case nil ; have to continue even in case of (basic-save-buffer) ; error, otherwise kill-emacs might (error ; not work! @@ -764,7 +761,7 @@ look for files that have been changed and need to be copied to other systems." (buffer-list)))) (yes-or-no-p "Modified buffers exist; exit anyway? ")) (or (not (fboundp 'process-list)) - ;; process-list is not defined on VMS. + ;; process-list is not defined on MSDOS. (let ((processes (process-list)) active) (while processes @@ -807,10 +804,11 @@ look for files that have been changed and need to be copied to other systems." (file-name-as-directory (shadow-expand-file-name "~")))) (if (null shadow-info-file) (setq shadow-info-file - (shadow-expand-file-name "~/.shadows"))) + (shadow-expand-file-name (convert-standard-filename "~/.shadows")))) (if (null shadow-todo-file) (setq shadow-todo-file - (shadow-expand-file-name "~/.shadow_todo"))) + (shadow-expand-file-name + (convert-standard-filename "~/.shadow_todo")))) (if (not (shadow-read-files)) (progn (message "Shadowfile information files not found - aborting")