On Tue, 2010-12-07, Daniel Shahaf wrote:
> CC += dev@
>
> Daniel Näslund wrote on Mon, Dec 06, 2010 at 21:32:39 +0100:
> > On Mon, Dec 06, 2010 at 01:44:23PM -0600, David Dyer-Bennet wrote:
> > > Subversion 1.6.12 running on Centos 5.5
> > >
> > > If the value of the environment variable VISUAL contains a space,
> > > subversion fails when attempting to invoke the editor to get the
> > > comment.
> > >
> > > sh-3.2$ export VISUAL="/home/spaces in name/bin/emacs"
> > > sh-3.2$ svn commit
> > > sh: /home/spaces: No such file or directory
> > > svn: Commit failed (details follow):
> > > svn: system('/home/spaces in name/bin/emacs svn-commit.tmp') returned 32512
> > >
> > > As you see in the error, it's constructing a command string without
> > > consideration of the possibility of spaces in various places.
> >
> > [...]
> >
> > > So, can somebody confirm this please? And, ideally, submit the bug
> > > (since I keep getting stuck trying to go through all the hoops they
> > > want you to go through to become enabled to do that)?
> >
> > Found this thread [1] that discusses spaces in the editor cmd string. Julian
> > Foad confirms that it's a bug in a follow-up and even has some
> > suggestions on how to tackle the problem if someone wants to write a
> > patch.
I confirmed that there was a bug in that report, but that was on Windows
and the evidence there was that the arguments were not being parsed
correctly even when the space was escaped with the "^" character.
That's a different problem from yours.
> Today we use system(), and thus things like EDITOR='gvim -f' and
> EDITOR='emacs -nw' work. If propedit-cmd.c just quoted all spaces in
> the editor command, it would break this use case.
>
> I suppose setting VISUAL="\"/path with spaces/to/editor/binary\"" is the
> easiest solution --- it requires no code changes so it will work with
> any svn binary out there.
Yes, I think that's the best solution.
- Julian
> > [1] http://svn.haxx.se/dev/archive-2010-02/0051.shtml
Received on 2010-12-07 11:18:42 CET