diff options
| author | Eli Zaretskii | 2000-12-07 14:52:50 +0000 |
|---|---|---|
| committer | Eli Zaretskii | 2000-12-07 14:52:50 +0000 |
| commit | fc3e23a4b48c917d37d6d3f7a72b297bf56bd23a (patch) | |
| tree | b310d37c8558afe80b7bc43036ea7d1fd287e993 | |
| parent | 0f5f7c3eb668e701d00f77d92441dd4ea91422ec (diff) | |
| download | emacs-fc3e23a4b48c917d37d6d3f7a72b297bf56bd23a.tar.gz emacs-fc3e23a4b48c917d37d6d3f7a72b297bf56bd23a.zip | |
(dired-insert-directory): If file-system-info is
fboundp, call it instead of invoking dired-free-space-program.
| -rw-r--r-- | lisp/ChangeLog | 5 | ||||
| -rw-r--r-- | lisp/dired.el | 42 |
2 files changed, 29 insertions, 18 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 536f5eee03e..d1c3072201e 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2000-12-07 Eli Zaretskii <eliz@is.elta.co.il> | ||
| 2 | |||
| 3 | * dired.el (dired-insert-directory): If file-system-info is | ||
| 4 | fboundp, call it instead of invoking dired-free-space-program. | ||
| 5 | |||
| 1 | 2000-12-07 Gerd Moellmann <gerd@gnu.org> | 6 | 2000-12-07 Gerd Moellmann <gerd@gnu.org> |
| 2 | 7 | ||
| 3 | * server.el (server-visit-files): Push files on file-name-history. | 8 | * server.el (server-visit-files): Push files on file-name-history. |
diff --git a/lisp/dired.el b/lisp/dired.el index 306ecb2c56c..6be3bff0984 100644 --- a/lisp/dired.el +++ b/lisp/dired.el | |||
| @@ -686,24 +686,30 @@ If DIRNAME is already in a dired buffer, that buffer is used without refresh." | |||
| 686 | (goto-char (point-min)) | 686 | (goto-char (point-min)) |
| 687 | (when (re-search-forward "total [0-9]+$" nil t) | 687 | (when (re-search-forward "total [0-9]+$" nil t) |
| 688 | (insert " free ") | 688 | (insert " free ") |
| 689 | (let ((beg (point))) | 689 | ;; Non-Posix systems don't always have dired-free-space-program, |
| 690 | (condition-case nil | 690 | ;; but might have an equivalent system call. |
| 691 | (if (zerop (call-process dired-free-space-program nil t nil | 691 | (if (fboundp 'file-system-info) |
| 692 | dired-free-space-args | 692 | (insert |
| 693 | (expand-file-name dir-or-list))) | 693 | (format "%.0f" |
| 694 | (progn | 694 | (/ (nth 2 (file-system-info dir-or-list)) 1024))) |
| 695 | (goto-char beg) | 695 | (let ((beg (point))) |
| 696 | (forward-line 1) | 696 | (condition-case nil |
| 697 | (skip-chars-forward "^ \t") | 697 | (if (zerop (call-process dired-free-space-program nil t nil |
| 698 | (forward-word 2) | 698 | dired-free-space-args |
| 699 | (skip-chars-forward " \t") | 699 | (expand-file-name dir-or-list))) |
| 700 | (delete-region beg (point)) | 700 | (progn |
| 701 | (forward-word 1) | 701 | (goto-char beg) |
| 702 | (delete-region (point) | 702 | (forward-line 1) |
| 703 | (progn (forward-line 1) (point)))) | 703 | (skip-chars-forward "^ \t") |
| 704 | ;; The dired-free-space-program failed; delete its output | 704 | (forward-word 2) |
| 705 | (delete-region (- beg 7) (point))) | 705 | (skip-chars-forward " \t") |
| 706 | (error (delete-region (- beg 7) (point))))))))) | 706 | (delete-region beg (point)) |
| 707 | (forward-word 1) | ||
| 708 | (delete-region (point) | ||
| 709 | (progn (forward-line 1) (point)))) | ||
| 710 | ;; The dired-free-space-program failed; delete its output | ||
| 711 | (delete-region (- beg 7) (point))) | ||
| 712 | (error (delete-region (- beg 7) (point)))))))))) | ||
| 707 | ;; Quote certain characters, unless ls quoted them for us. | 713 | ;; Quote certain characters, unless ls quoted them for us. |
| 708 | (if (not (string-match "b" dired-actual-switches)) | 714 | (if (not (string-match "b" dired-actual-switches)) |
| 709 | (save-excursion | 715 | (save-excursion |