     (with-current-buffer buf
       (erase-buffer)
       (setq default-directory dir))
-    (apply 'call-process svn-program nil buf nil (symbol-name command) args)
+    (apply svn-process-file svn-program nil buf nil (symbol-name command) args)
     buf))
 
 (defun svn-run-for-stdout (command args)

  :type 'boolean
  :group 'dsvn)

(defun svn-call-process (program buffer &rest args)
  "Run svn and wait for it to finish.
Argument PROGRAM is the svn binary to run.
Argument BUFFER is the buffer in which to insert output.
Optional argument ARGS are the arguments to svn."
  (let ((proc (apply 'start-process "svn" buffer program args)))
    (set-process-coding-system proc 'utf-8)
    (set-process-filter proc 'svn-output-filter)
    (while (eq (process-status proc) 'run)

Argument COMMAND is the svn subcommand to run.
Optional argument ARGS is a list of arguments."
  (let ((output-buffer (generate-new-buffer "*svn-stdout*")))
    (apply svn-process-file svn-program nil (list output-buffer nil) nil
	   (symbol-name command) args)
    (let ((stdout (with-current-buffer output-buffer (buffer-string))))
      (kill-buffer output-buffer)
