]> git.eshelyaron.com Git - emacs.git/commitdiff
* files.el (get-free-disk-space): Return nil for remote
authorMichael Albinus <michael.albinus@gmx.de>
Tue, 30 Jan 2007 20:23:38 +0000 (20:23 +0000)
committerMichael Albinus <michael.albinus@gmx.de>
Tue, 30 Jan 2007 20:23:38 +0000 (20:23 +0000)
directories.

* net/ange-ftp.el (ange-ftp-ls): In case of wildcards, use "ls"
instead of "dir".

lisp/ChangeLog
lisp/files.el
lisp/net/ange-ftp.el

index 103b9f5dba251b00d97389356df4ea7bf7fb9afc..8c8ca71294058892b8c145de03ff60c097d68ed1 100644 (file)
@@ -1,3 +1,11 @@
+2007-01-30  Michael Albinus  <michael.albinus@gmx.de>
+
+       * files.el (get-free-disk-space): Return nil for remote
+       directories.
+
+       * net/ange-ftp.el (ange-ftp-ls): In case of wildcards, use "ls"
+       instead of "dir".
+
 2007-01-30  Chong Yidong  <cyd@stupidchicken.com>
 
        * type-break.el (type-break-catch-up-event): New function.
index f671f1ae0c4c7450225c4cabb6908ea1efa4e28f..36f9e0353fb09071dac7c5920d0de7ce497282d0 100644 (file)
@@ -4749,36 +4749,37 @@ preference to the program given by this variable."
   "Return the amount of free space on directory DIR's file system.
 The result is a string that gives the number of free 1KB blocks,
 or nil if the system call or the program which retrieve the information
-fail.
+fail.  It returns also nil when DIR is a remote directory.
 
 This function calls `file-system-info' if it is available, or invokes the
 program specified by `directory-free-space-program' if that is non-nil."
-  ;; Try to find the number of free blocks.  Non-Posix systems don't
-  ;; always have df, but might have an equivalent system call.
-  (if (fboundp 'file-system-info)
-      (let ((fsinfo (file-system-info dir)))
-       (if fsinfo
-           (format "%.0f" (/ (nth 2 fsinfo) 1024))))
-    (save-match-data
-      (with-temp-buffer
-       (when (and directory-free-space-program
-                  (eq 0 (call-process directory-free-space-program
-                                      nil t nil
-                                      directory-free-space-args
-                                      dir)))
-         ;; Usual format is a header line followed by a line of
-         ;; numbers.
-         (goto-char (point-min))
-         (forward-line 1)
-         (if (not (eobp))
-             (progn
-               ;; Move to the end of the "available blocks" number.
-               (skip-chars-forward "^ \t")
-               (forward-word 3)
-               ;; Copy it into AVAILABLE.
-               (let ((end (point)))
-                 (forward-word -1)
-                 (buffer-substring (point) end)))))))))
+  (when (not (file-remote-p dir))
+    ;; Try to find the number of free blocks.  Non-Posix systems don't
+    ;; always have df, but might have an equivalent system call.
+    (if (fboundp 'file-system-info)
+       (let ((fsinfo (file-system-info dir)))
+         (if fsinfo
+             (format "%.0f" (/ (nth 2 fsinfo) 1024))))
+      (save-match-data
+       (with-temp-buffer
+         (when (and directory-free-space-program
+                    (eq 0 (call-process directory-free-space-program
+                                        nil t nil
+                                        directory-free-space-args
+                                        dir)))
+           ;; Usual format is a header line followed by a line of
+           ;; numbers.
+           (goto-char (point-min))
+           (forward-line 1)
+           (if (not (eobp))
+               (progn
+                 ;; Move to the end of the "available blocks" number.
+                 (skip-chars-forward "^ \t")
+                 (forward-word 3)
+                 ;; Copy it into AVAILABLE.
+                 (let ((end (point)))
+                   (forward-word -1)
+                   (buffer-substring (point) end))))))))))
 
 ;; The following expression replaces `dired-move-to-filename-regexp'.
 (defvar directory-listing-before-filename-regexp
index 19041d046db4ed72271822171340186c114ee05d..08efbb1e107f61243860393c55f7ab6f6a7d25b4 100644 (file)
@@ -2599,7 +2599,7 @@ away in the internal cache."
            (if wildcard
                (progn
                  (ange-ftp-cd host user (file-name-directory name))
-                 (setq lscmd (list 'dir file temp lsargs)))
+                 (setq lscmd (list 'ls file temp lsargs)))
              (setq lscmd (list 'dir name temp lsargs)))
            (unwind-protect
                (if (car (setq result (ange-ftp-send-cmd