Subject: bug#18605: 24.3.93; vc-svn-dir-status-files returns filenames prepended with spaces

From: Dmitry Gutov <[email-masked]>
Date: Thu, 02 Oct 2014 16:20:53 +0400

Tags: patch

Instead of

  (("foo" . ignored) ("bar" . edited))

I get

  ((" foo" . ignored) (" bar" . edited))

with

svn, version 1.8.8 (r1568071)
   compiled Aug 13 2014, 17:12:39 on x86_64-pc-linux-gnu

And I have a reason to believe that SVN on Cygwin behaves the same:
https://github.com/dgutov/diff-hl/issues/25#issuecomment-57606933

Attaching a tiny patch, although there's probably a better way to fix
that regexp.

In GNU Emacs 24.3.93.4 (x86_64-unknown-linux-gnu, GTK+ Version 3.10.8)
 of 2014-09-19 on axl
Repository revision: 117510 [email-masked]
Windowing system distributor `The X.Org Foundation', version 11.0.11501000
System Description:	Ubuntu 14.04.1 LTS

=== modified file 'lisp/vc/vc-svn.el'
--- lisp/vc/vc-svn.el	2014-01-01 07:43:34 +0000
+++ lisp/vc/vc-svn.el	2014-10-02 12:19:00 +0000
@@ -195,7 +195,7 @@
                      (?~ . edited)))
 	(re (if remote "^\\(.\\)\\(.\\).....? \\([ *]\\) +\\(?:[-0-9]+\\)?   \\(.*\\)$"
 	      ;; Subexp 3 is a dummy in this case, so the numbers match.
-	      "^\\(.\\)\\(.\\)...\\(.\\) \\(.*\\)$"))
+	      "^\\(.\\)\\(.\\)...\\(.\\) +\\(.*\\)$"))
        result)
     (goto-char (point-min))
     (while (re-search-forward re nil t)