       (erase-buffer)
       (setq default-directory dir)
       (svn-call-process diff-buf
-                        "diff" "-r"
+                        "diff" "-x" "-p" "-r"
                         (format "%d:%d" (1- commit-id) commit-id)))))
 
 (defun svn-log-edit-files (commit-id)

  "Run `svn diff' for the current log entry."
  (interactive)
  (let ((commit-id (svn-log-current-commit)))
    (svn-run-with-output "diff" (list "-c" (number-to-string commit-id))
                         'diff-mode)))

(defun svn-log-edit ()

  :type 'boolean
  :group 'dsvn)

(defcustom svn-diff-args '("-x" "-p")
  "*Additional arguments used for all invocations of `svn diff'."
  :type '(repeat string)
  :group 'dsvn)

;; start-file-process and process-file are needed for tramp but only appeared
;; in Emacs 23 and 22 respectively.
(setq svn-start-file-process
