 (defun svn-commit-sentinel (proc reason)
   "Sentinel function for `svn commit'."
   (with-current-buffer (process-buffer proc)
-    (setq svn-running nil)
-    (if (/= (process-exit-status proc) 0)
-        (set-svn-process-status 'failed)
-      (set-svn-process-status 'finished)
+    (when (= (process-exit-status proc) 0)
       (while svn-commit-files
         (let* ((file (car svn-commit-files))
                (path (concat default-directory file))

  "*The svn program to run"
  :type 'string
  :group 'dsvn)  

(defun svn-call-process (program buffer &rest args)
  "Run svn and wait for it to finish.

    (if (re-search-backward "^URL: \\(.*\\)$" nil t)
        (match-string 1)
      (error "Couldn't find the current URL"))))

(defun svn-repository-root ()
  "Get the repository root."
  (with-current-buffer (svn-run-hidden 'info ())
    (if (re-search-backward "^Repository Root: \\(.*\\)$" nil t)
        (match-string 1)
      (error "Couldn't find the repository root"))))

(defun svn-run (command args &optional description)
  "Run subversion command COMMAND with ARGS.
