Bert Huijben wrote on Mon, Nov 14, 2011 at 15:25:33 +0100:
> > client: ( check-path ( 29:/trunk/service/public ( 3155 ) ) )
> > server: ( success ( ( ) 0: ) )
> > server: ( success ( none ) )
> >
> > Interestingly, if the check-path argument is changed to an existing path
> > below "/trunk/service/public" (such as "/subdir"), then it works.
> >
> > In other words: it seems that svnserve 1.7 considers the argument to
> > check-path relative to the URL that was used to connect, whereas
> > svnserve 1.6 considered it absolute to the repository.
> >
> > Can you confirm this? Is it a problem in Subversion or Svnkit?
>
> The documentation of this function says that it should be relative to the
> session, as all path arguments to ra commands.
>
> This probably worked ok, because we happened to join the path using
> svn_path_join() which ignores its first argument when the second argument
> starts with a '/'.
>
> In Subversion 1.7 we improved the checking by ensuring that the argument is
> a valid relative path (a relpath), which would remove the initial '/', so
> then the argument is mapped as a child of the session.
>
> I would call this a bug in SvnKit, as they should have passed valid relative
> paths...
+1
> But maybe somebody else thinks differently about this.
>
> Bert
>
Received on 2011-11-14 16:51:37 CET