diff lisp/net/tramp-vc.el @ 55420:c44f9de543e3

2004-05-07 Kai Grossjohann <kai@emptydomain.de> Version 2.0.40 of Tramp released. * net/tramp.el (tramp-completion-mode, tramp-md5-function): Use symbol-function to invoke functions only known on some Emacs flavors. This avoids byte-compiler warnings. Reported by Kevin Scaldeferri <kevin@scaldeferri.com>. (tramp-do-copy-or-rename-file-via-buffer): Renamed from tramp-do-copy-or-rename-via-buffer (without `file'), to make it consistent with the other tramp-do-* functions. (tramp-do-copy-or-rename-file): Calls adjusted. (tramp-process-initial-commands): Avoid liveness check on shell -- we know that it must be alive since we're opening a connection at this moment. (tramp-last-cmd): New internal variable. (tramp-process-echoes): New tunable. (tramp-send-command): Set tramp-last-cmd. (tramp-wait-for-output): Delete echo, if applicable. (tramp-read-passwd): Construct the key for the password cache in a way that works for multi methods, too. (tramp-bug): Add backup-directory-alist and bkup-backup-directory-info to bug reports, with Tramp counterparts. 2004-05-01 Michael Albinus <michael.albinus@gmx.de> * net/tramp*.el: Suppress byte-compiler warnings where possible. * net/tramp.el (tramp-out-of-band-prompt-regexp) (tramp-actions-copy-out-of-band): New defcustoms. (tramp-do-copy-or-rename-file-out-of-band): Asynchronous process used instead of a synchronous one. Allows password entering. (tramp-action-out-of-band): New defun. (tramp-open-connection-rsh, tramp-method-out-of-band-p): Remove restriction with password from doc string. (tramp-bug): Add variables `tramp-terminal-prompt-regexp', `tramp-out-of-band-prompt-regexp', `tramp-actions-copy-out-of-band', `password-cache' and `password-cache-expiry'. (toplevel): Remove todo item wrt ssh-agent. Obsolete due to password caching. (tramp-touch): FILE can be a local file, too. (TODO): Remove items done. (tramp-handle-insert-directory): Properly quote file name also if not full-directory-p. Handle wildcard case. Reported by Andreas Schwab <schwab@suse.de>. (tramp-do-copy-or-rename-file-via-buffer): Set permissions of the new file. (tramp-handle-file-local-copy, tramp-handle-write-region): The permissions of the temporary file are set if filename exists. Reported by Ted Stern <stern@cray.com>. (tramp-backup-directory-alist) (tramp-bkup-backup-directory-info): New defcustoms. (tramp-file-name-handler-alist): Add entry for `find-backup-file-name'. (tramp-handle-find-backup-file-name): New function. Implements Tramp's find-backup-file-name. * net/tramp-smb.el (tramp-smb-file-name-handler-alist): Add entry for `find-backup-file-name'. * net/tramp-vc.el (tramp-vc-workfile-unchanged-p): Correct typo ("file" -> "filename"). Reported by Kim F. Storm <storm@cua.dk>.
author Kai Großjohann <kgrossjo@eu.uu.net>
date Fri, 07 May 2004 21:20:10 +0000
parents 0c19f1a19b2b
children 9459300bf43b 4c90ffeb71c5
line wrap: on
line diff
--- a/lisp/net/tramp-vc.el	Fri May 07 19:41:11 2004 +0000
+++ b/lisp/net/tramp-vc.el	Fri May 07 21:20:10 2004 +0000
@@ -1,6 +1,6 @@
 ;;; tramp-vc.el --- Version control integration for TRAMP.el
 
-;; Copyright (C) 2000 by Free Software Foundation, Inc.
+;; Copyright (C) 2000, 2001, 2002, 2003, 2004 by Free Software Foundation, Inc.
 
 ;; Author: Daniel Pittman <daniel@danann.net>
 ;; Keywords: comm, processes
@@ -38,6 +38,14 @@
   (require 'vc-rcs))
 (require 'tramp)
 
+;; Avoid byte-compiler warnings if the byte-compiler supports this.
+;; Currently, XEmacs supports this.
+(eval-when-compile
+  (when (fboundp 'byte-compiler-options)
+    (let (unused-vars) ; Pacify Emacs byte-compiler
+      (defalias 'warnings 'identity) ; Pacify Emacs byte-compiler
+      (byte-compiler-options (warnings (- unused-vars))))))
+
 ;; -- vc --
 
 ;; This used to blow away the file-name-handler-alist and reinstall
@@ -163,7 +171,9 @@
   (if vc-command-messages
       (message "Running %s on %s..." command file))
   (save-current-buffer
-    (unless (eq buffer t) (vc-setup-buffer buffer))
+    (unless (eq buffer t)
+      ; Pacify byte-compiler
+      (funcall (symbol-function 'vc-setup-buffer) buffer))
     (let ((squeezed nil)
 	  (inhibit-read-only t)
 	  (status 0))
@@ -192,9 +202,10 @@
                  (if (integerp status) (format "status %d" status) status))))
       (if vc-command-messages
           (message "Running %s...OK" command))
-      (vc-exec-after
-       `(run-hook-with-args
-         'vc-post-command-functions ',command ',localname ',flags))
+      ; Pacify byte-compiler
+      (funcall (symbol-function 'vc-exec-after)
+	       `(run-hook-with-args
+		 'vc-post-command-functions ',command ',localname ',flags))
       status))))
 
 
@@ -325,7 +336,8 @@
                              (not want-differences-if-changed))))
         (zerop status))
     ;; New VC.  Call `vc-default-workfile-unchanged-p'.
-    (vc-default-workfile-unchanged-p (vc-backend file) filename)))
+      (funcall (symbol-function 'vc-default-workfile-unchanged-p)
+	       (vc-backend filename) filename)))
 
 (defadvice vc-workfile-unchanged-p
   (around tramp-advice-vc-workfile-unchanged-p
@@ -391,14 +403,15 @@
   ;; Pacify byte-compiler; this symbol is bound in the calling
   ;; function.  CCC: Maybe it would be better to move the
   ;; boundness-checking into this function?
-  (let ((file (symbol-value 'file))
-	(remote-uid
-	 ;; With Emacs 21.4, `file-attributes' has got an optional parameter
-	 ;; ID-FORMAT. Handle this case backwards compatible.
-	 (if (and (functionp 'subr-arity)
-		  (= 2 (cdr (subr-arity (symbol-function 'file-attributes)))))
-	     (nth 2 (file-attributes file 'integer))
-	   (nth 2 (file-attributes file)))))
+  (let* ((file (symbol-value 'file))
+	 (remote-uid
+	  ;; With Emacs 21.4, `file-attributes' has got an optional parameter
+	  ;; ID-FORMAT. Handle this case backwards compatible.
+	  (if (and (functionp 'subr-arity)
+		   (= 2 (cdr (funcall (symbol-function 'subr-arity)
+				      (symbol-function 'file-attributes)))))
+	      (nth 2 (file-attributes file 'integer))
+	    (nth 2 (file-attributes file)))))
     (if (and uid (/= uid remote-uid))
 	(error "tramp-handle-vc-user-login-name cannot map a uid to a name")
       (let* ((v (tramp-dissect-file-name (tramp-handle-expand-file-name file)))