       (setq buffer-read-only t)
       (let ((cmd `(,svn-program ,subcommand ,@args))
             proc)
-        (setq proc (apply 'start-process "svn" buf cmd))
+        (setq proc (apply svn-start-file-process "svn" buf cmd))
         (set-process-coding-system proc 'utf-8)
         (set-process-filter proc 'svn-output-filter)
         (while (eq (process-status proc) 'run)

    (with-current-buffer buf
      (erase-buffer)
      (setq default-directory dir))
    (apply 'call-process svn-program nil buf nil (symbol-name command) args)
    buf))

(defun svn-run-for-stdout (command args)

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)
