diff options
| -rw-r--r-- | lisp/dired-aux.el | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/lisp/dired-aux.el b/lisp/dired-aux.el index 5f6fdc542d2..0e3b0f26f12 100644 --- a/lisp/dired-aux.el +++ b/lisp/dired-aux.el | |||
| @@ -400,7 +400,13 @@ output files usually are created there instead of in a subdir." | |||
| 400 | (defun dired-call-process (program discard &rest arguments) | 400 | (defun dired-call-process (program discard &rest arguments) |
| 401 | ; "Run PROGRAM with output to current buffer unless DISCARD is t. | 401 | ; "Run PROGRAM with output to current buffer unless DISCARD is t. |
| 402 | ;Remaining arguments are strings passed as command arguments to PROGRAM." | 402 | ;Remaining arguments are strings passed as command arguments to PROGRAM." |
| 403 | (apply 'call-process program nil (not discard) nil arguments)) | 403 | ;; Look for a handler for default-directory in case it is a remote file name. |
| 404 | (let ((handler | ||
| 405 | (find-file-name-handler (directory-file-name default-directory) | ||
| 406 | 'dired-call-process))) | ||
| 407 | (if handler (apply handler 'dired-call-process | ||
| 408 | program discard arguments) | ||
| 409 | (apply 'call-process program nil (not discard) nil arguments)))) | ||
| 404 | 410 | ||
| 405 | (defun dired-check-process (msg program &rest arguments) | 411 | (defun dired-check-process (msg program &rest arguments) |
| 406 | ; "Display MSG while running PROGRAM, and check for output. | 412 | ; "Display MSG while running PROGRAM, and check for output. |