* net/tramp.el (top, with-progress-reporter): Use
authorMichael Albinus <michael.albinus@gmx.de>
Thu, 6 May 2010 08:40:06 +0000 (10:40 +0200)
committerMichael Albinus <michael.albinus@gmx.de>
Thu, 6 May 2010 08:40:06 +0000 (10:40 +0200)
`symbol-function' inside `funcall'.

* net/tramp-compat.el (tramp-compat-file-attributes)
(tramp-compat-delete-file, tramp-compat-delete-directory): Handle
only `wrong-number-of-arguments' error.

* net/tramp-gvfs.el (tramp-gvfs-handle-copy-file): Fix typo.
(tramp-gvfs-handle-file-selinux-context): Use `symbol-function'
inside `funcall'.

lisp/ChangeLog
lisp/net/tramp-compat.el
lisp/net/tramp-gvfs.el
lisp/net/tramp.el

index 97a0f8c..5c7db67 100644 (file)
@@ -1,3 +1,16 @@
+2010-05-06  Michael Albinus  <michael.albinus@gmx.de>
+
+       * net/tramp.el (top, with-progress-reporter): Use
+       `symbol-function' inside `funcall'.
+
+       * net/tramp-compat.el (tramp-compat-file-attributes)
+       (tramp-compat-delete-file, tramp-compat-delete-directory): Handle
+       only `wrong-number-of-arguments' error.
+
+       * net/tramp-gvfs.el (tramp-gvfs-handle-copy-file): Fix typo.
+       (tramp-gvfs-handle-file-selinux-context): Use `symbol-function'
+       inside `funcall'.
+
 2010-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 
        * minibuffer.el (completion--sreverse, completion--common-suffix):
index fe4b3d4..27a308d 100644 (file)
@@ -262,7 +262,7 @@ Add the extension of FILENAME, if existing."
     (tramp-file-name-handler 'file-attributes filename id-format))
    (t (condition-case nil
          (funcall (symbol-function 'file-attributes) filename id-format)
-       (error (file-attributes filename))))))
+       (wrong-number-of-arguments (file-attributes filename))))))
 
 ;; PRESERVE-UID-GID has been introduced with Emacs 23.  It does not
 ;; hurt to ignore it for other (X)Emacs versions.
@@ -320,13 +320,20 @@ Add the extension of FILENAME, if existing."
 ;; FORCE has been introduced with Emacs 24.1.
 (defun tramp-compat-delete-file (filename &optional force)
   "Like `delete-file' for Tramp files (compat function)."
-  (condition-case nil
-      (funcall (symbol-function 'delete-file) filename force)
-    ;; This Emacs version does not support the FORCE flag.  Setting
-    ;; `delete-by-moving-to-trash' shall give us the same effect.
-    (error
-     (let ((delete-by-moving-to-trash (null force)))
-       (delete-file filename)))))
+  (if (null force)
+      (delete-file filename)
+    (condition-case nil
+       (funcall (symbol-function 'delete-file) filename force)
+      ;; This Emacs version does not support the FORCE flag.  Setting
+      ;; `delete-by-moving-to-trash' shall give us the same effect.
+      (wrong-number-of-arguments
+       (let ((delete-by-moving-to-trash
+             (cond
+              ((null force) t)
+              ((boundp 'delete-by-moving-to-trash)
+               (symbol-value 'delete-by-moving-to-trash))
+              (t nil))))
+        (delete-file filename))))))
 
 ;; RECURSIVE has been introduced with Emacs 23.2.
 (defun tramp-compat-delete-directory (directory &optional recursive)
@@ -337,7 +344,7 @@ Add the extension of FILENAME, if existing."
        (funcall (symbol-function 'delete-directory) directory recursive)
       ;; This Emacs version does not support the RECURSIVE flag.  We
       ;; use the implementation from Emacs 23.2.
-      (error
+      (wrong-number-of-arguments
        (setq directory (directory-file-name (expand-file-name directory)))
        (if (not (file-symlink-p directory))
           (mapc (lambda (file)
index 569fca3..f045589 100644 (file)
@@ -525,7 +525,7 @@ is no information where to trace the message.")
            newname)
          ok-if-already-exists keep-date preserve-uid-gid)))
     (when preserve-selinux-context
-      (setq args (append args (list preserve-uid-gid))))
+      (setq args (append args (list preserve-selinux-context))))
     (apply 'copy-file args)))
 
 (defun tramp-gvfs-handle-delete-directory (directory &optional recursive)
@@ -629,7 +629,8 @@ is no information where to trace the message.")
 
 (defun tramp-gvfs-handle-file-selinux-context (filename)
   "Like `file-selinux-context' for Tramp files."
-  (funcall 'file-selinux-context (tramp-gvfs-fuse-file-name filename)))
+  (funcall (symbol-function 'file-selinux-context)
+          (tramp-gvfs-fuse-file-name filename)))
 
 (defun tramp-gvfs-handle-file-writable-p (filename)
   "Like `file-writable-p' for Tramp files."
index 26ef72c..7f0c2f2 100644 (file)
         ;; this would load dbus.el.
         (when (and (featurep 'dbusbind)
                    (condition-case nil
-                       (funcall 'dbus-get-unique-name :session)
+                       (funcall (symbol-function 'dbus-get-unique-name)
+                                :session)
                      (error nil))
                    (tramp-compat-process-running-p "gvfs-fuse-daemon"))
           'tramp-gvfs)
@@ -2273,7 +2274,7 @@ FILE must be a local file name on a connection identified via VEC."
      ;; introduced in Emacs 24.1.
      (when (<= ,level tramp-verbose)
        (condition-case nil
-          (setq pr (funcall 'make-progress-reporter ,message)
+          (setq pr (funcall (symbol-function 'make-progress-reporter) ,message)
                 tm (run-at-time 3 0.1 'progress-reporter-update pr))
         (error nil)))
      (unwind-protect